查看原文
其他

网络基础知识:网络分析工具Wireshark

一次性付费进群,长期免费索取教程,没有付费教程。

进微信群回复公众号:微信群;QQ群:460500587

 教程列表 见微信公众号底部菜单 |  本文底部有推荐书籍 



微信公众号:计算机与网络安全

ID:Computer-network


Wireshark(前身Ethereal)是一个网络包分析工具。该工具主要是用来捕获网络数据包,并自动解析数据包,为用户显示数据包的详细信息,供用户对数据包进行分析。它可以运行在WindowsLinux操作系统上。本文介绍该工具的基本使用方法。


1、下载及安装


Wireshark安装方法请点往期链接查看:如何安装Wireshark


2、实施抓包


安装好Wireshark以后,就可以运行它来捕获数据包了。方法如下:


1)在Windows的“开始”菜单中,单击Wireshark菜单,启动Wireshark,如图1所示。该图为Wireshark的主界面,界面中显示了当前可使用的接口,例如,本地连接5、本地连接10等。要想捕获数据包,必须选择一个接口,表示捕获该接口上的数据包。

图1  主界面


2)在图1中,选择捕获“本地连接”接口上的数据包。选择“本地连接”选项,然后单击左上角的按钮,将进行捕获网络数据,如图2所示。图中没有任何信息,表示没有捕获到任何数据包。这是因为目前“本地连接”上没有任何数据。只有在本地计算机上进行一些操作后才会产生数据,如浏览网站。

图2  将要捕获数据包


3)当本地计算机浏览网站时,“本地连接”接口的数据将会被Wireshark捕获到。捕获的数据包如图3所示。图中方框中显示了成功捕获到“本地连接”接口上的数据包。

图3  成功捕获到的数据包


4)Wreshark将一直捕获“本地连接”上的数据。如果不需要再捕获,可以单击左上角的按钮,停止捕获。


3、使用显示过滤器

默认情况下,Wireshark会捕获指定接口上的所有数据,并全部显示。这样会导致在分析这些数据包时,很难找到想要分析的那部分数据包。这时可以借助显示过滤器快速查找数据包。显示过滤器是基于协议、应用程序、字段名或特有值的过滤器,可以帮助用户在众多的数据包中快速地查找数据包,可以大大减少查找数据包时所需的时间。


使用显示过滤器,需要在Wireshark的数据包界面中输入显示过滤器并执行,如图4所示。

图4  显示过滤器输入框


图中方框标注的部分为显示过滤器区域。用户可以在里面输入显示过滤器,进行数据查找,也可以根据协议过滤数据包。用到的显示过滤器如表1所示。

表1  显示过滤器及其作用


例如,要从捕获到的所有数据包中,过滤出DNS协议的数据包,这里使用dns显示过滤器,过滤结果如图5所示。图中显示的所有数据包的协议都是DNS协议。

图5  显示过滤器结果


4、分析数据包层次结构


任何捕获的数据包都有它自己的层次结构,Wireshark会自动解析这些数据包,将数据包的层次结构显示出来,供用户进行分析。这些数据包及数据包对应的层次结构分布在Wireshark界面中的不同面板中。下面介绍如何查看指定数据包的层次结构。


1)使用Wireshark捕获数据包,界面如图6所示。

图6  捕获数据包界面


图6中所显示的信息从上到下分布在3个面板中,每个面板包含的信息含义如下:


Packet List面板:上面部分,显示Wireshark捕获到的所有数据包,这些数据包从1进行顺序编号。


Packet Details面板:中间部分,显示一个数据包的详细内容信息,并且以层次结构进行显示。这些层次结构默认是折叠起来的,用户可以展开查看详细的内容信息。


Packet Bytes面板:下面部分,显示一个数据包未经处理的原始样子,数据是以十六进制和ASCII格式进行显示。


2)以HTTP协议数据包为例,了解该数据包的层次结构。在Packet List面板中找到一个HTTP协议数据包,如图7所示。

图7  选择数据包


其中,编号21的数据包是一个HTTP协议数据包。此时在Packet Details面板上显示的信息就是该数据包的层次结构信息。这里显示了5个层次,每个层次的含义如下:


Frame:该数据包物理层的数据帧概况。


Ethernet II:数据链路层以太网帧头部信息。


Internet Protocol Version 4:网际层IP包头部信息。


Transmission Control Protocol:传输层的数据段头部信息。


Hypertext Transfer Protocol:应用层的信息,此处是HTTP协议。


由此可见,Wireshark对HTTP协议数据包进行解析,显示了HTTP协议的层次结构。


3)用户对数据包分析就是为了查看包的信息,展开每一层,可以查看对应的信息。例如,查看数据链路层信息,展开Ethernet II层,显示信息如下:


Ethernet II, Src: Tp-LinkT_46:70:ba (ec:17:2f:46:70:ba), Dst: Giga-Byt_17:

cf:21 (50:e5:49:17:cf:21)

Destination: Giga-Byt_17:cf:21 (50:e5:49:17:cf:21) #目标MAC地址

Source: Tp-LinkT_46:70:ba (ec:17:2f:46:70:ba) #源MAC地址

Type: IPv4 (0x0800)


显示的信息包括了该数据包的发送者和接收者的MAC地址(物理地址)。


可以以类似的方法分析其他数据包的层次结构。


微信公众号:计算机与网络安全

ID:Computer-network


【推荐书籍】

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存