【linux】tcpdump 使用

news2024/11/16 21:32:26

tcpdump 是一个强大的网络分析工具,可以在 UNIX 和类 UNIX 系统上使用,用于捕获和分析网络流量。它允许用户截取和显示发送或接收过网络的 TCP/IP 和其他数据包。

一、安装

tcpdump 通常是默认安装在大多数 Linux 发行版中的。如果未安装,可以使用系统的包管理器来安装它。

二、基本语法

tcpdump 的基本命令行语法如下:

tcpdump [options] [filter-expression]

options:用于修改 tcpdump 的行为。
filter-expression:用于指定一个过滤表达式,来捕获符合特定条件的数据包。

三、常用选项

以下是一些常用的 tcpdump 选项:
-i:指定要监听的网络接口。
-v, -vv, -vvv:提供更详细的输出。
-c:指定要捕获的数据包的数量。
-w:指定一个文件来写入捕获的数据。
-r:从文件中读取捕获的数据,而不是从网络接口。
-s:设置每个数据包捕获的大小(字节)。

四、过滤表达式

过滤表达式允许用户定义要捕获的数据包的类型。一些常用的过滤规则:
host:过滤与指定主机通信的数据包。
net:过滤属于特定网络的数据包。
port:过滤特定端口的数据包。
src 和 dst:分别用于仅匹配源或目标地址或端口。
tcp, udp, icmp:分别只捕获 TCP、UDP 或 ICMP 数据包。

五、实例

1. 捕获所有经过 eth0 网络接口的数据包:

tcpdump -i eth0

2. 捕获特定主机的数据包:

tcpdump host 192.168.1.1

3. 捕获从一个特定源到一个特定目标的 TCP 数据包:

tcpdump tcp src 192.168.1.1 and dst 10.0.0.2

4. 只捕获经过端口 22 (SSH) 的数据包:

tcpdump port 22

5. 将捕获的数据写入文件:

tcpdump -w capture_file.pcap

6. 从文件中读取捕获的数据:

tcpdump -r capture_file.pcap

六、调试和问题诊断

tcpdump 是网络故障排除和安全分析的重要工具。使用它可以帮助识别网络问题的来源,监控可疑活动,以及进行协议分析和学习。

七、注意事项

运行 tcpdump 需要相应的权限(通常需要 root 用户权限)。
数据包捕获可能会产生大量的输出。使用过滤器能够更有效地分析感兴趣的流量。
注意隐私和法律问题:捕获网络流量可能涉及敏感数据,并受到法律规定。

tcpdump还可以与Wireshark等工具结合使用,后者是一个开源的网络协议分析器,可以查看tcpdump抓取的数据包的内容。


tcpdump 的功能远远不止以上介绍的这些,这些是它最基本和最常用的功能。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1377622.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【MATLAB源码-第108期】基于matlab的OFDM-OQAM系统仿真,包含PHYDYAS滤波器模块和PNN结构,输出误码率曲线。

操作环境: MATLAB 2022a 1、算法描述 OFDM/OQAM(正交频分复用/正交四分之一幅度调制)是一种高效的无线通信系统,采用PHYDYAS(物理层动态接入)滤波器来优化性能。这种系统的设计主要目的是提高频谱效率、…

【工具栏】Rainbow Brackets(彩虹括号) 插件的安装和使用

使用前 这一段代码里有这么多括号,找到相匹配的括号需要花点时间 ,但是安装Rainbow Brackets插件后,代码在括号方面多一份美观 安装 效果如下:

Cmake 中的list介绍

这个链接非常好,都有例子。 https://www.jianshu.com/p/89fb01752d6f

考研英语高频打卡

高频词汇13——15抽背答案 1、colleague /ˈkɒliːɡ/ 考频20(英一12 次,英二8 次) n. 同事,同僚 2、despite /dɪˈspaɪt/ 考频19(英一12 次,英二7 次) prep. 不管,不顾 3、overa…

数字化新时代,智慧社区再升级:低代码平台助您轻松打造

随着科技的飞速发展,社区的数字化转型已成为大势所趋。党的二十大报告提出,要“完善网格化管理、精细化服务、信息化支撑的基层治理平台,健全城乡社区治理体系”,更是为社区数字化建设,打造智慧社区指明了方向和路径。…

软件测试|如何使用pycharm实现批量替换

简介 PyCharm是一款功能强大的Python集成开发环境(IDE),提供了许多实用的功能来提高开发效率。其中,替换功能是一个非常有用的工具,它可以帮助开发者快速地在代码中查找并替换特定的文本。本文将详细介绍PyCharm的替换…

腾讯NUS推出下一代多模态智能,支持2/3D视觉、听觉、触觉、脑电

