版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、协议分析工具使用培训,增值业务产品线 北京神州数码思特奇信息技术股份有限公司 2008年01月16日,VASD产品培训,Ethereal协议分析系统介绍 Ethereal软件下载与安装手册 Ethereal使用入门 使用Ethereal分析协议数据包 linux下的网络分析Tcpdump的使用,系统介绍,Ethereal是一个开放源码的网络分析系统,也是是目前最好的开放源码的网络协议分析器,支持Linux和windows平台。Ethereal起初由Gerald Combs开发,随后由一个松散的Etheral团队组织进行维护开发。它目前所提供的强大的协议分析功能完全可以媲美商业的网络分析系统 网
2、络分析系统首先依赖于一套捕捉网络数据包的函数库。这套函数库工作在在网络分析系统模块的最底层。作用是从网卡取得数据包或者根据过滤规则取出数据包的子集,再转交给上层分析模块。从协议上说,这套函数库将一个数据包从链路层接收,至少将其还原至传输层以上,以供上层分析。,系统介绍,在Linux系统中, 1992年Lawrence Berkeley Lab的Steven McCanne和Van Jacobson提出了包过滤器的一种的实现,BPF(BSD Packet Filter)。Libpcap是一个基于BPF的开放源码的捕包函数库。现有的大部分Linux捕包系统都是基于这套函数库或者是在它基础上做一些针
3、对性的改进。 在window系统中,意大利人Fulvio Risso和Loris Degioanni提出并实现了Winpcap函数库,作者称之为NPF。由于NPF的主要思想就是来源于BPF,它的设计目标就是为windows系统提供一个功能强大的开发式数据包捕获平台,希望在Linux系统中的网络分析工具经过简单编译以后也可以移植到windows中,因此这两种捕包架构是非常现实的。就实现来说提供的函数调用接口也是一致的。,Ethereal协议分析系统介绍 Ethereal软件下载与安装手册 Ethereal使用入门 使用Ethereal分析协议数据包 linux下的网络分析Tcpdump的使用,E
4、thereal网址: 到Ethereal的站站后,点击download,接着选择要安装的系统平台,如Windows或Linux,然后点击下载链接即可进行下载(例如Mainsite或Mirrorsite)。 Ethereal的安装非常简单,只要执行ethereal-setup-x.y.z.exe即可。,勾选InstallWinpcap 3.1 beta 4,WinPcap是libpcap library的Windows版本。Ethereal可透过WinPcap来劫取网络上的数据包。Install WinPcap,因此在安装Ethereal的过程中也会一并安装WinPcap,不需要再另外安装。,E
5、thereal的基本操作 欲劫获网络上的数据包,只要指定网卡(NetworkInterfaceCad),接着按Capture即可。,下图为Ethera截取数据包的页面。由上而下分別是功能表栏、工具栏截取数据包的列表以及封包的详细资料,最下面则是封包的內容,这时是以16进制及ASCII编码的方式来表示。,其中在封包列表这部份,最前面的编号代表收到封包的次序,其次是时间、来源地址、目的地址,最后则是协议的名称以及关于此封包的摘要信息。另外,如果觉得截获的的封包数量太多的話,在抓取封包之前,可用Capture Filter的功能,选择想要过滤的协议即可。 若是想将截获到的数据包列表资料储存起来,可以
6、执行FileSave或Save As将资料储存起来,存储对话框如下图所示:,Ethereal协议分析系统介绍 Ethereal软件下载与安装手册 Ethereal使用入门 使用Ethereal分析协议数据包 linux下的网络分析Tcpdump的使用,启动ethereal 以后,选择菜单Capature-Start ,就OK 了。当你不想抓的时候,按一下stop, 抓的包就会显示在面板中,并且已经分析好了。 下面是一个截图:,ethereal使用capture选项,nterface: 指定在哪个接口(网卡)上抓包。一般情况下都是单网卡,所以使用缺省的就可以了Limit each packet:
7、 限制每个包的大小,缺省情况不限制。 Capture packets in promiscuous mode: 是否打开混杂模式。如果打开,抓取所有的数据包。一般情况下只需要监听本机收到或者发出的包,因此应该关闭这个选项。Filter:过滤器。只抓取满足过滤规则的包(可暂时略过) File:如果需要将抓到的包写到文件中,在这里输入文件名称。use ring buffer: 是否使用循环缓冲。缺省情况下不使用,即一直抓包。注意,循环缓冲只有在写文件的时候才有效。如果使用了循环缓冲,还需要设置文件的数目,文件多大时回卷。其他的项选择缺省的就可以了。,ethereal的抓包过滤器 抓包过滤器用来抓取
8、感兴趣的包,用在抓包过程中。 抓包过滤器使用的是libcap 过滤器语言,在tcpdump 的手册中有详细的解释,基本结构是: not primitive and|or not primitive . 个人观点,如果你想抓取某些特定的数据包时,可以有以下两种方法,你可以任选一种, 个人比较偏好第二种方式: 1、在抓包的时候,就先定义好抓包过滤器,这样结果就是只抓到你设定好的那些类型的数 据包; 2、先不管三七二十一,把本机收到或者发出的包一股脑的抓下来,然后使用下节介绍的显 示过滤器,只让Ethereal 显示那些你想要的那些类型的数据包;,etheral的显示过滤器 在抓包完成以后,显示过滤
9、器可以用来找到你感兴趣的包,可以根据1)协议2)是否存在某个域3)域值4)域值之间的比较来查找你感兴趣的包。 举个例子,如果你只想查看使用tcp 协议的包,在ethereal 窗口的左下角的Filter 中输入tcp, 然后回车,ethereal 就会只显示tcp 协议的包。如下图所示:,GDB使用,值比较表达式可以使用下面的操作符来构造显示过滤器自然语言类c 表示:举例 eq = ip.addr=0 ne != ip.addr!=0 gt frame.pkt_len10 lt = frame.pkt_len=10 le = frame.pkt_len=10
10、 表达式组合可以使用下面的逻辑操作符将表达式组合起来自然语言类c 表示举例and & 逻辑与,比如ip.addr=0&tcp.flag.fin or | 逻辑或,比如ip.addr=0|ip.addr=1 xor 异或,如tr.dst0:3 = 0.6.29 xor tr.src0:3 = not ! 逻辑非,如 !llc,在ethereal 使用协议插件 ethereal 能够支持许多协议,但有些协议需要安装插件以后才能解,比如H.323,以H.323 协议为例,首先下载ethereal 的H.323 插件,下载地址http:/www.v
11、/ 下载完了以后将文件(h323.dll) 解压到ethereal 安装目录的plugin0.9.x 目录下面,比如我的是0.9.11 ,然后,需要进行一下设置1)启动ethereal 2)菜单Edit-Preference 3)单击Protocols 前面的+号,展开Protocols 4)找到Q931 ,并单击5)确保Desegment. TCP segments 是选中的(即方框被按下去)6)单击TCP 7)确保Allow.TCP streams 是选中的8)确保没有选中Check.TCP checksum 和Use.sequence numbers 9)单击
12、TPKT 10)确保Desegment.TCP segments 是选中的11)点击Save,然后点击Apply ,然后点击OK 你也完全可以不断地重新安装新版本winpcap 和ethreal, 这样就可以不需在旧的ethreal 的版本中安装新的插件来支持新的协议插件。这也是懒人的一种做法,Ethereal协议分析系统介绍 Ethereal软件下载与安装手册 Ethereal使用入门 使用Ethereal分析协议数据包 linux下的网络分析Tcpdump的使用,Ethereal分析数据包 Ethereal和其它的图形化嗅探器使用基本类似的界面,整个窗口被分成三个部分:最上面为数据包列表,
13、用来显示截获的每个数据包的总结性信息;中间为协议树,用来显示选定的数据包所属的协议信息;最下边是以十六进制形式表示的数据包内容,用来显示数据包在物理层上传输时的最终形式。 使用Ethereal可以很方便地对截获的数据包进行分析,包括该数据包的源地址、目的地址、所属协议等。 图4是在Ethereal中对一个HTTP数据包进行分析时的情形。,在图3最上边的数据包列表中,显示了被截获的数据包的基本信息。从图中可以看出,当前选中数据包的源地址是62,目的地址为5,该数据包所属的协议是超文本传输协议(HTTP)。更详细的信息表明该数据包中含有一个HTTP的GE
14、T命令,要求下载starrtlog.js文件到客户端的Web浏览器。 图4中间是协议树,通过协议树可以得到被截获的数据包的更多信息,如主机的MAC地址(EthernetII)、IP地址(InternetProtocol)、TCP端口号(TransmissionControlProtocol),以及HTTP协议的具体内容(HypertextTrnasferProtocol)。通过扩展协议树中的相应节点,可以得到该数据包中携带的更详尽的信息。 图4最下边是以十六制显示的数据包的具体内容,这是被截获的数据包在物理媒体上传输时的最终形式,当在协议树中选中某行时,与其对应的十六进制代码同样会被选中,这样
15、就可以很方便地对各种协议的数据包进行分析。 Ethereal提供的图形化用户界面非常友好,管理员可以很方便地查看到每个数据包的详细信息,协议树及其对应的十六进制表示对分析每个数据包的目的很有帮助,综合使用Ethereal和Tcpdump能够基本满足网络管理员在Linux系统上的所有嗅探要示。,Ethereal协议分析系统介绍 Ethereal软件下载与安装手册 Ethereal使用入门 使用Ethereal分析协议数据包 linux下的网络分析Tcpdump的使用,网络数据采集分析工具TcpDump的安装 在linux下tcpdump的安装十分简单,一般由两种安装方式。一种是以rpm包的形式来
16、进行安装。另外一种是以源程序的形式安装。,tcpdump采用命令行方式,它的命令格式为: tcpdump -adeflnNOpqStvx -c 数量 -F 文件名 -i 网络接口 -r 文件名 -s snaplen -T 类型 -w 文件名 表达式 ,(1). tcpdump的选项介绍 -a 将网络地址和广播地址转变成名字;-d 将匹配信息包的代码以人们能够理解的汇编格式给出;-dd 将匹配信息包的代码以c语言程序段的格式给出;-ddd 将匹配信息包的代码以十进制的形式给出;-e 在输出行打印出数据链路层的头部信息;-f 将外部的Internet地址以数字的形式打印出来;-l 使标准输出变为缓
17、冲行形式;-n 不把网络地址转换成名字;-t 在输出的每一行不打印时间戳;-v 输出一个稍微详细的信息,例如在ip包中可以包括ttl和服务类型的信息;-vv 输出详细的报文信息;-c 在收到指定的包的数目后,tcpdump就会停止;-F 从指定的文件中读取表达式,忽略其它的表达式;-i 指定监听的网络接口;-r 从指定的文件中读取包(这些包一般通过-w选项产生);-w 直接将包写入文件中,并不分析和打印出来;-T 将监听到的包直接解释为指定的类型的报文,常见的类型有rpc (远程过程调用)和snmp(简单网络管理协议;),(2). tcpdump的表达式介绍 表达式是一个正则表达式,tcpdu
18、mp利用它作为过滤报文的条件,如果一个报文满足表达式的条件,则这个报文将会被捕获。如果没有给出任何条件,则网络上所有的信息包将会被截获。在表达式中一般如下几种类型的关键字。 第一种是关于类型的关键字,主要包括host,net,port, 例如 host ,指明 是一台主机,net 指明 是一个网络地址,port 23 指明端口号是23。如果没有指定类型,缺省的类型是host. 第二种是确定传输方向的关键字,主要包括src , dst ,dst or src, dst and src ,这些关键字指明了传输的方向。
19、举例说明,src ,指明ip包中源地址是 , dst net 指明目的网络地址是 。如果没有指明方向关键字,则缺省是src or dst关键字。 第三种是协议的关键字,主要包括fddi,ip,arp,rarp,tcp,udp等类型。Fddi指明是在FDDI(分布式光纤数据接口网络)上的特定的网络协议,实际上它是ether的别名,fddi和ether具有类似的源地址和目的地址,所以可以将fddi协议包当作ether的包进行处理和分析。其他的几个关键字就是指明了监听的包的协议内容。如果没有指定任何协议,则tcpdu
20、mp将会监听所有协议的信息包。,除了这三种类型的关键字之外,其他重要的关键字如下:gateway, broadcast,less,greater,还有三种逻辑运算,取非运算是 not ! , 与运算是and,或运算 是or ,;这些关键字可以组合起来构成强大的组合条件来满足人们的需要,下面举几个例子来说明。 A想要截获所有 的主机收到的和发出的所有的数据包: #tcpdump host B想要截获主机 和主机 或的通信,使用命令:(在命令行中适用括号时,一定要 #tcpdump host and ( or ) C如果想要获取主机除了和主机之外所有主机通信的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025 年大学历史学(世界文化史研究)期中测试卷
- 产品延伸活动策划方案(3篇)
- 对抗喷泉活动策划方案(3篇)
- 抽奖活动策划方案主题(3篇)
- 校区转化活动方案策划(3篇)
- 滑溜布活动策划方案(3篇)
- 禁毒沙龙活动策划方案(3篇)
- 莫高窟节日活动方案策划(3篇)
- 妊娠期泌尿系感染患者尿培养操作规范
- 妊娠期急性胰腺炎的病因诊断新方法探讨
- 设备管理培训课件-设备管理的预算管理
- 小学各年级 三年级 探索未来 成为小小梦想家 主题班会精
- 高三化学二轮轮复习示范课 电化学原理及其应用
- 《告别“焦虑”沉着迎考》考试焦虑调节 期中考试心理调适辅导迎考主题班会课件
- 9第九讲 世界文明体系阿拉伯文明
- 2022年新乡职业技术学院单招综合素质试题及答案解析
- 诊疗科目申报表(申请细化诊疗科目时使用)
- LY/T 1558-2017仁用杏优质丰产栽培技术规程
- GB/T 39654-2020品牌评价原则与基础
- GB/T 37459-2019自升式平台升降装置安装要求
- 重庆市专业技术人员继续教育登记卡(2022版)
评论
0/150
提交评论