利用 tcpdump
抓包,利用 tcpdump/wireshark
来分析网络数据。
tcpdump 抓包
1 | tcpdump host example.com -w example.pcap |
- dst host
- src
- tcp、udp
- -i eth0
1 | tcpdump -n -i eth0 src host example.com and dst udp port 53 |
分析网络数据
tcpdump
可以通过 tcpdump -n -r ~/example.pcap
命令从文件读取数据来分析,显示的数据与 tcpdump
监听时数据展示一样。
显然通过命令行来分析数据不如桌面应用程序分析来的更直观、简便。
wireshark
软件可通过 官网地址 下载,支持 windows、mac 版本。
可通过 File
-> Open
-> 选择 tcpdump
抓包 example.pcap
文件进行网络数据分析。
过滤规则
提示: 在Filter编辑框中,收入过虑规则时,如果语法有误,框会显红色,如正确,会是绿色。
过滤IP
- 显示来源ip或目标ip:
ip.addr eq 172.16.96.4
- 显示来源ip:
ip.src eq 172.16.96.4
- 显示目标ip:
ip.dst eq 172.16.96.4
- 显示来源ip或目标ip:
过滤端口
- 显示来源端口或目标端口:
tcp.port eq 80
等同于tcp.port == 80
- 显示tcp协议目标端口:
tcp.dstport eq 80
- 显示udp协议源端口:
udp.srcport eq 80
- 过滤端口范围:
tcp.port >= 80 and tcp.port <= 443
- 显示来源端口或目标端口:
过滤协议
- tcp
- udp
- arp
- icmp
- http
- smtp
- ftp
- dns
- msnms
- ip
- ssl
- oicq
- bootp
示例:排除 icmp 包,!icmp 或者 not icmp
导出符合条件的包
tcpdump
抓取的数据量非常大时,在通过 filter
过滤后,可以通过 File -> Export Specified Packets
菜单,导出显示中的 Displayed
网络数据包到指定文件中。