📜  Linux 中的 tcpdump 命令示例(1)

📅  最后修改于: 2023-12-03 15:17:22.225000             🧑  作者: Mango

Linux 中的 tcpdump 命令

简介

tcpdump 是一个基于命令行的网络抓包工具,用于分析和捕获网络流量数据。它可以捕获发送和接收的数据包,并提供很多选项和过滤器以帮助分析和调试网络问题。tcpdump 命令在 Linux 和其他类 Unix 操作系统中可用。

安装

tcpdump 可以通过包管理器来安装,例如在 Ubuntu 和 Debian 中,可以使用以下命令进行安装:

sudo apt-get install tcpdump

对于其他操作系统或发行版,请按照其相应的安装指南进行安装。

使用

以下是 tcpdump 命令的用法示例:

1. 直接抓取所有数据包

以下命令将捕获系统上所有的数据包:

sudo tcpdump
2. 指定网络接口

如果系统上有多个网络接口,可以使用以下命令指定特定的网络接口进行抓包:

sudo tcpdump -i eth0
3. 指定协议

以下命令将仅捕获 ICMP 协议的数据包:

sudo tcpdump -i eth0 icmp
4. 指定端口

以下命令将仅捕获目标端口为 80 的数据包:

sudo tcpdump -i eth0 port 80
5. 捕获指定 IP 地址的数据包

以下命令将仅捕获源 IP 地址为 192.168.0.1 的数据包:

sudo tcpdump -i eth0 src 192.168.0.1
6. 使用 Wireshark 打开捕获的数据包文件

以下命令把数据包保存到文件中,并使用 Wireshark 打开该文件:

sudo tcpdump -i eth0 -w myfile.pcap
wireshark myfile.pcap
7. 显示通讯流量的内容

以下命令将捕获目标为 192.168.0.1 和 192.168.0.2 之间的所有通讯流量,并将其转储到文件中:

sudo tcpdump -i eth0 '((src 192.168.0.1 and dst 192.168.0.2) or (src 192.168.0.2 and dst 192.168.0.1))' -w myfile.pcap
8. 显示具体的数据包信息

以下命令将捕获目标为 192.168.0.1 并且源端口为 80 的数据包,并使用 ASCII 格式输出其数据包内容:

sudo tcpdump -i eth0 'dst 192.168.0.1 and src port 80' -A
结束

这就是 tcpdump 命令的介绍。它是一个强大的工具,可以帮助我们分析和调试各种网络问题。它具有非常广泛的选项和过滤器,可以满足各种需求。如果您想了解更多,请查看其官方文档。