wireshark使用说明.docx
- 文档编号:4181343
- 上传时间:2023-05-06
- 格式:DOCX
- 页数:34
- 大小:1MB
wireshark使用说明.docx
《wireshark使用说明.docx》由会员分享,可在线阅读,更多相关《wireshark使用说明.docx(34页珍藏版)》请在冰点文库上搜索。
wireshark使用说明
Wireshark使用说明
共32页
2008年08月14日
1.wireshark软件简介
1.1.概述
Wireshark软件是一款功能强大的网络分析软件。
本文主要介绍Wireshark网络分析器进行网络故障分析,解决网络故障。
Wireshark支持的协议丰富,可以运行在Windows的各种平台上。
能很好的运用于网络测试及软件调试。
1.2.功能简介
Wireshark主要有以下功能:
●捕获并解码网络上的数据;
●分析具有专门的协议的网络活动;
●生成并显示关于网络活动的统计结果;
●进行网络能力的类型分析;
2.安装及启动说明
2.1.安装
首先双击安装文件,弹出安装对话框,单击NEXT按钮,见下图安装一。
在下个对话框中单击IAgree按钮。
图表1安装一
在单击IAgree按钮后,在弹出的对话框中,有三种软件安装模式可进行选择:
第一种是基于GTK2的;第二种是基于GTK1的;第三种是自定义。
选择每种安装模式就会在之后的选择框中提供不同的选择项由你选择,当鼠标选中某个选择项时在描述框中都有相应的描述。
GTK(GIMPToolkit)是功能强大、设计灵活的通用图形库,是LINUX下开发图形界面的应用程序和主流开发工具之一。
建议选择自定义安装,并把选择框中的选择项全选上。
见图安装二。
图表2安装二
单击NEXT后,出现启动方式的选择,可根据自己的使用习惯选择开始菜单启动、桌面快捷方式和快速启动。
见图安装三。
图表3安装三
在选择完安装路径后,弹出是否安装WinPcap和是否在开始时启动NPF的选择项,建议全选上。
见图安装四。
点击Install既可。
图表4安装四
2.2.启动
安装完后,选择你安装时所选择的安装方式启动程序。
程序启动后你会看到如下界面。
分别是菜单栏、工具栏和三个显示窗口。
三个显示窗口分别为:
●概要,显示数据帧所含最高级协议的概略性介绍,wireshark中包括了包的序号、捕获的时间、源地址、目的地址、最高层协议和端口。
●详细,提供了数据帧中各层次的详细说明。
(具体在报文捕获解析中说明)。
●Hex,以十六进制显示捕获的原始数据。
图表5界面
可以根据用户自己的习惯和需要更改程序的操作界面。
可在编辑菜单中的属性子菜单中设置。
包括用户界面、捕获、打印及协议设定。
图表6编辑属性设置
3.报文捕获解析
3.1.捕获设置
在捕获数据包之前,你需要选定显示哪块网卡捕获的数据包和主要符合哪几类协议的数据包。
这就需要在Capture菜单的子菜单中选择网卡和选择协议。
Capture菜单中包括Interface、Options和start按钮分别与工具栏中的三个按钮相对应,具体见图表7。
图表7Capture菜单
软件提供两种方法设置选择你需要的网卡和协议。
单击Interfaces时,会弹出一个子菜单。
在子菜单中可以看到本机所有的网卡,以及每块网卡IP、总的包数和流量。
每块网卡后面有三个按钮分别是:
Start、Options和Details可供你选择。
图表8Interfaces
可以根据IP地址来选择所需要的网卡进行捕捉,单击start既可。
若需要设置捕获条件,请单击Options按钮,将会弹出与Options子菜单一样的对话框。
此对话框中,可以设置选择网卡、抓取数据包的条件、最大可抓数据包的大小、协议、开始抓包的条件、结束抓包的条件、显示等操作。
图表9Options
单击Details,可以看到所选网卡的详细信息。
在全部设置完成后,按start,开始捕获数据包。
在工具栏中,除了上文提到的与设置数据包相对应的三个选项外,还有STOP和RESTART两个按钮来控制。
图表10捕获工具按钮
3.2.查看捕获报文
Wireshark软件提供了强大的分析能力和解码功能。
如下图所示,对于捕获的报文通过协议层层解析,在详细栏中显示(和其他抓包工具类似)。
在分析数据包时,只需要找到它的Dataarea,通过对照协议进行解析,并且软件可以按照数据区内的字节的偏移来抓取过滤数据包,方便了对照协议解析。
并且在下面的HEX栏中都有对应的原始数据会显黑色。
要查看相应的记录只需双击,就能在HEX找到相应的字节。
比如下图就是一包UDP数据的解析。
图表11详细栏
过滤查找分析
通过软件工具栏中的过滤和查找方式来迅速找到你所需要的数据包。
可以通过工具栏中的
,通过包的NUM来快速查找你需要的数据包。
通过定义过滤条件来查找解析数据包。
可以在抓包之前就定义你需要的数据包,也可以在查找数据包的时候定义过滤条件。
具体的操作有,通过工具栏的过滤快捷键
或
的弹出对话框来设置过滤条件。
本软件还提供根据协议自定义编写过滤条件的工具。
点击AddExpression后会弹出一个可按照协议自定义编写过滤协议的窗口。
左边的一栏提供了可选择的协议、中间一栏是表达式的符号,在你选择了协议和符号后,右上角的Value和右下角的Range会显色,可以在里面定义所需要的值设定过滤条件来抓取数据包。
图表12查找分析
目前大部分此类软件结构都采用这种结构显示。
对于解码主要要求分析人员对协议比较熟悉,才能看懂解析出来的报文。
解码分析功能是按照以上操作所设定的过滤器设置的过滤条件进行数据的捕获或显示。
通过所抓取的数据包来进行解码分析,来确定网络或软件的通讯机制是否存在着问题。
统计分析
Wireshark对于网络流量、协议、节点和网络负荷等内容统计做了丰富的组合,可以通过操作很快掌握。
主要通过statistics菜单中的一些功能来进行数据包的统计分析。
statistics菜单中包括很多统计功能,并且按运用分为了四层。
图表13Statistics菜单
通过Summary子菜单,你可以看到File、time、capture和display等一些总体信息的统计。
和网络总体流量的统计。
可以从整体上对与此次所抓数据包有一个总体了解。
图表14Summary
通过ProtocolHierarchy功能,你可以看到将此次总数据包以协议进行分类统计。
主要统计此次所抓的数据中所包括的各类协议及每种协议的流量和总的包数及字节数。
图表15ProtocolHierarchy
通过Conversations功能,你可以看到将此次总数据包以协议协议进行分类统计。
主要统计此次所抓的数据中所包括的各类涉及到地址的协议、地址端口及流量和总的包数及字节数。
图表16Conversations
与Conversations相比Endpoints功能只统计此次所抓的数据中所包括的各类涉及到地址的协议、及此地址的流量和总的包数及字节数。
图表17Endpoints
软件还可以通过IOGraphs的功能,通过图表的形式来统计各协议下的数据流量,IOGraphs可以同时用5种不同的颜色、4种不同的图形表示方式精确到1毫秒的统计精度来表示5种不同协议的数据流量。
图表18IOGraphs
3.3.设置捕获条件
捕获条件
Wireshark所有的捕获条件都是基于协议来进行的,在前文中提过,可以在抓包的Options来设置所需捕获数据包的条件。
如下图,单击CaptureFilter在弹出的对话框中,软件默认了一些常用的过滤条件,若要使用新的过滤条件,单击按钮New添加新的FilterName(随意,要求便于分辨就行),然后在Filterstring栏中添加相应过滤语句。
添加完后,点击OK。
然后单击start按钮,软件就会根据所设置的过滤条件进行抓包。
图表19过滤条件设置1
对于初次使用wireshark对于编写语句不熟悉的,wireshark提供了简单的编写方法。
可以点击过滤栏中的Expression按钮,在弹出的FilterExpression对话框中编写。
下面以IP为例,加以说明。
例如你所要选择的源地址为128.128.1.12的数据包,先在Fieldname中选择协议为IP,在IP协议下选中ip.src-Source,在Relation中选择==,在右边的Value对话框中按照对话框中所提示的进行填写,此例子中按照IPv4的格式填写IP地址为128.128.1.12。
填完后点击OK,然后点击Apply,后软件既会按照源地址为128.128.1.12的条件,过滤并抓取数据包。
图表20过滤源地址为128.128.1.12
软件自己会对过滤条件的语句进行校验,若过滤条件语句通过,则在Filter框中会显绿色,若不通过则是红色。
若显红色,则要去检查你所写的语句是否符合软件所要求的规范。
需要抓UDP端口为XXXX、长度为小于XX的数据包,你可以在FilterExpression对话框中,选择UDP协议下的udp.length-length,在Relation中选择小于,在Value中填写你所需要的长度,单击OK。
然后以同样的方法写入UDP端口为14336的语句。
操作完后,在Filter框中会显红色,过滤语句为udp.srcport==6425udp.port==14336,如下图。
图表21错误条件语句
你需要在两个条件之间加上逻辑关系语句and或者or,和空格。
正确语句:
udp.srcport==6425orudp.port==14336andudp.length>80。
更多条件可以按照以上步骤类似操作。
也可以在语句中修改,习惯后变可以自己编写过滤条件语句。
图表22正确条件语句
Wireshark也可以根据数据区的任意字节的大小来选择过滤条件。
若需要选择偏移量为5,值为1e的数据包,可以编写过虑语句为data.data[5]==1e;注意,偏移量是从0开始的。
或在FilterExpression对话框中,选择Data,在Relation中选择等于,在Value中填写你所需要的值(十六进制),在Range中填写所需要的偏移量(从0开始计),单击OK。
见下图。
图表23数据偏移值抓包
3.4.显示过滤设置
在设置完一个过滤条件语句之后,若需要以后继续使用。
可以点击菜单栏中的Analyze中的DisplayFilters,在弹出的对话框中点击new,在Filtername栏中填写特定的名称便行(不能与原有的重复)。
填写后,点击OK。
就能保存,下次使用时,可直接调用。
图表24保存过滤条件
图表25保存Filtername
也可以在所Filterstring中编写过滤条件,或用Expression快速编写条件。
4.网络监视功能
网络监视功能能够时刻监视网络统计,网络上资源的利用率,wireshark中把这部分功能做到了统计功能中了,相应的查看3.2捕获报文查看的统计分析功能。
5.数据报文解码详解
对与网络传输,软件将所需要的传输数据根据OSI模型中自己相对映的层及协议,进行封装,最后通过物理层进行传输。
而相对应的数据包到达目的主机后,目的主机通过反封装的过程,将数据按照各层协议,逐层进行解析。
而相应的程序则调用相应网络层的数据。
数据报文解码,就是通过数据反封装的过程,逐层进行解析。
5.1.数据报文分层
下图所示的是TCP/IP所使用的四层网络结构,相对应OSI七层网络结构,它将OSI的5、6、7三层并层了应用层,将物理层和链接层并成了链路层。
对于四层网络结构,其不同层次完成不通功能。
每一层次有众多协议组成。
图表26TCP\IP网络结构
图表27协议解析
如上图所示在Wireshark的解码表中分别对每一个层次协议进行解码分析。
链路层对应“EthernetII”;网络层对应“IP”;传输层对应“UDP”。
Wireshark可以针对众多协议进行详细结构化解码分析。
并利用树形结构良好的表现出来。
5.2.以太报文结构
EthernetII以太网帧结构
Ethernet_II以太网帧类型报文结构为:
目的MAC地址(6bytes)+源MAC地址(6bytes)+上层协议类型(2bytes)+数据字段(46-1500bytes)+校验(4bytes)。
图表28Ethernet_II协议解析
源目的MAC地址在解码框中可以将前3字节代表厂商的字段翻译出来,方便定位问题,例如网络上2台设备IP地址设置冲突,可以通过解码翻译出厂商信息方便的将故障设备找到,如00e0fc为华为,010042为Cisco等等。
对IP网络来说Ethertype字段承载的时上层协议的类型主要包括0x800为IP协议,0x806为ARP协议。
图表29IEEE802.3以太网报文结构
5.3.IP协议
IP报文结构为IP协议头+载荷,其中对IP协议头部的分析,时分析IP报文的主要内容之一,关于IP报文详细信息请参考相关资料。
这里给出了IP协议头部的一个结构。
版本:
4——IPv4
首部长度:
单位为4字节,最大60字节
TOS:
IP优先级字段
总长度:
单位字节,最大65535字节
标识:
IP报文标识字段
标志:
占3比特,只用到低位的两个比特
MF(MoreFragment)
MF=1,后面还有分片的数据包
MF=0,分片数据包的最后一个
DF(Don'tFragment)
DF=1,不允许分片
DF=0,允许分片
段偏移:
分片后的分组在原分组中的相对位置,总共13比特,单位为8字节
寿命:
TTL(TimeToLive)丢弃TTL=0的报文
协议:
携带的是何种协议报文
1:
ICMP
6:
TCP
17:
UDP
89:
OSPF
头部检验和:
对IP协议首部的校验和
源IP地址:
IP报文的源地址
目的IP地址:
IP报文的目的地址
图表30IP协议解析
上图为Wireshark对IP协议首部的解码分析结构,和IP首部各个字段相对应,并给出了各个字段值所表示含义的英文解释。
如上图报文协议(Protocol)字段的编码为0x11,,代表UDP协议。
其他字段的解码含义可以与此类似,只要对协议理解的比较清楚对解码内容的理解将会变的很容易。
5.4.ARP协议
以下为ARP报文结构
ARP分组具有如下的一些字段:
HTYPE(硬件类型)。
这是一个16比特字段,用来定义运行ARP的网络的类型。
每一个局域网基于其类型被指派给一个整数。
例如,以太网是类型1。
ARP可使用在任何网络上。
PTYPE(协议类型)。
这是一个16比特字段,用来定义协议的类型。
例如,对IPv4协议,这个字段的值是0800。
ARP可用于任何高层协议。
HSIZE(硬件长度)。
这是一个8比特字段,用来定义以字节为单位的物理地址的长度。
例如,对以太网这个值是6。
PLEN(协议长度)。
这是一个8比特字段,用来定义以字节为单位的逻辑地址的长度。
例如,对IPv4协议这个值是4。
OPER(操作)。
这是一个16比特字段,用来定义分组的类型。
已定义了两种类型:
ARP请求
(1),ARP回答
(2)。
SHA(发送站硬件地址)。
这是一个可变长度字段,用来定义发送站的物理地址的长度。
例如,对以太网这个字段是6字节长。
SPA(发送站协议地址)。
这是一个可变长度字段,用来定义发送站的逻辑(例如,IP)地址的长度。
对于IP协议,这个字段是4字节长。
THA(目标硬件地址)。
这是一个可变长度字段,用来定义目标的物理地址的长度。
例如,对以太网这个字段是6字节长。
对于ARP请求报文,这个字段是全0,因为发送站不知道目标的物理地址。
TPA(目标协议地址)。
这是一个可变长度字段,用来定义目标的逻辑地址(例如,IP地址)的长度。
对于IPv4协议,这个字段是4字节长。
图表31ARP解析
6.应用举例(网络测试)
6.1.网络概况测试
网络概况测试中需要统计网络节点、流量、协议分布和节点的数据统计。
可以使用Wireshark统计功能进行测试。
主要通过statistics菜单中的一些功能来进行数据包的统计分析。
statistics菜单中有很多统计功能,用来从总体测试网络的概况。
具体参看3.2捕获报文查看中的,统计功能。
通过Summary子菜单,你可以看到File、time、capture和display等一些总体信息的统计和网络总体流量的统计。
用来测试网络的总体流量。
如下图,平均包数为50.577包每秒;平均每包大小为284.261字节;流量为0.115MBit/sec。
网络利用率以100M来计算为0.115%。
图表32网络概况测试
测试各协议分布和协议流量可以通过ProtocolHierarchy功能,你可以看到将此次总数据包以协议进行分类统计。
主要统计此次所抓的数据中所包括的各类协议及每种协议的流量和总的包数及字节数。
图表33协议流量测试
网络节点流量测试通过Conversations功能来实现,你可以看到将此次总数据包以协议协议进行分类统计。
主要统计此次所抓的数据中所包括的各类涉及到地址的协议、地址端口及流量和总的包数及字节数。
图表34节点流量测试
软件还可以通过IOGraphs的功能,通过图表的形式来统计各协议下的数据流量,IOGraphs可以同时用5种不同的颜色、4种不同的图形表示方式精确到1毫秒的统计精度来表示5种不同协议的数据流量。
使测试结果更直观。
图表35IOGraphs
6.2.冗余网络通讯数据比较
Wireshark用Wireshark可以同时打开两个,若根据具体的测试目标需要抓取两块网卡的数据。
例如,需要抓取冗余的1号网和2号网的数据,我可以同时打开两个Wireshark,抓取两块网卡的数据。
监控两个网络的数据流量,根据抓取的数据包加以比较,就可以看到冗余网络的数据有何不同,便于合理的配置资源。
图表36监控冗余网络
6.3.网络通讯周期测试
用Wireshark抓取通讯网络的数据包,根据具体的测试目标,选择使用地址捕获条件设置(源地址或目标地址限制)和/或数据捕获条件设置(偏移量和数值设置)和/或高级捕获条件设置(指定协议)进行过滤设置(具体设置方法参看3.3.设置捕获条件),然后解码查看过滤后各帧的时间间隔Deltatime,得到通讯周期和响应时间。
对于过滤的使用有2种:
先捕获全部数据,再使用先定义显示过滤;使用定义捕获过滤后,再抓包。
前者可以一次捕获,多次过滤查看,适合总体横向比较;后者主要用于缓冲器容量较小的情况,针对性强,不浪费空间。
以系统诊断数据为例,GCS-2系统的诊断数据走3号网,端口为30583。
在抓取条件Filter中写入udp.srcport==30583。
或者在FilterExpression中选择UDP、udp.srcport-SourcePort、==、30583后点击ok。
图表37抓诊断数据
图表38抓取诊断数据
过滤后,你会在概要栏中,看到所要抓取的数据包。
然后看Deltatimedisplay一栏,你会看到此数据包的发送周期为700ms。
测试结果诊断数据的通讯周期为700ms左右。
图表39通讯周期测试
6.4.通讯协议测试
系统内部的协议往往由公司内部所定义,在网络测试的过程中,需要将所抓到的数据通过协议进行解析比对。
Wireshark提供了可以按照数据区的任意偏移量的任意值来抓包的功能,方便我们抓取我们所需要的数据包进行分析。
例如抓取ECS100系统2号地址的FW247的命令码为0138的数据包,我们可以设置过虑条件为data.data[0]==01anddata.data[1]==38。
见下图。
图表40命令码为0138的数据包
7.常用命令汇总
协议:
udp;tcp;ip;等等直接打入协议名即可。
地址:
ip.src==128.128.1.2(IP源地址为128.128.1.2);ip.dst==128.128.1.130(IP目的地址为128.128.1.130);ip.addr==128.128.1.45(地址为128.128.1.45)。
端口:
udp.srcport==30583(UDP源端口为30583);udp.dstport==30583(UDP目的端口为30583);udp.port==7777(UDP端口号为7777);
数据:
data.data[0]==01(偏移量为0,值为01)。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- wireshark 使用说明
![提示](https://static.bingdoc.com/images/bang_tan.gif)