当前位置: 首页 >应用方案 >技术应用 >

Wireshark网络封包分析软件抓包教程

一、Wireshark抓包工具简介

件Wireshark抓包软件

Wireshark(前称Ethereal)是一个网络封包分析软件。网络封包分析软件的功能是截取网络封包,并尽可能显示出最为详细的网络封包资料。Wireshark使用WinPCAP作为接口,直接与网卡进行数据报文交换。

在过去,网络封包分析软件是非常昂贵的,或是专门属于盈利用的软件。Ethereal的出现改变了这一切。在GNUGPL通用许可证的保障范围底下,使用者可以通过免费的途径取得软件与其源代码,并拥有针对其源代码修改及客制化的权利。Ethereal是全世界最广泛的网络封包分析软件之一。

二、Wireshark抓包示例

1下载并且安装好Wireshark后打开软件(本文以Wireshark Version 3.4.9 介绍)打开后我们可以看到,Wireshark可以自动识别出电脑上面的网卡(包括虚拟网卡),这里我们双击我们需要抓包的网卡。

Wireshark抓包软件1

2双击进入此界面后,Wireshark已经自动开始了抓包过程,如果网卡在与其他网络设备通讯,我们就能看到如下图所示的各种网络协议报文

Wireshark抓包2

3ping www.ebyte.com

Wireshark抓包3

4由于Wireshark抓取的是网卡物理层的数据,所以所有通过该网卡收发的数据都会被Wireshark抓取,这就让我们从海量数据中找到我们需要关注的网络包就如同大海捞针,但是Wireshark提供了强大的数据包过滤功能,我们就能比较轻松地找到对应的包。比如上面我已经ping了我司官网,现在Wireshark已经抓取了两万多条报文,只要通过在过滤器输入”ip.addr == 101.37.40.78 && icmp“就能找到对应的报文。

Wireshark抓包4

三、TCP报文抓包分析示例

1开启Wireshark软件的抓包功能后,通过电脑连接到本地搭建的回显服务器,电脑上面的客户端发送了一段数据到服务器服务器回传到电脑上的客户端。

Wireshark抓包5

2此时我们在Wireshark的过滤栏中输入“ip.addr == 192.168.3.6”就能过滤出网络报文中基于IP协议簇,且IP地址(源地址或目标地址)为192.168.3.6的网络报文。如下图所示:

Wireshark抓包6

Wireshark在封包展示界面中根据网络协议模型,展示出了各层协议的重要信息如下图所示:

Frame:表示物理层

Ethernet II :数据链路层信息,包括源主机MAC目标主机MAC与协议类型如IPV4(0x0800)

Internet Protocol Version 4:IP协议帧信息,包括源主机IP地址,目标主机IP地址等

Transmission Control Protocol:TCP协议相关信息,包括源端口与目标端口号,接收窗口大小等

Wireshark抓包7
Wireshark抓包8

3TCP握手过程

Wireshark抓包9

四、Wireshark常用过滤器设置

1Wireshark中的逻辑运算符

1.1比较运算符如:== (等于)、!=(不等于) 、>(大于) 、<(小于) 、>=(大于等于) 、<=(小于等于)

ip.src == 192.168.3.6 过滤源主机IP地址或者目标主机IP地址为192.168.3.6的报文

1.2逻辑运算符如:&&(与)、||(或)、!(非)

ip.src == 192.168.3.6 && && tcp.srcport == 8001,则只显示报文源主机地址为192.168.3.6且源端口为为8001的报文

2、网络协议过滤

根据网络协议过滤报文,即在抓包过滤框中输入协议相关字段即可,包括”TCP”,”UDP””HTTP””ICMP”等。

3MAC地址过滤

eth.addr == 38:3b:26:88:02:dd 过滤源主机MAC地址或者目标主机MAC地址为38:3b:26:88:02:dd的报文

eth.src== 38:3b:26:88:02:dd 过滤源主机MAC地址为38:3b:26:88:02:dd的报文

eth.dst== 38:3b:26:88:02:dd 过滤目标主机MAC地址为38:3b:26:88:02:dd的报文

4ip地址过滤

Ip.addr == 192.168.3.6 过滤源主机IP地址或者目标主机IP地址为192.168.3.6的报文

Ip.src== 192.168.3.6 过滤源主机IP地址为192.168.3.6的报文

ip.dst == 192.168.3.240 过滤目标主机IP地址为192.168.3.240的报文

5、端口过滤

tcp.port==80 过滤基于TCP协议且目标端口号或源端口号为80的报文

udp.srcport == 8001 过滤基于UDP协议且端口号为8001的报文

tcp.dstport == 8001 过滤基于TCP协议且目标端口号为8001的报文

6Http模式过滤

http.request.method=="GET",   过滤基于http协议且http请求方式为”GET”的报文

今天的分享就到这里啦,亿佰特人每一天都致力于更好的助力物联化、智能化、自动化的发展,提升资源利用率,更多产品更多资料,感兴趣的小伙伴可以登录我们的官网进行了解,还有客服小姐姐在线答疑哦!


https://www.wjx.cn/jq/84863372.aspx