Linux抓包

tcpdump -i eth1 -nn 'dst host 172.31.0.42' -w /tmp/temp.cap

监听指定的主机
$ tcpdump -i eth0 -nn 'host 192.168.1.231'
这样的话,192.168.1.231这台主机接收到的包和发送的包都会被抓取。
$ tcpdump -i eth0 -nn 'src host 192.168.1.231'
这样只有192.168.1.231这台主机发送的包才会被抓取。
$ tcpdump -i eth0 -nn 'dst host 192.168.1.231'
这样只有192.168.1.231这台主机接收到的包才会被抓取。

1、如果要抓eth0的包,命令格式如下:

tcpdump -i eth0 -w /tmp/eth0.cap

2、如果要抓192.168.1.20的包,命令格式如下:

tcpdump -i etho host 192.168.1.20 -w /tmp/temp.cap

3、如果要抓192.168.1.20的ICMP包,命令格式如下:

tcpdump -i etho host 192.168.1.20 and icmp -w /tmp/icmp.cap

4、如果要抓192.168.1.20的除端口10000,10001,10002以外的其它包,命令格式如下:

tcpdump -i etho host 192.168.1.20 and ! port 10000 and ! port 10001 and ! port 10002 -w /tmp/port.cap

5、假如要抓vlan 1的包,命令格式如下:

tcpdump -i eth0 port 80 and vlan 1 -w /tmp/vlan.cap

6、假如要抓pppoe的密码,命令格式如下:

tcpdump -i eht0 pppoes -w /tmp/pppoe.cap

7、假如要抓eth0的包,抓到10000个包后退出,命令格式如下:

tcpdump -i eth0 -c 10000 -w /tmp/temp.cap

8、在后台抓eth0在80端口的包,命令格式如下:

nohup tcpdump -i eth0 port 80 -w /tmp/temp.cap &

原文地址:https://www.cnblogs.com/lubing666666/p/4468809.html