tcpdump 抓包工具
tcpdump -i eth0 -nn icmp 抓包eth0控制报文
#监听特定网卡
Tcpdump -i en0
#监听特定主机,监听主机10.0.0.100的通信包(出、入包)
tcpdump host 10.0.0.100
#特定来源
tcpdump src host hostname
#特定目标地址
tcpdump dst host hostname
#如果不能指定src跟dst,那么来源或目标是hostname的通信都会被监听
tcpdump host hostname
#特定端口
tcpdump port 3000
#监听TCP/UDP,服务器上不同服务分别用tcp、udp作为传输层,只想监听TCP数据包
tcpdump tcp
#来源主机+端口+TCP,监听来自主机10.0.0.100在端口22上的TCP数据包
tcpdump tcp port 22 and src host 10.0.0.100
#监听特定主机之间的通信
tcpdump ip host 10.0.0.101 and 10.0.0.102
#监听10.0.0.101和除了10.0.0.1之外的主机之间的通信
tcpdump ip host 10.0.0.101 and ! 10.0.0.1
#详细示例
tcpdump tcp –i eth1 -t –s 0 –c 100 and dst port ! 22 and src net 192.168.1.0/24 -w ./target.cap
#限制抓包数量,如:抓到1000个包后自动退出
tcpdump -c 1000
#保存到本地,tcpdump默认会将输出写到缓冲区,只有缓冲区内容达到一定大小,或tcpdump退出时,才会输出写到本地磁盘,可以加上-U强制立即写到本地磁盘(不建议,性能差)
tcpdump -n -vvv -c 1000 -w /tmp/tcpdump_save.cap
#指定端口号抓包,并显示报文内容
tcpdump port 8091 -i eth0 -nn -X -s0