多模态感知一直是通用人工智能发展的关键领域。理想中的智能体能像人类一样感知多种模态信息,如视觉、听觉、嗅觉、触觉等,并与用户进行自然交互。然而,现有的大型模型虽然在图像和文字上表现出色,但对其他模态(如3D点…

韩国LG集团在 CES2024 消费电子展上发布的的无线透明OLED屏幕

国际消费类电子产品展览会(International Consumer Electronics Show,简称CES),由美国电子消费品制造商协会(简称CTA)主办,旨在促进尖端电子技术和现代生活的紧密结合。该展始于1967年&#xff…

超维空间M1无人机使用说明书——61、ROS无人机物体识别与精准投放

引言:基于空中物流的项目背景。我们提供了使用基于诗句的物体识别和精准投放、降落。实现原理如下: 1、在ROS下使用机载电脑实现物体识别 2、记载电脑根据反馈的位置发布运动控制指令 3、PX4解析机载电脑发布的命令,作出运动控制 4、设置…

PHP在线考试平台管理系统源码带文字搭建教程和操作手册

PHP在线考试平台管理系统源码带文字搭建教程和操作手册 技术架构 PHP7.2 Thinkphp6 React UmiJs nginx mysql5.7 cnetos7以上 宝塔面板 系统功能特性与介绍 采用PHP7强类型(严格模式)。 题库管理 支持多种试题类型和录题方式。 考生管理 快速导入考…

Maven的pom文件引用以及下载失败

背景&#xff1a;项目中使用到新版本的aspose-words组件&#xff0c;但是引用失败&#xff1b; pom.xml中引用,但是maven 仓库没有aspose-words 后续版本&#xff0c;所以需要在pom中配置 aspose-words的官网。 <dependencies><dependency><groupId>com.as…

x-cmd pkg | czg - git commit 智能生成工具

目录 简介首次用户功能特点竞品和相关作品进一步探索 简介 czg 源于 commitizen/cz-cli 交互插件中 cz-git 的延伸项目&#xff0c;重新使用 TypeScript 编写的零依赖独立的 Node.js 命令行工具。旨在使用交互友好的方式&#xff0c;辅助用户生成规范的 git commit message 约…

性能监控软件选择攻略

随着企业对应用程序性能的关注度不断增加&#xff0c;选择适当的性能监控软件变得至关重要。性能监控软件能够帮助企业实时追踪应用程序的性能指标&#xff0c;识别潜在问题并提高系统的稳定性。在选择性能监控软件时&#xff0c;以下攻略将有助于确保您的选择符合业务需求并能…

C#超市管理系统源码

C#超市管理系统源码 功能齐全的超市管理系统&#xff0c;专门美化过UI 请先附加数据库&#xff0c;否则无法进入系统 默认拥有最高权限账户为经理&#xff0c;密码为admin 压缩包内有使用说明

【c++】入门4

内联函数声明和定义不能分开 inline不建议声明和定义分离&#xff0c;分离会导致链接错误。因为inline被展开&#xff0c;就没有函数地址 了&#xff0c;链接就会找不到。 auto关键字 随着程序越来越复杂&#xff0c;程序中用到的类型也越来越复杂&#xff0c;经常体现在&…

依赖注入的优缺点与最佳实践

1 什么是依赖注入 依赖注入&#xff0c;全称Dependency Injection&#xff0c;简称DI。 在我们深入探讨之前&#xff0c;先来聊聊“依赖”和“注入”这两个比较术语的词。打个比方&#xff0c;你可以把“依赖”想象成电器设备的外接电线&#xff0c;而“注入”就像是把这根电…

热过载继电器 WJJL1-05/2X AC220V 0.5A-5A 导轨安装 JOSEF约瑟

系列型号 WJJL1-10D/1过载保护器&#xff1b;WJJL1-50D/1过载保护器&#xff1b; WJJL1-100D/1过载保护器&#xff1b;WJJL1-300D/1过载保护器&#xff1b; WJJL1-600D/1过载保护器&#xff1b;WJJL1-1000D/1过载保护器&#xff1b; WJJL1-2000D/1过载保护器&#xff1b;WJ…

React Native 桥接组件封装原生组件属性

自定义属性可以让组件具备更多的灵活性&#xff0c;所以有必要在JS 层通过自定义属性动态传值。 一、添加原生组件属性 因为 ViewManager 管理了整个组件的行为&#xff0c;所以要新增组件属性也需要在这里面&#xff08;如 InfoViewManager&#xff09;进行定义。 1、在Inf…

使用Web自动化测试工具显著好处

随着互联网技术的飞速发展&#xff0c;Web应用程序在企业中的重要性不断上升。为了确保Web应用程序的质量和稳定性&#xff0c;许多企业转向了Web自动化测试工具。下面是使用Web自动化测试工具的一些显著好处&#xff1a; 1. 提高测试覆盖率 Web自动化测试工具可以模拟用户与We…

软件测试|解读Python的requirements.txt文件:管理项目依赖的完整指南

简介 在Python项目中&#xff0c;管理依赖库是必不可少的。requirements.txt文件是一种常用的方式&#xff0c;用于列出项目所需的所有依赖库及其版本。本文将详细介绍requirements.txt的用法&#xff0c;帮助你更好地管理项目的依赖。 使用步骤 创建requirements.txt文件&am…