Linux 使用tcpdump指令抓包(tcp/udp)

Linux使用tcpdump进行抓包,这个命令可以抓取流动在网卡上的数据包。

1 tcpdump常用参数说明

  • -c : 抓包次数,打到指定次数后停止抓包
  • -C : 文件大小,写入文件钱判断文件是否超过了设置的大小,超过了则关闭当前文件,开启新文件
  • -i : 指定监听的网络接口
  • -nn : 不进行端口名称的转换
  • -r : 从指定文件中读取包
  • -s : 设置每个数据包的大小
  • -t : 在输出的每一行不打印时间戳
  • vv : 输出详细的报文信息
  • -w : 保存到指定文件中而不是打印出来,如tcpdump -w /home/test.pcap

2 tcpdump支持的过滤方式

过滤项 过滤项说明 示例
host、src host、dst host 过滤主机 tcpdump host 192.168.11.11
port,src port,dst port 过滤端口 tcpdump port 19999
ip,ip6,arp,tcp,udp,icmp 过滤协议 tcpdump udp 192.168.11.11
and,or,not 逻辑表达式 tcpdump host 192.168.11.11 and port 19999

3 示例

1、从所有网卡获取数据包
tcpdump -i any

2、获取指定网卡的数据包
tcpdump -i eth0

3、抓取包含指定ip的数据包
tcpdump host 192.168.11.11

4、获取指定网卡和地址的数据包,并写入文件
tcpdump -i eth0 host 192.168.11.11 -w testfile.cap

5、指定:网卡、源IP、目的IP,并写入文件
tcpdump -i eth0 src host 192.168.11.21 and dst host 192.168.11.11 -w testfile.cap

6、指定:网卡、源IP或目的IP、写入文件
tcpdump -i eth0 src host 192.168.11.21 0r dst host 192.168.11.11 -w testfile.cap

7、指定:网卡、tcp端口、源IP、目的IP
tcpdump -i eth0 port 19999 and src host 192.168.11.21 and dst host 192.168.11.11

8、抓包显示详细信息
tcpdump -vv

9、抓取udp包
tcpdump -i eth0 udp port 19999

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容