《计算机网络》实验指导书
徐州工程学院信电工程学院
通信与网络教研室编
实验1-1预备实验(Ethereal工具的使用)
Ethereal 是当前较为流行的一种计算机网络调试、数据包嗅探和网络协议分析软件。该软件使用libpcap库或winpcap库从主机网络接口中捕获数据包。Ethereal具有设计完美的GUI 和众多分类信息及过滤选项。用户通过Ethereal,同时将网卡插入混合模式,可以查看到网络中发送的所有通信流量并捕获到所有的数据包。
一、下载安装Ethereal
从网站上可以下载Ethereal软件的最新版本,新版本Ethereal 已经整合winpcap,下载Ethereal即可完成安装。
二、Ethereal的使用
1.执行安装目录下的ethereal.exe文件,选择菜单Capature->Options,打开选项配置对话框,如图1所示。对以下选项进行配置。
图1:Option配置窗口
(1)Interface:指定在哪个接口(网卡)上抓包。一般情况下都是单网卡,所以使用缺省的就可以了。
(2)Limit each packet:限制每个包的大小,缺省情况不限制。
(3)Capture packets in promiscuous mode:是否使用混杂模式。如果选中,抓取所有的数据包。如果只需要监听本机收到或者发出的包,这个选项不选。
(4)Capture Filter:过滤器。只捕获满足过滤规则的分组,例如,捕捉主机202.14.26.53和www服务器之间的通信(主机202.14.26.53是自身),capture filter 的filter string设置为:host 202.14.26.53 and
(5)Capture File:可以指定将捕获到的分组直接保存在一个文件里,而不是存于内存中,在这里输入文件名称。如果选择Using ring buffer(使用环行缓冲区),分组可以被写入多个文件,当每个文件写满或者在指定秒数的时间后交换文件。这些控制对捕获较大较长的跟踪记录是很重要的。
(6)Display options(显示选项)在网络活动量很高的时候,要想同步显示是很困难的。大家可以选择观察实时更新分组,通过让显示屏自动滚动到最后捕获的分组。
(7)Capture limits(捕获限制)可以使用Stop按钮来手动停止跟踪。也可以使用这些选项来要求在捕获一定数量的分组、跟踪记录达到一定的大小或在一个特定的时间后停止跟踪。
(8)Name resolution(名字解释)可以把分组中不同的数字翻译成人们易读的名字。如启用MAC地址转换,Ethereal会将一部分地址转化为厂商的名称。如启用网络地址转换,Ethereal会试图将一个网络地址(如:201.100.0.1)转化成一个主机名(如:.)2.配置以后,点击图1窗口中的Start按钮,开始跟踪捕获数据包。如图2所示。
图2:跟踪捕获窗口
3.点击图2中的Stop按钮,停止捕获数据包,在Ethereal主窗口中显示已捕获的数据包,如图3所示。
图3:捕获结果分析窗口
4.用Ethereal分析数据包
图3所示的Ethereal数据包分析窗口被分成三个部分:
(1)列表框:最上面为数据包列表框,用来显示截获的每个数据包的信息,在数据包列表中选中一个分组后,下面的两个子窗口中会显示出所选分组的细节。
(2)协议框:中间为协议框,用来显示选定的数据包的协议信息。如主机的MAC地址(Ethernet II)、IP地址(Internet Protocol)、TCP端口号(Transmission Control Protocol),以及HTTP 协议的具体内容(Hypertext Trnasfer Protocol)。通过扩展协议树中的相应节点,可以得到该数据包中携带的更详尽的信息。
(3)原始框:最下边是以十六进制形式表示的数据包原始框内容,用来显示数据包在物理层上传输时的最终形式。当在协议树中选中某行时,与其对应的十六进制代码同样会被选中,这样就可以很方便地对各种协议的数据包进行分析。
5.Ethereal包过滤器
在抓包完成以后,显示过滤器可以用来找到你感兴趣的包。
例如,如果只想查看使用TCP协议的包,在Ethereal窗口的左下角的Filter中输入
TCP,然后回车,Ethereal就会只显示TCP协议的包,如图4所示。
图4:过滤TCP包
例子:
(1)捕获IP地址是192.168.2.10 的主机所发送的所有的HTTP报文,对应的显示Filter (过滤器)可设为:ip.src eq 192.168.2.10 and http。
(2)捕获IP地址是192.168.2.10 的主机所接收的所有的HTTP报文,对应的显示Filter (过滤器)可设为:ip.dst eq 192.168.2.10 and http。
(3)捕获IP地址是192.168.2.10 的主机所发送和接收的所有的HTTP报文,对应的显示Filter (过滤器)可设为ip addr=192.168.2.10 and http
(4)捕捉主机192.168.2.10发出或接受的所有FTP包(即src or dst port=21),设置为:tcp port 21 and host 192.168.2.10
(5)捕捉局域网上主机192.168.2.10发出或接受的所有ARP包,设置为:arp and host 192.168.2.10
注意:当你输入的表达式不符合规范时,Filter背景将显示红色
说明:本实验中用到的示例文件在traces文件夹中。
实验1-2链路层协议
一、实验目的
1.了解MAC地址和地址解析协议ARP
2.熟悉以太网MAC帧结构
3.了解以太网集线器和交换机转发以太网帧的差异
二、实验内容
1.地址解析协议ARP
(1)打开文件Traces\5_1_MACAddresses\arp.cap进行分组分析。
Arp.cap里分组1和分组2是PING的结果。注意分组1和分组2中的源地址和目的地址。分组1是从00:06:5B:E3:4D:1D发送到00:07:E9:53:87:D9。分组2是向相反的方向发送的。
随着ARP高速缓存项的删除,在分组3中看到主机A被迫发出ARP请求。ARP请求发送到广播地址ff:ff:ff:ff:ff。主机B监听到广播请求,并在分组4中应答。这个应答会重新增加到高速缓存,并且允许主机A在分组5中发送ping请求。
发送ping 192.168.0.100。结果分组在分组7和8中显示。在分组7之前,不需要ARP 交换,因为ARP高速缓存再一次包含了192.168.0.100项。
(2)在主机命令提示符窗口执行命令arp -a来显示主机ARP高速缓存里的内容。
(3)用Ethereal捕捉ping数据包
执行命令ping –n 8 192.168.0.100。这个命令发送8个小的请求报文给主机192.168.0.100,并等待主机B应答。