tcpdump实例介绍

常用tcpdump案例

  • 指定接口抓包 -i

tcpdump -i eth1
  • 只抓取N个数量包 -c

tcpdump -c 2 -i eth0
  • 显示捕捉的数据包ASCII码 -A

tcpdump -A -i eth0
  • 显示捕捉的数据包HEX和ASCII码 -XX

tcpdump -XX -i eth0
  • 将捕捉到的数据包写入文件 -w

tcpdump -w 0823010.pcap -i eth0
  • 从已经保存的文件中读取数据包 -r

tcpdump -tttt -r data.pcap
  • 捕捉数据包显示IP地址 -n

tcpdump -n -i eth0

默认捕捉数据包时候显示DNS地址,如果要显示IP则使用-n参数

建议使用-n参数,因为默认捕捉数据包时候使用DNS解析会导致捕捉数据包效率降低,并导致drop数据包。

  • 捕捉数据包时显示可阅读的时间戳 -tttt

tcpdump -n -tttt -i eth0

-tttt 似乎只是添加了日期时间,作用不大

  • 只捕捉大于N字节的数据包 greater N

tcpdump -w g_1024.pcap greater 1024
  • 只捕捉特定协议的数据包 协议

tcpdump -i eth0 arp
  • 读取小于N字节的数据包 less N

tcpdump -w l_1024.pcap less 1024
  • 使用特定端口捕捉数据包 port N

tcpdump -i eth0 port 22
  • 结合IP地址和端口捕捉数据包

tcpdump -w xpackets.pcap -i eth0 dst 10.181.140.216 and port 22
  • 捕捉两个主机间数据包

tcpdump -w comm.pcap -i eth0 host 10.181.140.216 and port 22
  • 捕捉过滤特定协议 - 例如,捕捉arprarp协议数据包

tcpdump -i eth0 not arp and not rarp

参考

Last updated