用Ethereal分析HTTP数据包.docx

上传人:b****3 文档编号:4007000 上传时间:2022-11-27 格式:DOCX 页数:10 大小:254.88KB
下载 相关 举报
用Ethereal分析HTTP数据包.docx_第1页
第1页 / 共10页
用Ethereal分析HTTP数据包.docx_第2页
第2页 / 共10页
用Ethereal分析HTTP数据包.docx_第3页
第3页 / 共10页
用Ethereal分析HTTP数据包.docx_第4页
第4页 / 共10页
用Ethereal分析HTTP数据包.docx_第5页
第5页 / 共10页
点击查看更多>>
下载资源
资源描述

用Ethereal分析HTTP数据包.docx

《用Ethereal分析HTTP数据包.docx》由会员分享,可在线阅读,更多相关《用Ethereal分析HTTP数据包.docx(10页珍藏版)》请在冰豆网上搜索。

用Ethereal分析HTTP数据包.docx

用Ethereal分析HTTP数据包

用Ethereal分析HTTP数据包

D

(1)一个原语:

一个原语即一条最基本的过滤规则

(2)用“and”、“or”、“not”关系去处运算符,以及括号组合起来的原语。

其中“and”的含义是它所连接的两个原语必须都成立;“or”的含义是它所连接的两个原语只要有一个成立即可;“not”的含义是它后面跟的原语不成立;括号的作用是对关系运算顺序作出规定。

过滤语句使用的举例如下:

1.捕获MAC地址为00:

e0:

fc:

58:

bc:

a3的通信数据包,例如:

Etherhost00:

e0:

2.捕获源IP地址为150.20.10.119的通信数据包,例如:

srchost150.20.10.119

用PC机监听STB的通信数据包时,常常要用到这个过滤条件,以保证只捕获与STB相关的数据包。

3.捕获通过80端口来通信的数据包,使用该端口通信的数据包是基于http协议的,例如:

tcpport80或者为ipprotohttp

以上过滤语句还可以通过and、or、not等连接成复合过滤语句。

例如:

捕获160.128.10.4除了http外的所有通信数据报文

 160.128.10.4andnottcpport80

NameResolution:

名字解析,可将MAC地址、网络地址、端口地址解析为相应的名称。

EnableMACnameresolution

通过该选项可以控制是否让ethereal将数据包中的MAC地址解析为名字。

例如在IPTV验证工作中实际抓包分析时,常常可在协议栏中看到Huawei_58:

00:

63这样的地址,其实真实的MAC地址是:

00:

e0:

fc:

58:

00:

63。

Enablenetworknameresolution

通过该选项可以控制是否让ethereal将数据包中的网络地址解析为网络名称。

Enabletransportnameresolution

通过该选项可以控制是否让ethereal将数据包中的端口地址解析为协议名称。

当编译并安装好Ethereal后,就可以执行“ethereal”命令来启动Ethereal。

在用Ethereal截获数据包之前,应该为其设置相应的过滤规则,可以只捕获感兴趣的数据包。

Ethereal使用与Tcpdump相似的过滤规则,并且可以很方便地存储已经设置好的过滤规则。

要为Ethereal配置过滤规则,首先单击“Edit”选单,然后选择“CaptureFilters...”菜单项,打开“EditCaptureFilterList”对话框(如图1所示)。

因为此时还没有添加任何过滤规则,因而该对话框右侧的列表框是空的。

Interface:

以太网接口混杂模式下捕获分组,没有指定捕获规则,没有指定捕获文件,没有指定实时更新分组,NameResolution全部选择。

 

图1Ethereal过滤器配置对话框

  在Ethereal中添加过滤器时,需要为该过滤器指定名字及规则。

例如,要在主机10.1.197.162和间创建过滤器,可以在“Filtername”编辑框内输入过滤器名字“sohu”,在“Filterstring”编辑框内输入过滤规则“host10.1.197.162and”,然后单击“New”按钮即可,如图2所示。

 

图2为Ethereal添加一个过滤器

  在Ethereal中使用的过滤规则和Tcpdump几乎完全一致,这是因为两者都基于pcap库的缘故。

Ethereal能够同时维护很多个过滤器。

网络管理员可以根据实际需要选用不同的过滤器,这在很多情况下是非常有用的。

例如,一个过滤器可能用于截获两个主机间的数据包,而另一个则可能用于截获ICMP包来诊断网络故障。

  当所有需要的过滤器都创建好后,单击“Sxdye”按钮保存创建的过滤器,然后单击“Close”按钮来关闭“EditCaptureFilterList”对话框。

要将过滤器应用于嗅探过程,需要在截获数据包之前或之后指定过滤器。

要为嗅探过程指定过滤器,并开始截获数据包,可以单击“Capture”选单,选择“Start...”选单项,打开“CaptureOptions”对话框,单击该对话框中的“Filter:

”按钮,然后选择要使用的过滤器,如图3所示。

 

图3为Ethereal指定过滤器

  注意在“CaptureOptions”对话框中,“Updatelistofpacketsinrealtime”复选框被选中了。

这样可以使每个数据包在被截获时就实时显示出来,而不是在嗅探过程结束之后才显示所有截获的数据包。

  在选择了所需要的过滤器后,单击“OK”按钮,整个嗅探过程就开始了。

Ethereal可以实时显示截获的数据包,因此能够帮助网络管理员及时了解网络的运行状况,从而使其对网络性能和流量能有一个比较准确的把握。

3.利用Ping命令抓包

(1)Ping的定义

PING(PacketInternetGrope),因特网包探索器,用于测试网络连接量的程序。

Ping发送一个ICMP回声请求消息给目的地并报告是否收到所希望的ICMP回声应答。

  它是用来检查网络是否通畅或者网络连接速度的命令。

它所利用的原理是这样的:

网络上的机器都有唯一确定的IP地址,我们给目标IP地址发送一个数据包,对方就要返回一个同样大小的数据包,根据返回的数据包我们可以确定目标主机的存在,可以初步判断目标主机的操作系统等。

ping指的是端对端连通,通常用来作为可用性的检查,但是某些病毒木马会强行大量远程执行ping命令抢占你的网络资源,导致系统变慢,网速变慢。

严禁ping入侵作为大多数防火墙的一个基本功能提供给用户进行选择。

通常的情况下你如果不用作服务器或者进行网络测试,可以放心的选中它,保护你的电脑

(2)Ping本机ip

如本机IP地址为:

172.168.200.2。

则执行命令Ping172.168.200.2。

如果网卡安装配置没有问题,则应有类似下列显示:

  Replayfrom172.168.200.2bytes=32time<10ms

  Pingstatisticsfor172.168.200.2

  PacketsSent=4Received=4Lost=00%loss

  Approximateroundtriptimesinmilli-seconds

  Minimum=0msMaxiumu=1msAverage=0ms

  如果在ms-dos方式下执行此命令显示内容为:

Requesttimedout,则表明网卡安装或配置有问题。

将网线断开再次执行此命令,如果显示正常,则说明本机使用的IP地址可能与另一台正在使用的机器IP地址重复了。

如果仍然不正常,则表明本机网卡安装或配置有问题,需继续检查相关网络配置。

(3)Ping网关ip

  假定网关IP为:

172.168.6.1,则执行命令Ping172.168.6.1。

在MS-DOS方式下执行此命令,如果显示类似以下信息:

  Replyfrom172.168.6.1bytes=32time=9msTTL=255

  Pingstatisticsfor172.168.6.1

  PacketsSent=4Received=4Lost=0

  Approximateroundtriptimesinmilli-seconds

  Minimum=1msMaximum=9msAverage=5ms

  则表明局域网中的网关路由器正在正常运行。

反之,则说明网关有问题。

(4)Ping网络地址

单击开始-运行,敲入所要抓取的网络地址如后在进行抓取。

如图4:

图4-键入Ping命令

进行抓取后得到如图5页面:

图5-Ping命令显示结果

4.Ethereal分析数据包

  Ethereal和其它的图形化嗅探器使用基本类似的界面,整个窗口被分成三个部分:

最上面为数据包列表,用来显示截获的每个数据包的总结性信息;中间为协议树,用来显示选定的数据包所属的协议信息;最下边是以十六进制形式表示的数据包内容,用来显示数据包在物理层上传输时的最终形式。

  使用Ethereal可以很方便地对截获的数据包进行分析,包括该数据包的源地址、目的地址、所属协议等。

图4是在Ethereal中对一个HTTP数据包进行分析时的情形。

  在图3最上边的数据包列表中,显示了被截获的数据包的基本信息。

从图中可以看出,当前选中数据包的源地址是10.1.197.162,目的地址为61.135.150.65,该数据包所属的协议是超文本传输协议(HTTP)。

更详细的信息表明该数据包中含有一个HTTP的GET命令,要求下载starrtlog.js文件到客户端的Web浏览器。

 

图6用Ethereal分析数据包内容

  图6中间是协议树,通过协议树可以得到被截获的数据包的更多信息,如主机的MAC地址(EthernetII)、IP地址(InternetProtocol)、TCP端口号(TransmissionControlProtocol),以及HTTP协议的具体内容(HypertextTrnasferProtocol)。

通过扩展协议树中的相应节点,可以得到该数据包中携带的更详尽的信息。

  图6最下边是以十六制显示的数据包的具体内容,这是被截获的数据包在物理媒体上传输时的最终形式,当在协议树中选中某行时,与其对应的十六进制代码同样会被选中,这样就可以很方便地对各种协议的数据包进行分析。

  Ethereal提供的图形化用户界面非常友好,管理员可以很方便地查看到每个数据包的详细信息,协议树及其对应的十六进制表示对分析每个数据包的目的很有帮助,综合使用Ethereal和Tcpdump能够基本满足网络管理员在Linux系统上的所有嗅探要示。

