实验八 分析ICMP协议实验目的

  • 格式:doc
  • 大小:635.50 KB
  • 文档页数:19

实验八 分析ICMP协议

一、实验目的

1. 了解Ethereal的下载安装方法。

2. 掌握Ethereal的简单使用方法,包结果分析方法。

3. 掌握正确使用Ethereal分析ICMP协议的技能。

4. 掌握ping基本命令的使用和ping命令的工作原理。

5. 掌握tracert基本命令的使用和tracert命令的工作原理。

二、 实验环境

1. 运行Windows XP /2003 Server操作系统的PC机一台。

2. 每台PC机具有以太网卡,通过双铰线与局域网相连。

3. 安装winpap下载地址

http://netgroup-serv.polito.it/winpcap/install/Default.htm

4. Ethereal工具(可以从/下载)。

三、 实验步骤

1. 预习与ping命令相关的因特网控制报文协议ICMP相关的内容,通过搜索引擎了解什么是嗅探器。了解嗅探器工具Ethereal的下载、安装和使用方法。

2. 下载安装并 Ethereal;(Ethereal需要用到WinPcap。一些高版本的Ethereal内置了WinPcap的安装文件,在安装Ethereal的时候选择安装一下就可以了,不需要再单独去下载WinPcap。不过如果你有更高版本的WinPcap,也可以自己单独下载安装。)

3. 打开Windows命令提示符窗口,准备输入要运行的ping命令计入图(1)界面; 图1

点击确定进入图(2)界面;

图(2)

4. 启动系统。启动系统后点击“Ethereal”程序组中的“Ethereal”图标,将出现以系统操作界面,如图3 图3 Ethereal系统主界面

点击“Capture/Start”菜单开始抓包。在菜单capture 下点击interfaces, 选取要抓包的网卡,这里选取这个网卡抓取数据包,如下图4:

图4

5. 输入要运行的ping命令及要测试的目标主机的ip地址,等到ping命令的结果完全显示出来后,单击软件中的stop按钮,停止包的抓获;

6. 输入ping指令和郑州大学“学校概况”网页的ip地址,例如图5所示ping

202.196.64.199。

图5

7. 单击软件中的stop按钮,停止包的抓获; 图6

8. 点击“Capture/Start”菜单,在菜单capture 下点击options, 在图7窗口中点击“Capture filter”,出现图8界面,在图4Filter name ,Filter string中均填写ICMP,然后点击“new”按钮,再点击“save”“ok”按钮,返回到图9界面。

图7

图8

图9

9. 重新点击“Start”按钮,然后通过浏览器访问郑州大学“学校概况”网页(ip地址 202.196.64.199), 系统开始俘获网络分组。如图10。

图10

10. 在图界面中,输入cmd命令,进入cmd.exe界面,输入ping指令和郑州大学“学校概况”网页的ip地址,例如图11所示ping 202.196.64.199。

图11

11. 当按“Stop”(停止)按钮时,系统停止俘获分组并将已经俘获的分组信息装载在分析系统中。如图12 图12

12. ICMP协议的分析。

如图13,在Ethereal上部的窗口中,有帧编号(No.)、时间(Time)、源地址(Source)、目的地址(Destination)、协议(Protocol)和信息(Info)等列,各列下方依次排列着俘获的分组。中部的窗口给出选中的某帧的详细内容。下部窗口对应的该协议帧某字段的十六进制数值内容。

查找源是202.196.64.199,目的是本机IP的ICMP数据,例如选择其中第3号帧进行分析。 图13

a) 数据帧说明:

Frame 1(74 bytes on wire,74 bytes captured)

表示所抓得的1674号帧是66字节

b) 以太网数据帧说明:

Ethernet II, src: 00:1f:c6:22:08:66, Dst: 00:1a: a94:08: 76:61

表示源物理地址是00:1f:c6:22:08:66,目的物理地址是00:1a: a94:08:

76:61

c) ICMP数据报文说明:

首先了解一下IP数据包的格式(如图14,图15),然后参考图13中IP数据的详细内容进行说明如下:

ICMP报文种类 类型的值 ICMP报文的类型

差错报告报文 3 终点不可达

4 源点抑制 11 时间超过

12 参数问题

5 改变路由

询问报文 8或0 回送请求或回答

13或14 时间戳请求或回答

图14 图15

Type: 8 (Echo(ping)request) 表示ICMP报文类型值为8,此帧为回送请求帧;Code: 0表示代码为0。Checksum:0X0200[correct]表示检验和为0x0200,正确。Identifer;0x0200表示标示符为0x0200。Sequence number:0x5e00表示序列号为0x5e00。Data (32 bytes) 表示数据部分为32字节。

13. ping命令的基本操作。

1) Ping本机IP

例如本机IP地址为:222.22.66.145。则执行命令Ping 222.22.66.145。如果网卡安装配置没有问题,则应有类似下列显示:

