Wireshark 是非常流行的网络封包分析软件,可以截取各种网络数据包,并显示数据包详细信息。常用于开发测试过程中各种问题定位。本文主要内容包括:
1. Wireshark软件下载和安装以及Wireshark主界面介绍
软件下载路径
- 按照系统版本选择下载,下载完成后,按照软件提示一路Next安装。
Win10系统兼容性安装包
如果你是Win10系统,安装完成后,选择抓包但不显示网卡,下载win10pcap兼容性安装包。
2. Wireshark简单抓包示例
示例步骤
打开Wireshark:
- 主界面如下:
- 主界面如下:
选择网卡并开始抓包:
- 选择菜单栏上Capture -> Option,勾选WLAN网卡(根据各自电脑网卡使用情况选择),点击Start启动抓包。
- 选择菜单栏上Capture -> Option,勾选WLAN网卡(根据各自电脑网卡使用情况选择),点击Start启动抓包。
执行需要抓包的操作:
- 如ping www.baidu.com。
过滤数据包:
- 为避免其他无用的数据包影响分析,可以在过滤栏设置过滤条件进行数据包列表过滤。例如:
ip.addr == 119.75.217.26 and icmp
表示只显示ICMP协议且源主机IP或者目的主机IP为119.75.217.26的数据包。
- 为避免其他无用的数据包影响分析,可以在过滤栏设置过滤条件进行数据包列表过滤。例如:
3. Wireshark过滤器使用
过滤器类型
抓包过滤器:在抓取数据包前设置,路径为Capture -> Capture Filters。
- 例如:
ip host 60.207.246.216 and icmp
表示只捕获主机IP为60.207.246.216的ICMP数据包。
- 例如:
显示过滤器:在抓取数据包后设置过滤条件进行过滤数据包。
- 例如:
ip.addr == 211.162.2.183 and icmp
。
- 例如:
过滤器表达式规则
抓包过滤器语法和实例
- 协议过滤:直接输入协议名,如TCP、HTTP、ICMP。
- IP过滤:
host 192.168.1.104
。 - 端口过滤:
port 80
。 - 逻辑运算符:
&&
与、||
或、!
非。
显示过滤器语法和实例
- 比较操作符:
==
等于、!=
不等于、>
大于、<
小于、>=
大于等于、<=
小于等于。 - 协议过滤:
tcp
、http
、icmp
。 - IP过滤:
ip.src == 192.168.1.104
。 - 端口过滤:
tcp.port == 80
。 - Http模式过滤:
http.request.method == "GET"
。 - 逻辑运算符:
and
、or
、not
。 - 数据包内容过滤:
data contains "abcd"
。
- 比较操作符:
Wireshark抓包分析TCP三次握手
TCP三次握手过程
第一次握手:
- 客户端发送一个SYN=1,ACK=0标志的数据包给服务端,请求进行连接。
- 客户端发送一个SYN=1,ACK=0标志的数据包给服务端,请求进行连接。
第二次握手:
- 服务端收到请求并且允许连接,发送一个SYN=1,ACK=1标志的数据包给客户端,告诉它,可以通讯了,并且让客户端发送一个确认数据包。
- 服务端收到请求并且允许连接,发送一个SYN=1,ACK=1标志的数据包给客户端,告诉它,可以通讯了,并且让客户端发送一个确认数据包。
第三次握手:
- 客户端发送一个SYN=0,ACK=1的数据包给服务端,告诉它连接已被确认,TCP连接建立,开始通讯。
- 客户端发送一个SYN=0,ACK=1的数据包给服务端,告诉它连接已被确认,TCP连接建立,开始通讯。
数据包关键属性说明
- SYN:标志位,表示请求建立连接。
- Seq:序列号,表示当前已经发送的数据量。
- Ack:确认号,表示当前端成功接收的数据位数。
通过以上步骤和分析,可以更好地理解和使用Wireshark进行网络抓包和分析。
[...]网络抓包工具 Wireshark v4.4.2.0 中文绿色版Wireshark(前称 Ethereal)是一款免费开源的网络嗅探抓包工具,也是世界上最流行的网络协议分析器。网络封包分析软件的功能是撷取网络封包,并尽可能显示出最为详细的网络封包资料。Wireshark 网络抓包工具使用 WinPCAP 作为接口,直接与网卡进行数据报文交换,可以实时检测网络通讯数据,检测其抓取的网络通讯数据快照文件[...]