5.用EtherApe查看网络流量

  EtherApe也是一个图形化的网络嗅探器。

与Ehtereal不同,EtherApe通过验证主机与主机之间的链接,图形化地显示网络目前所处的状态。

EtherApe使用不同颜色的连线来表示位于不同主机之间的连接,而连线的粗细则表明主机间数据流量的大小。

这些信息都是实时变化的,因而能够协助管理员随时了解到网络中各部分流量的变化情况。

(1)EtherApe的安装

  EhterApe支持Ethernet、FDDI和TokenRing等多种网络,能够实时地从网络或文件中读取网络流量的变化情况。

此外它还可以将网络流量信息保存下来,以便在之后需要时再显示出来。

在0.8.2为例,讲述如何安装EtherApe(使用的操作系统是RedHat8.0)。

  首先下载最新的源码包并将其解压缩,代码如下:

  #cpetherape-0.8.2.tar.gz/usr/local/src/

  #cd/usr/local/src/

  #tarxzvfetherape-0.8.2.tar.gz

  EtherApe使用的是GNOME这一图形用户接口库。

与Ethereal和Tcpdump一样,它也使用pcap库(libpcap)对网络上传输的数据包进行截获和过滤。

在编译EtherApe之前,应先确定所需的这些库已经安装好,因为这是编译EtherApe时所必需的。

如果这些库已经安装,就可以执行下面的命令来编译并安装EtherApe:

  #cdetherape-0.8.2

  #./configure

  #make

  #makeinstall

(2)用EtherApe分析网络流量

  当编译并安装好EtherApe后,就可以执行“etherape”命令来启动EtherApe。

  当用EtherApe截获在网络上传输的数据包时,也需要先为其指定过滤规则,否则EthreApe将捕获网络中的所有数据包。

单击工具栏上的“Pref.”按钮,打开“Preferences”对话框,在该对话框中的“Capture”属性页中,可以找到用于设置过滤规则的“Capturefilter”下拉框。

由于采用的都是pcap库,因此EtherApe过滤规则的设置与Tcpdump和Ethereal是相同的。

  设置好过滤规则后,单击工具栏上的“Start”按钮,就可以开始对网络中感兴趣的数据包进行嗅探。

EhterApe图形化地显示网络流量,图5是当EtherApe处于Ethernet模式下时的网络流量图。

 

图7EtherApe监测的Ethernet流量图

EtherApe提供了TokenRing、FDDI、Ethernet、IP和TCP五种监听模式。

当处于Ethernet模式下时,EtherApe会截获所有符合过滤规则的以太网数据包,但有时网络管理员可能只对IP数据包感兴趣,这时可以将EtherApe切换到IP模式。

单击“Capture”菜单,选择“Mode”菜单项,然后再选择相应的模式,就可以完成模式之间的切换。

图6是当EhterApe处于IP模式下时的网络流量图。

EtherApe能够以图形的方式显示网络流量。

用户看到的是一个很直观的用于表示网络上各主机间流量大小的图,而不是单个的数据包,因而更容易从整体上把握整个网络的运行状况,在定位网络故障时相对来说也变得更加容易。

EtherApe从本质来讲是一种嗅探器,实际应用中的嗅探器分软、硬两种。

软件嗅探器便宜且易于使用,缺点是往往无法抓取网络上所有的传输数据(比如碎片);硬件嗅探器通常称为协议分析仪,它的优点恰恰是软件嗅探器所欠缺的,但是价格昂贵。

目前主要使用的嗅探器是软件的。

图8EtherApe监测的IP流量图

  EtherApe能够以图形的方式显示网络流量。

用户看到的是一个很直观的用于表示网络上各主机间流量大小的图,而不是单个的数据包,因而更容易从整体上把握整个网络的运行状况,在定位网络故障时相对来说也变得更加容易。

6.实验总结

1.通过本实验是我懂得Ethereal的基本用法,Ethereal的最基本功能是捕获网络包,其使用方法很简单,按如下步骤即可:

(1)选择“Capture”菜单项中的“Option”,这时会弹出一个对话框,如下所示。

这个对话框中的栏目虽然很多,但一般只需配置其中两项。

一项是“CaptureFilter”栏。

在这个栏中,可以输入过滤规则,用于规定Ethereal捕获包的种类(注:

过滤规则的写法将在下一节作专门介绍);如果不输入过滤规则,则Ethereal将捕获所有从网卡发送或收到的包。

另外一项是“Updatelistofpacketsinrealtime”选项,请大家一定要选中这一项,这样可以使Ethereal在捕获包的同时,实时地把捕获的包显示出来。

(2)在完成如上配置后,点击 “Start”按钮,Ethereal便开始捕获包。

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 能源化工

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1