如果在MS-DOS方式下执行此命令显示内容为:Request timed out,则表明网卡安装或配置有问题。将网线断开再次执行此命令,如果显示正常,则说明本机使用的IP地址可能与另一台正在使用的机器IP地址重复了。如果仍然不正常,则表明本机网卡安装或配置有问题,需继续检查相关网络配置。

2)Ping网关IP

假定网关IP为:222.22.66.129,则执行命令Ping 222.22.66.129。在MS-DOS方式下执行此命令,如果显示类似以下信息:

则表明局域网中的网关路由器正在正常运行。反之,则说明网关有问题。

3)Ping远程IP

这一命令可以检测本机能否正常访问Internet。比如本地电信运营商的IP地址为:。在MS-DOS方式下执行命令:如果屏幕显示:

则表明运行正常,能够正常接入互联网。反之,则表明主机文件(windows/host)存在问题

ping命令详解

系统内置的网络测试工具ping

1.Ping命令的语法格式

ping命令看似小小的一个工具,但它带有许多参数,要完全掌握它的使用方法还真不容易,要达到熟练使用则更是难下加难,但不管怎样我们还得来看看它的真面目,首先我们还是从最基本的命令格式入手吧!

ping命令的完整格式如下:

ping [-t] [-a] [-n count] [-l length] [-f] [-i ttl] [-v tos] [-r count] [-s count] [-j -Host

list] | [-k Host-list] [-w timeout] destination-list

从这个命令式中可以看出它的复杂程度,ping命令本身后面都是它的执行参数,现对其参数作一下详细讲解吧!

-t—— 有这个参数时,当你ping一个主机时系统就不停的运行ping这个命令,直到你按下Control-C。

当ping本地主机192.168.1.37时不停的发送数据包直到Control-C结束。发送19个,接收19个包。

-a——解析主机的NETBIOS主机名,如果你想知道你所ping的要机计算机名则要加上这个参数了,一般是在运用ping命令后的第一行就显示出来。

显示百度网站的地址为119.75.213.50 在第一行显示。

-n count——定义用来测试所发出的测试包的个数,缺省值为4。通过这个命令可以自己定义发送的个数,对衡量网络速度很有帮助,比如我想测试发送20个数据包的返回的平均时间为多少,最快时间为多少,最慢时间为多少就可以通过执行带有这个参数的命令获知。

Count的值设置为7,则发送7个包

-l length——定义所发送缓冲区的数据包的大小,在默认的情况下windows的ping发送的数据包大小为32byt,也可以自己定义,但有一个限制,就是最大只能发送65500byt,超过这个数时,对方就很有可能因接收的数据包太大而死机,所以微软公司为了解决这一安全漏洞于是限制了ping的数据包大小。

-f—— 在数据包中发送“不要分段”标志,一般你所发送的数据包都会通过路由分段再发送给对方,加上此参数以后路由就不会再分段处理。

-i ttl—— 指定TTL值在对方的系统里停留的时间,此参数同样是帮助你检查网络运转情况的。

-v tos—— 将“服务类型”字段设置为 “tos” 指定的值。

-r count—— 在“记录路由”字段中记录传出和返回数据包的路由。一般情况下你发送的数据包是通过一个个路由才到达对方的,但到底是经过了哪些路由呢?通过此参数就可以设定你想探测经过的路由的个数,不过限制在了9个,也就是说你只能跟踪到9个路由。

这个ping命令不通但是格式如上。

-s count——指定“count” 指定的跃点数的时间戳,此参数和-r差不多,只是这个参数不记录数据包返回所经过的路由,最多也只记录4个。

-j host-list ——利用“ computer-list” 指定的计算机列表路由数据包。连续计算机可以被中间网关分隔IP 允许的最大数量为 9。

-k host-list ——利用 “computer-list” 指定的计算机列表路由数据包。连续计算机不能被中间网关分隔IP 允许的最大数量为 9。

-w timeout——指定超时间隔,单位为毫秒。

destination-list ——是指要测试的主机名或IP地址

2.Ping命令的应用

(1)、测试网络的通畅

我们知道可以用ping命令来测试一下网络是否通畅,这在局域网的维护中经常用到,方法很简单,只需要在DOS或Windows的开始菜单下的“运行”子项中用ping命令加上所要测试的目标计算机的IP地址或主机名即可(目标计算机要与你所运行ping命令的计算机在同一网络或通过电话线或其它专线方式已连接成一个网络),其它参数可全不加。如要测试台IP地址为196.168.1.21的工作站与服务器是否已连网成功,就可以在服务器上运行:ping -a 196.`68.123.56

即可,如果工作站上TCP/IP协议工作正常,即会以DOS屏幕方式显示如下所示的信息:

Pinging cindy[196.168.1.21] with 32 bytes of data: