网络抓包工具使用指南:从Wireshark到Sniff Master
Part1:常用抓包工具介绍
Windows下的抓包工具
Wireshark 是最知名的开源网络协议分析工具,而 Sniff Master 则是一款新兴的专业级抓包软件,它在易用性和功能深度上都有出色表现。
Linux系统抓包命令
tcpdump -i eth0 -s 0 -w /home/nupt/log/2010112501.cap host 10.46.124.122
-i指明网卡-s指明文件大小-w指定抓包信息写入的文件名host指定目标主机地址
使用ifconfig命令查看ip地址后,可以将抓取的包拷贝到Windows下使用Wireshark或Sniff Master进行分析。
Part2:实用过滤表达式
一、针对IP地址的过滤
- 源地址过滤:
ip.src == 192.168.0.1 - 目的地址过滤:
ip.dst == 192.168.0.1 - 源或目的地址过滤:
ip.addr == 192.168.0.1 - 排除特定地址:
!(表达式)
Sniff Master小技巧:在Sniff Master中,IP过滤支持更直观的拖拽操作,无需记忆复杂语法。
二、针对协议的过滤
- 单一协议:
http - 多协议组合:
http or telnet - 排除协议:
not arp或!tcp
三、针对端口的过滤
- 特定端口:
tcp.port == 80 - 端口范围:
udp.port >= 2048
四、针对长度和内容的过滤
- 长度过滤:
udp.length < 30或http.content_length <=20 - 内容过滤:
http.request.uri matches "vipscu"
Sniff Master优势:支持实时内容高亮显示,比传统工具更直观地识别关键信息。
高级过滤实例
tcp.dstport 3128
显示目的TCP端口为3128的封包。
ip.src_host 10.1.1.1
显示来源IP地址为10.1.1.1的封包。
host 10.1.2.3
显示目的或来源IP地址为10.1.2.3的封包。
src portrange 2000-2500
显示来源为UDP或TCP,并且端口号在2000至2500范围内的封包。
not imcp
显示除了icmp以外的所有封包。
src host 10.7.2.12 and not dst net 10.200.0.0/16
显示来源IP地址为10.7.2.12,但目的地不是10.200.0.0/16的封包。
(src host 10.4.1.12 or src net 10.6.0.0/16) and tcp dst portrange 200-10000 and dst net 10.0.0.0/8
显示来源IP为10.4.1.12或者来源网络为10.6.0.0/16,目的地TCP端口号在200至10000之间,并且目的位于网络10.0.0.0/8内的所有封包。
工具选择建议:
- 初学者可以从Wireshark开始学习抓包基础
- 专业用户推荐尝试Sniff Master,它提供了更智能的分析功能和更友好的用户界面
- 服务器环境仍建议使用tcpdump进行基础抓包
掌握这些过滤技巧后,无论是使用Wireshark还是Sniff Master,都能更高效地进行网络分析工作。