如何用wireshark解决实际问题_第1页
如何用wireshark解决实际问题_第2页
如何用wireshark解决实际问题_第3页
如何用wireshark解决实际问题_第4页
如何用wireshark解决实际问题_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

如何用wireshark解决实际问题目录1. Wireshark显示环境的设置 11.1 设置显示列的源和目的端口增加包显示的可读性 11.2 调整包的显示 41.3 设置时间显示格式 51.4 添加过滤表达式标签 51.5 添加协议的解析端口 71.6 强制解析数据包包为某种协议 102. 抓包的捕捉过滤 132.1 捕捉过滤的语法 13 过滤arp消息 152.2 过滤sip呼叫的信令和rtp流的包 162.3 !的用法 173. 显示过滤 183.1 过滤某一网段端 203.2 按照偏移量来过滤 203.3 过滤ip段 213.4 按照packetdetail里的具体的字段进行过滤 214. 抓包分析举例 244.1 网管中某个基站不在线 24 用ctrl+f进行查找 25 用packetdetail里的字段进行查找 264.2 分析基站网管的基站的数据不能同步 284.3 Sip通话软件单通 29Wireshark显示环境的设置设置显示列的源和目的端口增加包显示的可读性我们可以设置wireshark的显示的列字段,增加包的可读性如我们增加数据包源端口和目的端口,这样可以一目了然,知道是从哪里发的包。方法菜单edit→preferences→userinterface→columns→add对具体的字段fieldtype进行选择,显示名称标题title进行修改点应用apply后,显示的内容增加,然后在显示界面调整显示的次序调整包的显示调整各个字段的显示方式,显示的靠边,居中,靠右,列的宽度等内容设置时间显示格式这样就添加了数据包显示时的源和目的端口,便于我们定位问题添加过滤表达式标签可以在过滤器旁边添加常用过滤表达式,便于分析操作这样可以方便我们过滤出自己想要的内容。添加协议的解析端口增加协议使用的非标准端口,这样可以使使用非标准端口的包解析为标准的协议如使用默认是80端口,但用户有时定义的端口为8080,这样就可以直接解析出8080的内容为协议。如图:我们自己的编写的tomcat的应用程序使用的是8080端口作为效劳器监听端口,但抓包中显示的协议确实tcp我们可以在edit→preferences→protocal里找到对应的协议添加对应解析端口,实现对8080端口的解析强制解析数据包包为某种协议也可以把使用非标准端口的包解析为某协议如我们的网管程序使用了2121端口作为ftp效劳器的监听端口,但ftp默认的端口是21,这样就无法解析成ftp协议,不便于分析信令。我们可以使用收到解析的方法,把某个包解析为某种协议。选中对应端口的行,右键一点,菜单中选择decodeas解析后的包协议转换为ftp抓包的捕捉过滤捕捉过滤的语法抓包的数据量很大,很多与我们的需要无关,为了减少数据的捕捉量,我们使用预过滤功能,在开始抓包过滤掉与我们需要无关的内容。语法:

Protocol

Direction

Host(s)

Value

LogicalOperations

Otherexpression例子:

tcp

dst

80

and

tcpdst3128

Protocol〔协议〕:可能的值:ether,fddi,ip,arp,rarp,decnet,lat,sca,moprc,mopdl,tcpandudp.如果没有特别指明是什么协议,那么默认使用所有支持的协议。

Direction〔方向〕:可能的值:src,dst,srcanddst,srcordst如果没有特别指明来源或目的地,那么默认使用"srcordst"作为关键字。例如,"host"与"srcordsthost"是一样的。

Host(s):可能的值:net,port,host,portrange.如果没有指定此值,那么默认使用"host"关键字。例如,"src"与"srchost"相同。value当字段为host时,host后面的值为ip地址,当为port时为端口号,当为etherhost时为对应的mac地址

LogicalOperations〔逻辑运算〕:可能的值:not,and,or.否("not")具有最高的优先级。或("or")和与("and")具有相同的优先级,运算时从左至右进行。例如,

"nottcpport3128andtcpport23"与"(nottcpport3128)andtcpport23"相同。

"nottcpport3128andtcpport23"与"not(tcpport3128andtcpport23)"不同过滤arp消息我们要过来和arp协议并且和相关的所有消息,就用这样的语句arp&ðerhost70:ba:ef:e3:5e:12会过滤出所有arp协议的包而且源和目的mac含有70:ba:ef:e3:5e:12消息的包过滤某一主机的所有的包如:过滤sip呼叫的信令和rtp流的包如:Sip协议走udp承载,一般默认端口是5060,rtp也走udp承载,一般的端口范围是10000到65535udpport5060||(udpsrcportrange10000-65535&&udpdstportrange10000-65535)如上图显示,会有其他的udp包混入,但不会太多,主要是sip和rtp包注意不能使用大于,小于,等于比拟运算符表达式,如host>,这是错误的表示语句错误!的用法要排除某一个协议或者端口可以用!协议,!端口等语句如假设抓包中,我们要sip和rtp包,也可用下面的语句进行过滤(!udpdstport137)&&(!udpdstport138)&&!tcp&&!arp&&(!(udpdstport1900))&&!sctp&&(!(udpsrcport1900))&&(!udpdstport137)显示过滤显示过滤可以执行过滤语句显示出我们需要的包语法:

