WireShark

是一个开源抓包工具或者叫网络嗅探器,用于分析网络流量和分析数据包。显示了网络模型中的第 2 层到第 5 层(链路层、网络层、传输层、应用层)。

一、WireShark 的使用

1.选择监听的网络

使用Wireshark实时抓包Android android wireshark抓包_网络


选择的是无线网WAN:

使用Wireshark实时抓包Android android wireshark抓包_网络_02

点进去,能够看到数据包在不停的刷,那么就表明你选择的网络是正确的。

2.WireShark 界面简单介绍

  • 菜单栏
  • 工具栏
  • 数据包列表面板
  • 数据包详细详细面板
  • 数据包字节信息面板

3.开始抓包和停止抓包

使用Wireshark实时抓包Android android wireshark抓包_运维_03

如果想要停止抓包,就点击:

使用Wireshark实时抓包Android android wireshark抓包_wireshark_04

抓包过程中想要清空抓包列表,就点击:

使用Wireshark实时抓包Android android wireshark抓包_抓包_05

4.抓包信息分析

使用Wireshark实时抓包Android android wireshark抓包_wireshark_06


可以双击打开这个报文,得到这样的界面:

使用Wireshark实时抓包Android android wireshark抓包_抓包_07

  • Frame 1752:数据帧,编号为1752,数据帧就是我们抓到的这个包发送的数据,1506字节,代表发送数据的大小有1506字节的大小。
  • 使用Wireshark实时抓包Android android wireshark抓包_抓包_08

  • Ethernet II, Src: NewH3CTe_d6:f1:50 (10:19:65:d6:f1:50), Dst: LiteonTe_5a:aa:3d (58:00:e3:5a:aa:3d):以太网、二层,源目mac地址分别为(10:19:65:d6:f1:50)和(58:00:e3:5a:aa:3d)。
  • 使用Wireshark实时抓包Android android wireshark抓包_网络_09

  • Internet Protocol Version 4, Src: 59.39.0.162, Dst: 172.16.1.136:ipv4、三层,源目ip地址分别为59.39.0.162和172.16.1.136
  • 使用Wireshark实时抓包Android android wireshark抓包_测试工具_10

  • Transmission Control Protocol, Src Port: 443, Dst Port: 53918, Seq: 67572, Len: 1452:TCP协议,源目端口号分别为443和53918,序列号为67572,数据长度为1452
  • 使用Wireshark实时抓包Android android wireshark抓包_运维_11

5.WireShark 过滤器

第一个是捕获过滤器,另一个是显示过滤器。

链路层协议

显示 ARP 流量:

arp

使用Wireshark实时抓包Android android wireshark抓包_网络_12

显示从 MAC 地址为58:00:e3:5a:aa:3d的设备发送的 ARP 协议帧:

arp.src.hw_mac ==58:00:e3:5a:aa:3d

使用Wireshark实时抓包Android android wireshark抓包_测试工具_13


显示从 IP 地址为172.16.1.136的设备发送的 ARP 协议帧:

arp.src.proto_ipv4 == 172.16.1.136

使用Wireshark实时抓包Android android wireshark抓包_抓包_14

显示以太网流量:

eth

使用Wireshark实时抓包Android android wireshark抓包_网络_15

网络层协议

源IP地址:

ip.src ==172.16.1.136

使用Wireshark实时抓包Android android wireshark抓包_抓包_16

目标IP地址:

ip.dst ==172.16.1.136

使用Wireshark实时抓包Android android wireshark抓包_运维_17

指定 IP 地址,不论其是源ip还是目的ip:

ip.addr ==172.16.1.136

使用Wireshark实时抓包Android android wireshark抓包_测试工具_18


显示 IPv6 流量:

ipv6

传输层协议(tcp/udp)

查看 TCP 流量:

tcp

使用Wireshark实时抓包Android android wireshark抓包_网络_19


tcp 源端口 443 的流量:

tcp.srcport == 443

使用Wireshark实时抓包Android android wireshark抓包_测试工具_20


tcp 目的端口 443 的流量:

tcp.dstport == 443

tcp 指定端口443的流量,不论其是源端口还是目的端口:

tcp.port==443
tcp.srcport == 443 || tcp.dstport == 443

应用层协议

查看 HTTP 流量:

http

使用Wireshark实时抓包Android android wireshark抓包_测试工具_21


查看 HTTP POST请求 流量:

http.request.method == “POST”

使用Wireshark实时抓包Android android wireshark抓包_运维_22

查看 HTTP GET请求 流量:

http.request.method == “GET”

查看所有 DNS 请求和响应:

dns

6.保存WireShark文件

我们在抓完一段时间的后想要保存抓包过程,我们可以在停止抓包后Ctrl + S进行保存,或者点击开始抓包,会提示你是否保存;

一旦保存成功,会在指定目录生成一个后缀名为.pcapng的抓包文件。

使用Wireshark实时抓包Android android wireshark抓包_运维_23