网络监听工具Ethereal使用说明.docx
- 文档编号:24953986
- 上传时间:2023-06-03
- 格式:DOCX
- 页数:17
- 大小:1.32MB
网络监听工具Ethereal使用说明.docx
《网络监听工具Ethereal使用说明.docx》由会员分享,可在线阅读,更多相关《网络监听工具Ethereal使用说明.docx(17页珍藏版)》请在冰豆网上搜索。
网络监听工具Ethereal使用说明
网络监听工具Ethereal使用说明
1.1Ethereal简介
Ethereal是一款免费的网络协议分析程序,支持Unix、Windows。
借助这个程序,你既可以直接从网络上抓取数据进行分析,也可以对由其他嗅探器抓取后保存在硬盘上的数据进行分析。
你能交互式地浏览抓取到的数据包,查看每一个数据包的摘要和详细信息。
Ethereal有多种强大的特征,如支持几乎所有的协议、丰富的过滤语言、易于查看TCP会话经重构后的数据流等。
它的主要特点为:
∙支持Unix系统和Windows系统
∙在Unix系统上,可以从任何接口进行抓包和重放
∙可以显示通过下列软件抓取的包
∙tcpdump
∙NetworkAssociatesSnifferandSnifferPro
∙NetXray
∙Shomiti
∙AIX’siptrace
∙RADCOM&RADCOM’sWAN/LANAnalyzer
∙Lucent/Ascendaccessproducts
∙HP-UX’snettl
∙Toshiba’sISDNrouters
∙ISDN4BSDi4btraceutility
∙MicrosoftNetworkMonitor
∙Sunsnoop
∙将所抓得包保存为以下格式:
▪libpcap(tcpdump)
▪Sunsnoop
▪MicrosoftNetworkMonitor
▪NetworkAssociatesSniffer
∙可以根据不同的标准进行包过滤
∙通过过滤来查找所需要的包
∙根据过滤规则,用不同的颜色来显示不同的包
∙提供了多种分析和统计工具,实现对信息包的分析
图1-1Ethereal抓包后直观图
图1是Ethereal软件抓包后的界面图,我们可以根据需要,对所抓得包进行分析。
另外,由于Ethereal软件的源代码是公开的,可以随意获得,因此,人们可以很容易得将新的协议添加到Ethereal中,比如新的模块,或者直接植入源代码中。
1.2Ethereal支持的网络协议
Ethereal能对很多协议进行解码,它支持几乎所有的协议,如AARP,AFS,AH,AIM,ARP,ASCEND,ATM,AUTO_RP,BGP,BOOTP,BOOTPARAMS,BROWSER,BXXP,CDP,CGMP,CLNP,CLTP,COPS,COTP,DATA,DDP,DDTP,DEC_STP,DIAMETER,DNS,EIGRP,ESIS,ESP,ETH,FDDI,FR,FRAME,FTP,FTP-DATA,GIOP,GRE,GVRP,H1,H261,HCLNFSD,HSRP,HTTP,ICMP,ICMPV6,ICP,ICQ,IGMP,IGRP,ILMI,IMAP,IP,IPCOMP,IPCP,IPP,IPV6,IPX,IPXMSG,IPXRIP,IPXSAP,IRC,ISAKMP,ISIS,ISIS_CSNP,ISIS_HELLO,ISIS_LSP,ISIS_PSNP,ISL,IUA,KERBEROS,L2TP,LANE,LANMAN,LAPB,LAPBETHER,LAPD,LCP,LDAP,LDP,LLC,LPD,M3UA,MAILSLOT,MALFORMED,MAPI,MIP,MOUNT,MP,MPLS,MSPROXY,NBDGM,NBIPX,NBNS,NBP,NBSS,NCP,NETBIOS,NETLOGON,NFS,NLM,NMPI,NNTP,NTP,NULL,OSPF,PIM,POP,PORTMAP,PPP,PPPOED,PPPOES,PPTP,Q2931,Q931,QUAKE,RADIUS,RIP,RIPNG,RLOGIN,RPC,RQUOTA,RSH,RSVP,RTCP,RTMP,RTP,RTSP,RX,SAP,SCTP,SDP,SHORT,SIP,SLL,SMB,SMTP,SMUX,SNA,SNMP,SOCKS,SPX,SRVLOC,SSCOP,STAT,STP,SUAL,SYSLOG,TACACS,TCP,TELNET,TEXT,TFTP,TIME,TNS,TPKT,TR,TRMAC,UDP,V120,VINES,VINES_FRP,VINES_SPP,VLAN,VRRP,VTP,WAP-WSP,WAP-WSP-WTP,WAP-WTLS,WCCP,WHO,WLAN,X.25,X11,XOT,YHOO,YPBIND,YPSERV,YPXFR,ZEBRA等。
在Ethereal主菜单的Tools下有一个“DecodeAs”选项,可以很容易的将获得的数据包转换为相应的协议
1.3Ethereal操作指导
1.3.1Ethereal操作界面
Ethereal软件界面如图1所示,在这个窗口上,整个界面环境分为三个窗口,最上面的窗口是抓包列表窗口,经过Ethereal软件抓包后的数据包都会列在这个窗口中,同时你可以根据抓包序列号,抓包时间、源地址、目标地址、协议等进行包列表的排序,这样你可以很容易的找到你所需要的信息包。
中间的窗口中显示的是抓包列表上所选择的包对应的各层协议说明,其中,协议层次信息以树型的结构进行显示。
最下面的窗口是数据窗口,显示的是上层窗口选中的信息包的具体数据,同时,在中间树型窗口中所选择的某一协议数据域的内容,在数据窗口中会被突出地显示出来。
在整个界面的左下角,有一个“filter”按钮,单击这个按钮会弹出过滤设置对话框。
在这个按钮的右边是一个小文本框,在这里可以填入进行过滤的字符串。
同时这个过滤文本框也会显示当前进行过滤的内容,你也可以通过下拉条选择曾经进行过滤的字符串进行抓包过滤。
在这个文本框右边,是一个“reset”按钮,单击这个按钮将会显示当前的过滤信息。
在整个界面的最右下方,是一个状态栏,在这里将显示的状态例如,软件是否正在进行抓包操作,如果没有在进行抓包,那么它将显示当前读取的文件名,如果你在树型窗口中选择了某个协议,那么这个状态栏中将会显示当前所选择的协议域。
1.3.2Ethereal界面菜单
Ethereal的菜单如图2所示:
图2-1Ethereal界面菜单
菜单中主要有以下几个部分:
File:
这个子菜单下的操作与Windows菜单下File下的操作类似,包括了文件的打开,保存、打印以及系统的退出等等。
不过这里的文件仅仅指的是抓包文件。
Edit:
这个子菜单下所包含的操作有:
查找某一个特定的帧、跳到某个帧、在一个或更多的帧上打上标记、设置首选项、设置过滤、协议剖析允许/不允许等。
在这个菜单下,Windows界面中的一些常用的操作,例如剪切、复制、粘贴等将不再使用。
Capture:
在这个菜单下进行开始抓包和停止抓包的操作。
Display:
此菜单下可以进行的操作有:
修改显示选项、匹配所选择的帧、给不同的帧进行上色、对数据帧进行展开/折叠、在分离的窗口中显示数据包、配置用户定义的解码方式等。
Tools:
在工具菜单下所提供的操作有:
载入插件、跟踪一个TCP流、获得所抓包的概要,进行协议等级统计等等。
Help:
通过help子菜单,可以获得Ethereal软件的About信息以及相应的一些帮助。
对于各个子菜单具体的菜单项,这里不作仔细的说明,在下面的操作部分中将会对其中一些重要的功能作详细的说明。
1.3.3项关操作说明
1.3.3.1抓包
步骤:
1.点击软件界面上Capture->Start键,弹出如图2-3所示的“CaptureOpetion”抓包选项设置对话框
图2-2用Ethereal进行抓包
图2-3CaptureOptions选项设置对话框
2.在弹出的选项设置对话框中进行相应的设置,界面中的按钮,当按下去的时候表示该功能处于有效的状态,凸起的时候则是无效的。
“Interface”栏中指示的是抓包进行所在接口,你只能在一个接口上进行抓包,同时,你只能在Ethereal已经发现的接口上进行抓包。
它有一个下拉菜单,你可以在下拉列表中选择你想要进行抓包的接口。
在“Interface”下面是“Promiscuous”模式选择按钮,当按钮按下去的状态时,表示此时抓包是进行在promiscuous(混杂)模式下,任何流经这台主机的数据包都将被捕获,如果按钮凸起,则只能捕获从主机发送或者发向该主机的数据包。
“Filter”栏可以指定特定的规则进行抓包过滤,以获得你想要的那些包。
同时你也可以单击Ethereal主界面左下角的filter按钮,在弹出的过滤对话框中设置过滤字符串。
详细的操作和过滤字串说明,请参考2.3.3.4“过滤设置”一节。
“File”一栏中可以指定一个特定的文件,用以保存所抓的包。
要注意的是这里不对文件名和格式进行检查,所以在进行保存文件指定的时候一定要小心,以免覆盖其他有用的文件。
“DisplayOptions”栏用于定义抓包过程中界面显示的特性。
其中,“Updatelistofpacketsinarealtime”是Ethereal主界面上是否实时地显示抓包变化的选项,当选择了该项时,Ethereal主界面上将实时地更新抓包列表,若不显示该项,所有的包列表将在抓包过程停止以后一起显示。
“AutomaticStrollinginlivecapture”选项允许用户在抓包过程中能实时地察看新抓的数据包。
“Nameresolution”中有三个选项,其中“EnableMACnameresolution”用于选择Ethereal是否要将MAC地址的前三个字节翻译成IETF所规定的厂商前缀。
“Enablenetworknameresolution”用于控制是否将IP地址解析为DNS域名。
“Enabletransportnameresolution”则用于控制是否将通信端口号转换为协议名称。
此外,界面上还有一个“Capturelimits”的设置项,在这里可以对抓包的数量或过程进行控制。
根据需要进行设置后,单击
系统显示如下(图2-4)抓包过程界面。
图2-4抓包过程界面
3.在抓包过程界面上,有各种协议包的抓包数据统计,单击
1.3.3.2抓包查看
经过抓包后,所有的数据包就在Ethereal的主界面上列出,可以通过界面上的三个窗口查看选定的数据包的具体细节。
选择其中的一个数据包,点击右键,将会弹出图2-5所示的对话框。
对话框上列举了可以对此数据包进行的操作,其中:
FollowTCPStream:
允许用户跟踪一个TCP连结中的所有的TCP数据流,点击该项后,系统出现如图2-6所示的界面,数据包将按照顺序排列,同时以ASCII码的形式显示,你可以按照需要选择不同的显示格式,如EBCDIC、HEXDump、CArrays等。
通过这个功能,你可以详细的查看一个TCP连结的详细内容。
在主菜单的Tools子菜单下也有这个功能。
DecodeAs:
此选项允许用户将数据包根据特定的协议进行解码。
这个选项与主菜单Tools下的“DecodeAs”选项一样。
DisplayFilter:
此项的功能与Ethereal主界面左下角的“Filter”按钮的作用一样,单击此项,将会弹出过滤设置的对话框,如图2-7所示。
关于过滤设置规则请参考2.3.3.4“过滤设置”一节。
Match:
该选项下有很多子项,其中,“Matchselected”用于选择所有的具有某一特性值的数据包,该数据值是在中间树形窗口中所确定的某协议对应的数值。
其他的选项则根据宇、或、非的逻辑关系来过滤相应的数据包。
图2-5抓包的查看
图2-6FollowTCPStream界面
图2-7过滤设置对话框
1.3.3.3抓包文件的保存
要将所抓的包进行保存,你只需简单的单击主菜单下的
在这个对话框中,你可以进行文件夹的新建、文件删除/重命名等操作,但是要注意的是Ethereal在进行文件删除/重命名操作时不对文件的内容和格式做任何检查,所以在进行文件操作时要格外小心,以免影响其他的一些重要的文件。
Ethereal可以将所抓的所有数据包进行保存,也可以只对进行了标记的数据包进行保存,这可以通过点击界面中的“Saveonlypacketscurrentlybeingdisplayed”或者“Saveonlymarkedpackets”按钮来进行。
同时,Ethereal对所要保存的数据包提供了多种保存文件的格式,例如libpcap(tcpdump,Ethereal,etc.)、modifiedlibpcap(tcpdump)、RedHatLinuxlibpcap(tcpdump)、NetworkAssociatesSniffer(DOSbased)、SunSnoop、MicrosoftNetworkMonitor1.x、NetworkAssociatesSniffer(Windowsbased)1.1等。
格式可以从FileType栏进行选择。
图2-8抓包文件保存对话框
在选择好了保存目录、格式和方法后,只需在界面下方的文本框中输入文件名,单击
注:
根据所抓包的性质,一些文件格式也许会不可用。
Ethereal允许将一种文件格式转变为另一种格式,只需读取某一个文件,在将数据包转存为另一种格式即可。
1.3.3.4过滤设置
Ethereal提供了两种过滤设置方式,一种是在抓包以前,通过此设置,整个抓包过程将只抓取用户所需要的特定的数据包;另一种方式是在抓包以后查看抓包时进行。
两者在使用上略有不同。
1.3.3.4.1在抓包前进行过滤设置
在抓包前进行过滤设置,是在图2-3抓包选项设置对话框中进行的。
只需在Filter栏中填入特定的设置语句。
Ethereal使用libpcapfilter语言来进行抓包的过滤设置。
过滤表达式由一系列简单的表达式和连词(and、or、not)组成:
[not]primitive[and|or[not]primitive...]
下面举例说明过滤表达式的用法:
1、抓取一个特定的主机的telnet数据包的过滤设置
tcpport23andhost10.0.0.5
通过这个过滤表达式,可以抓取从主机10.0.0.5发出或发向该主机的所有的telnet数据包。
2、抓取除了来自/发往某主机的telnet数据包的过滤设置
tcpport23andnothost10.0.0.5
在过滤设置字符串中,primitive表达式通常由以下几种形式组成:
1、[src|dst]host
此表达式通过IP地址/主机名来过滤一个特定的主机,通过前缀src或dst选择源/目的主机。
如果不注明src或者dst,则将抓到流向/流出该主机的所有数据包。
例如:
抓取从主机172.18.66.66发出的数据包:
srchost172.18.66.66
2、ether[src|dst]host
此表达式用于过滤以太网上流入/流出特定的主机的数据包,不同的是ehost是以太网地址,为主机的物理地址。
例如:
抓取发往物理地址为00:
04:
76:
42:
24:
80的数据包
etherdsthost00:
04:
76:
42:
24:
80
3、[src|dst]net
此表达式根据网络地址来过滤来自/发往特定的网络的数据包。
例如:
抓取发往/发自网络172.18.0.0的数据包
net172.18.0.0mask255.255.0.0
4、[tcp|udp][src|dst]port
此表达式可以设置过滤来自/发往特定的tcp/udp协议端口的数据包。
例如:
抓取SNMP协议数据包
udpport161
5、less|greater
此表达式用于过滤数据包长度小于等于/大于等于特定长度的数据包。
例如:
抓取数据包长度小于400byte的数据包
less400
6、ip|etherproto
此表达式用于过滤IP层/数据链路层(Ethernet层)上特定的协议数据包。
例如:
抓取IP层上UDP数据报
ipprotoUDP
7、ether|ipbroadcast|multicast
此表达式用于过滤IP/Ethernet的广播包/多播包
8、
此表达式用于创建复杂的过滤表达式,用于选择数据包中特定byte的数据或者某一段数据。
当过滤设置后,整个抓包过程就只会获取特定的数据包。
1.3.3.4.2在查看数据包时进行过滤设置
Ethereal使用两种过滤语言,用在不同的场合,第一种是在进行抓包之前,第二种则是在查看数据包的时候进行,这种情况下,你可以提取所抓的数据包中你所感兴趣的那一部分。
你可以根据不同的分类方法进行过滤:
1、协议;2、根据某字段的有无;3、根据相应字段的值;4、字段值之间的比较。
有三种方式可以在查看数据包时进行过滤设置。
第一种方法是在主界面左下角的filter文本框中直接填入过滤的表达式,第二种是单击主界面左下角的filter按钮,第三种是在数据包列表窗口中右键选择“Displayfilters”。
其中第二、第三种方法都将弹出过滤设置的对话框,如图2-7所示。
第一种方法,你只需要在filter文本框中填入相应的表达式即可,例如要查看数据包列表中所有的netbios协议的数据包,只需填入“netbios”再按回车即可,如图2-9所示:
图2-9查看协议为netbios的数据包
又如,要查询其中包含主机地址为172.18.66.66的数据包(无论是源Addr或者目的Addr),只需在文本框中填入:
ip.addr==172.18.66.66即可。
下面具体介绍过滤表达式。
Ethereal提供了一种简单的过滤设置语言,但是通过这个语言,你可以构造复杂的表达式,以选择你所需要的特定的数据包。
1、字段值的比较
英文表达式
符号表达式
举例
eq
==
ip.addr==172.18.66.66
ne
!
=
ip.addr!
=172.18.66.66
gt
>
frame.pkt_len>10
lt
<
frame.pkt_len<128
ge
>=
frame.pkt_lenge0x100
le
<=
frame.pkt_len<=0x20
此外,各协议字段的数值是有相应的类别的,下表说明了字段中使用的值的类别:
类型
举例
无符号整型(8位、16位、24位、32位)
你可以用十进制、八进制或者十六进制表达,以下的表达式所表示的内容是一样的:
ip.lenle1500
ip.lenle02734
ip.lenle0x436
有符号整型(8位、16位、24位、32位)
布尔表达式(Boolean)
只有当表达式的值为true时,该布尔表达式字段才会在相应的协议解码表达式中显示。
例如,协议解码中显示tcp.flags.syn,则表示该字段的值为true,同时,SYN字段显示在TCP的字段头中。
因此,过滤表达式tcp.flags.syn选择了那些标志位存在,且TCP字段头中包含SYN标志的数据包。
类似的,如果要选择源路由令牌环数据包,只需要输入表达式:
tr.sr
以太网地址(6字节)
IPv4地址
IPv6地址
IPX网络号
字符串(String/Text)
双精度浮点数
2、联合表达式
Ethereal允许通过逻辑符号将表达式进行连接,以组成更复杂的表达式。
使用方法见下表:
英文表达式
符号表达式
举例
and
&&
ip.addr==172.18.66.66andtcp.flags.fin
or
||
ip.addr==172.18.66.66orip.addr==172.18.65.178
not
!
notllc
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 网络 监听 工具 Ethereal 使用说明