一、含义
用简单的话来定义tcpdump,就是:dump the traffic on a network,根据使用者的定义对网络上的数据包进行截获的包分析工具。 tcpdump可以将网络中传送的数据包的“头”完全截获下来提供分析。它支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮助你去掉无用的信息。
二、命令详解
想要截获所有192.168.100.100的主机收到的和发出的所有的数据包
命令:tcpdump host 192.168.100.100
想要截获主机192.168.100.100和主机192.168.100.200或192.168.100.210的通信,使用命令:(在命令行中使用 括号时,一定要转义)
命令:tcpdump host 192.168.100.100 and \( 192.168.100.200 or 192.168.200.210 \)
想要获取主机192.168.100.100除了和主机192.168.100.200之外所有主机通信的ip包
命令:tcpdump ip host 192.168.100.100 and ! 192.168.100.200
想要获取主机192.168.100.100接收或发出的telnet包
命令:tcpdump tcp port 23 and host 192.168.100.100
监视指定网络接口的数据包
命令:tcpdump -i eth1
截获主机192.168.100.100发送的所有数据
命令:tcpdump -i eth0 src host 192.168.100.100
监视所有送到主机192.168.100.100的数据包
命令:tcpdump -i eth0 dst host 192.168.100.100
对本机的udp 123端口进行监视(123为ntp的服务端口)
命令:tcpdump udp port 123