Protocol.String1.String2

Comparison

operator

Value

Logical

Operations

Other

expression例子:

ftp

passive

ip

==

xor

icmp.typeProtocol〔协议〕:您可以使用大量位于OSI模型第2至7层的协议。点击"Expression..."按钮后,您可以看到它们。比方:IP,TCP,DNS,SSHComparisonoperators〔比拟运算符〕:

可以使用6种比拟运算符:英文写法:

C语言写法:

含义:eq

==

等于ne!=不等于gt>大于lt<小于ge>=大于等于le<=小于等于Logicalexpressions〔逻辑运算符〕:英文写法:

C语言写法:

含义:and&&逻辑与or||逻辑或xor^^逻辑异或not!逻辑非被程序员们熟知的逻辑异或是一种排除性的或。当其被用在过滤器的两个条件之间时,只有当且仅当其中的一个条件满足时,这样的结果才会被显示在屏幕上。

让我们举个例子:

"tcp.dstport80xortcp.dstport1025"

只有当目的TCP端口为80或者来源于端口1025〔但又不能同时满足这两点〕时,这样的封包才会被显示。例子:snmp||dns||icmp显示SNMP或DNS或ICMP封包。

显示来源或目的IP地址为的封包。(!(ip.dst==))or(!(ip.src==))注意:不能使用ip.addr!=x.x.x.x这样的语句,过滤栏会出现黄色,提示语句不起效果,过滤无效显示来源不为或者目的不为的封包。

换句话说,显示的封包将会为:

来源IP:除了以外任意;目的IP:任意

以及来源IP:任意;目的IP:除了以外任意tcp.port==25显示来源或目的TCP端口号为25的封包。

tcp.dstport==25显示目的TCP端口号为25的封包。

tcp.flags显示包含TCP标志的封包。

tcp.flags.syn==0x02显示包含TCPSYN标志的封包。如果过滤器的语法是正确的,表达式的背景呈绿色。如果呈红色,说明表达式有误。表达式正确表达式错过滤某一网段端按某一网段显示按照偏移量来过滤如按照mac地址的前三个字节来过滤eth.dst[0:3]==00:0e:5e过滤ip段过滤某一ip段的包或者mac地址段(eth.addr>=00:0e:5e:00:00:00)&&(eth.addr<=00:0e:5e:ff:ff:ff)按照packetdetail里的具体的字段进行过滤可以展开packetdetail,按照其中显示的字段进行标上颜色或者过滤展开sip协议header,找到call-id然后右键一点,弹出的菜单中找clorizewithfilter对符合协议的包进行标红也可以用选中的字段,右键菜单中prepareasfilter抓包分析举例抓到包后,需要根据包进行分析,解决我们的实际的问题,下面列举几个例子,说明是如何利用wireshark解决问题的。网管中某个基站不在线首先翻开抓包,然后在cmd下,执行arp–d,执行ping包,看能否ping通。数据发包过程,首先检查目的ip是否和本机ip在同一网段,是同一网段的话,检查是否有目的ip的mac地址,没有的话,发arp播送消息请求mac地址,目的ip回复后,ping消息发出。有ping的回复,证明设备的ip层是通的,检查其上的应用层是否加载。抓包如下:如基站不在线,停止抓包后,过滤arp||icmp出现大量的抓包,为了快速找到我们需要的arp请求消息,我们有两种方法,用ctrl+f进行查找我们使用CTRL+F,查找这个字符串或者十六进制12FA001F这个值同样我们可以按16进制查找同样有arp的回复和ping的回复,证明设备ip层是通的。用packetdetail里的字段进行查找我们也可以用detail里的字段显示作为过滤项,然后修改他的值来查找,具体:由此,判断基站的应用程序没有翻开,如果翻开的话,基站首先会查找网管的arp,得到响应后,基站会发起对网关url地址的tcp三步握手,然后激活相关的消息。见下列图:分析基站网管的基站的数据不能同步基站数据同步的过程是网管下达同步消息后,基站主动连接网管的ftp效劳器的21端口,连接成功后,进行ftp的口令密码验证,现在过滤21端口数据进行检查。正常的过程:现场过滤tcp.port==21,发现三步握手没过网管没有回syn+ack消息,经查系基站网管的pc上的防火墙阻止了ftp的连接,关闭防火墙后,基站同步数据正常。Sip通话软件单通安装sip软件通过wifi路由器和Ippbx用户通话单通,听不到声音现象:Wifi路由器的ip是,ippbx的ip是,fxs用户板ip是01,侧8003听到声音ippbx侧8313的声音抓包后,过滤sip||rtp在菜单统计statistics→flowgraph看一下显示包的流程图在telephony→voipcalls里查看158到99的呼叫,以及99到101的呼叫,听一下抓包的声音,看一下是否是单通。明显看到应该是两个方向的通话,但现在只有158的7078端口到99的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论