在Linux中,tcpdump
命令用于捕获网络数据包。以下是tcpdump
命令的基本用法:
sudo tcpdump [选项]
以下是一些常用的选项:
-i <接口>
:指定要捕获的网络接口。例如,-i eth0
表示捕获eth0接口的数据包。-n
:以IP地址而不是主机名显示网络地址。-c <数目>
:仅捕获指定数目的数据包。-s <大小>
:设置要捕获的数据包的最大大小。-w <文件>
:将捕获的数据包写入指定的文件中,而不是在终端显示。<过滤条件>
:指定要应用的过滤条件,例如IP地址、端口号等。使用tcpdump -i eth0 port 80
命令来捕获eth0接口上的80端口的数据包。以下是一些示例:
sudo tcpdump -i eth0
:捕获eth0接口上的所有数据包。sudo tcpdump -i eth0 -n
:以IP地址显示eth0接口上的所有数据包。sudo tcpdump -i eth0 port 22
:捕获eth0接口上的SSH(端口22)数据包。sudo tcpdump -i eth0 host 192.168.0.1
:捕获eth0接口上与IP地址为192.168.0.1的主机之间的数据包。请注意,由于tcpdump
命令需要超级用户权限才能访问网络接口,因此使用sudo
来运行此命令。