实验一:Ethereal使用入门实验讲义

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验一:Ethereal使用入门

一、实验目的

熟悉分组嗅探器Ethereal实验环境,学习使用Ethereal捕获数据的方法。

二、实验原理

学生对网络协议的理解通常通过以下方法能够得到极大的深化:观察它们的工作过程和使用它们,即观察两个协议实体之间交换的报文序列,钻研协议操作的细节,使协议执行某些操作,观察这些动作及其后果,这能够在仿真环境下或在如因特网这样的真实网络环境下完成。在Ethereal实验中,我们将采用后一种方法,使用桌面上的计算机在各种情况下运行网络应用程序,在计算机上观察网络协议与在因特网别处执行的协议实体进行交互和交换报文的情况。因此,你与你的计算机将是这些实际实验的组成部分,在实际动手实验中进行观察学习。

观察在执行协议的实体之间交换的报文的基本工具被称为分组嗅探器(packet sniffer)。顾名思义,一个分组嗅探器被动地拷贝(嗅探)由你的计算机发送和接收的报文,它也能存储并显示出这些被俘获报文的各个协议字段的内容。一个分组嗅探器本身是被动的,它观察运行在你计算机上的应用程序和协议收发的报文,但它自己从不发送任何分组。同样,接收到的分组也不会显式地标注是给分组嗅探器的。实际上,一个分组嗅探器收到的是运行在你机器上应用程序和协议收发的分组的备份。

图1显示了一个分组嗅探器的结构。图1的右边是正常的运行在你的计算机上的协议和应用程序(比如FTP client)。在图中虚线矩形中的分组嗅探器是在你计算机中额外安装的软件,由两部分组成:一部分是分组捕获库(packet capture library),一部分是分组解析器(packet analyzer)。分组获取库获得了从你主机发出或接收的每一个链路层数据帧的拷贝,更高层协议(HTTP、FTP、TCP、UDP、DNS、IP)传输的信息最终都被封装在链路层帧里,通过物理介质传送出去(如网线)。在图1中,假定物理介质为以太网,则上层协议数据被封装在以太网帧中。因而抓取了所有的链路层帧将使我们可以获取机器上的协议和应用程序收发的所有数据。

分组嗅探器的第二个部分是分组解析器(packet analyzer)。它将显示在一个协议信息包中的所有内容。为了做到这一点,分组解析器必须“理解”被协议交换的所有信息的结构。比如:假设我们想要显示HTTP协议所传递的信息的各个字段的内容,

分组解析器理解以太网的帧格式,因此能从中截取IP分组;它也能理解IP分组的格式,因此从中截取TCP报文段;它能理解TCP报文段的格式,因此从中截取HTTP数据包。最后,它理解HTTP数据包的格式,知道HTTP信息的前几个字节将包含字符串“GET”、“POST”或“HEAD”。

图1 分组嗅探器结构

我们将使用Ethereal分组嗅探器[/]来做实验,用它来显示协议栈不同层次的协议收发的信息内容。(从技术角度上讲,Ethereal是你计算机上一个使用分组获取库的分组解析器。)Ethereal是一个免费的网络协议分析器,可以运行在Windows、Linux/Unix、Mac计算机上。它是一个理想的分组解析器——它稳定,有较大的用户基础和良好的文档支持,包括用户指南(参见/docs/ user-guide)、手册页(参见/ethereal.1.html)和一个详细的FAQ (Frequently Asked Questions,“经常问到的问题”),它有丰富的功能,能够分析500多种协议,拥有设计良好的用户界面,它除了工作在点对点协议(如PPP)上之外,还可以工作在使用以太网连入互联网的计算机上。Ethereal的名字就来源于以太网Ethernet协议。

三、实验步骤

1.获取Ethereal

为了运行Ethereal,你需要有一台支持Ethereal和libpcap分组获取库的计算机。如果这个libpcap软件未被安装到你的操作系统中,为了使用Ethereal你需要安装它。参见/download.html中给出的软件支持的操作系统列表和下载网址。

下载并安装Ethereal和libpcap软件:

●如果需要,则下载安装libpcap软件。在Ethereal下载页中提供了libpcap软件的

链接。对于Windows主机而言,libpcap被称为WinPCap,在

http://winpcap.polito.it/可以找到它。参见http://winpcap.polito.it/上的FAQ

question #2来决定你的机器上是否已被安装WinPCap。

●到/下载并安装Ethereal

●下载Ethereal用户指南。

Ethereal FAQ中有很多有帮助的建议和有趣的信息,如果在安装运行Ethereal过程中遇到问题它们可能很有用。

2.运行Ethereal

当你运行Ethereal,Ethereal的图形用户界面将被显示(如图2所示)。初始状态,在各个窗口都没有数据显示。Ethereal界面有五个主要部分(捕获到数据后可以看到):

图2:Ethereal用户图形界面

●命令菜单(command menus)是位于窗口上部的标准下拉菜单。我们现在感兴

趣的是“文件”(File)、“捕获”(Capture)子菜单。“文件”菜单可以保存

被捕获的分组数据或打开一个包含过去捕获的分组数据的文件,以及退出

Ethereal。“捕获”菜单可以开始分组捕获。

●分组列表窗口(packet-listing window)显示了为每一个被捕获的分组生

成的一行总结,包括分组号(由Ethereal分配,而并不是包含在协议头部的

分组号)、分组捕获的时间、分组的源地址和目的地址、协议类型以及包含

在分组中与协议相关的信息。可以通过单击列名来使分组列表按某一列数据

排序。协议类型字段列出的是发送或接收该分组的最高层协议,也就是说列

出的是这分组的源协议或最终协议。

●分组头部详细信息窗口(packet-header details window)提供了在分组列表

窗口选择的分组(高亮显示)的详细信息。(要在分组列表窗口选择一个分组,

将鼠标放在窗口内的该分组的一行总结上,左键单击)。显示的详细信息包

括:封装该分组的以太网帧和IP数据报的信息。可以通过点击分组头部详细

信息窗口以太网帧或IP数据报左边的向右箭头或向下箭头来扩展或最小化被

显示的以太网层和IP层的详细信息的数量。如果该分组是通过TCP或UDP携

带传送的,TCP或UDP协议的细节也可以被显示,同样也可以被扩展或最小

化。最后,发送或接收分组的最高层的协议细节也被提供。

●分组内容窗口(packet-contents window)显示被捕获帧的全部内容(以ASCII

码和十六进制格式显示)。

●在Ethereal用户窗口界面的上方是分组显示过滤区域(packet display filter

field),可以在此窗口输入协议名或其他信息以过滤在分组列表窗口显示的

信息(从而过滤分组头部详细信息窗口和分组内容窗口中的信息)。在下面

的例子中,我们将利用分组显示过滤器区域让Ethereal将所有与HTTP信息无

关的分组隐藏起来

3.Ethereal试运行

学习使用任何一种软件最好的办法是试着使用它。试着进行以下操作:

1)启动你喜爱的浏览器,显示你选择的主页

2)启动Ethereal软件,一开始将看到一个与图2相似的窗口,当然由于Ethereal还

没有开始捕获分组,在分组列表、分组头部或分组内容窗口没有显示任何分

组数据

3)选择“Capture”下拉菜单,选择“Options”,“Ethereal Capture Options”

窗口将显示出来,如图3所示。选择“OK”,开始分组捕获

相关文档
最新文档