实验三 网络层协议分析cfy1教材Word下载.docx
《实验三 网络层协议分析cfy1教材Word下载.docx》由会员分享,可在线阅读,更多相关《实验三 网络层协议分析cfy1教材Word下载.docx(10页珍藏版)》请在冰豆网上搜索。
2.实验目的
(1)全面掌握网络层协议IP、ICMP的协议规范
(2)通过Ping的参数设定,产生基于IP的ICMP报文,应用Ethereal软件进行分析
(3)分析IP的报文结构和IP分片的执行过程
(5)分析ICMP回显请求和回显应答的报文结构和执行过程
3.实验内容
(1)ICMP协议分析实验
(2)IP协议分析实验
(3)IP数据报分片实验
4.预习内容
(1)写出ping和tracert命令的格式和主要参数意义。
1)ping命令格式:
ping[-t][-a][-ncount][-llength][-f][-ittl][-vtos][-rcount][-scount][-j-Hostlist]|[-kHost-list][-wtimeout]destination-list
ping命令参数:
-tping指定的计算机直到中断。
ctrl+c停止
-a将地址解析为计算机名。
-ncount发送count指定的echo数据包数。
默认值为4。
-llength发送包含由length指定的数据量的echo数据包。
-f在数据包中发送“不要分段”标志。
数据包就不会被路由上的网关分段。
-ittl将“生存时间”字段设置为ttl指定的值。
-vtos将“服务类型”字段设置为tos指定的值。
-rcount在“记录路由”字段中记录传出和返回数据包的路由;
-scount指定count指定的跃点数的时间戳。
-jcomputer-list利用computer-list指定的计算机列表路由数据包。
-kcomputer-list利用computer-list指定的计算机列表路由数据包。
-wtimeout指定超时间隔,单位为毫秒。
destination-list指定要ping的远程计算机。
2)tracert命令格式:
tracert[-d][-hmaximum_hops][-jcomputer-list][-wtimeout]target_name
-d指定不将地址解析为计算机名。
-hmaximum_hops指定搜索目标的最大跃点数。
-jcomputer-list指定沿computer-list的稀疏源路由。
-wtimeout每次应答等待timeout指定的微秒数。
target_name目标计算机的名称。
(2)判断一下ping命令中会出现哪些ICMP报文类型。
在ping命令中,可能会出现的ICMP报文类型有一下几种:
目的站不可达;
数据包超时;
数据包参数错误;
回答请求;
回答应答;
地址掩码请求;
地址掩码应答;
路由器恳求;
路由器通告;
时戳请求;
时戳应答;
源战抑制;
重定向。
(3)在IP报文封装中,ICMP的协议号是1。
(4)请画出IP报文的格式,并对相应字段做出简要说明。
03478151631
版本
首部长度
服务类型
总长度
标识
标志
片偏移量
源IP地址
目的IP地址
IP选项
填充
数据
版本:
用于表示IP协议的版本;
总长度:
描述了整个数据包的长度;
服务类型:
规定了对数据的处理方式;
标识:
用来表示主机所发送的每一条数据;
标志和片偏移量:
对数据包的分片和重组进行控制;
源IP地址和目的IP地址:
表示数据包最初发送方和最终接收方的IP地址;
IP选项:
主要用于额外的控制和测试。
填充:
作用是保证数据报首部的长度4字节对齐,如果IP选项的长度是4字节的整数倍,则要在其后面添加若干比特的0。
(5)简要说明IP报文的分片过程。
IP分片和完整IP报文差不多拥有相同的IP头,ID域对于每个分片都是一致的,这样才能在重新组装的时候识别出来自同一个IP报文的分片。
在IP头里面,16位识别号唯一记录了一个IP包的ID,具有同一个ID的IP分片将会重新组装;
而13位片偏移则记录了某IP片相对整个包的位置;
而这两个表中间的3位标志则标志着该分片后面是否还有新的分片。
这三个标志就组成了IP分片的所有信息,接受方就可以利用这些信息对IP数据进行重新组织。
5.实验过程及结果记录
任务1ICMP协议分析实验
(1)分别在PC1和PC2上运行Ethereal,开始截获报文,为了只截获和实验内容有关的报文,将Ethereal的CaptrueFilter设置为“NoBroadcastandnoMulticast”;
在PC1上,以PC2为目标主机,在命令行窗口执行Ping命令;
请写出执行的命令:
___ping10.21.1.159_____
(2)停止截获报文,粘贴相关截图,分析截获的结果,回答下列问题:
①截图:
②您截获到几个ICMP报文?
分别属于哪种类型?
截获到八个ICMP报文,他们分别属于
8回送请求和
0回送应答类型。
③分析截获的ICMP报文,按照表2.3中要求的字段值填入。
表2.3ICMP报文分析
报文号
源IP
目标IP
ICMP报文格式
类型
代码
序列号
83
10.21.1.82
10.21.1.159
8
0x0200
84
85
86
87
88
89
90
④分析在上表中哪个字段保证了回送请求报文和回送应答报文的一一对应,仔细体会Ping命令的作用。
序列号字段保证了回送请求报文和回送应答报文的一一对应;
同时也让我们认识到ping命令的作用:
它是用来检测网络的连通情况和分析网络速度,Ping本网网关或本网IP地址,这样的是为了检查硬件设备是否有问题,也可以检查本机与本地网络连接是否正常;
Ping远程IP地址,这主要是检查本网或本机与外部的连接是否正常。
(3)使用ICMPechorequest报文时,数据区填充的内容由具体实现指定。
在Windows操作系统下尝试ping命令,请截图看看Windows给数据区填充的内容是什么?
默认的26个字母顺序填充
(3)在PC1上运行Ethereal开始截获报文;
在PC1上执行Tracert命令,向一个本网络中不存在的主机发送数据报;
停止截获报文,将截获的结果截图,分析截获的报文,回答下列问题:
①结果截图:
②截获了报文中哪几种ICMP报文?
其类型码和代码各为多少?
截获了ICMP的回送请求报文,其类型码和代码各为:
8,0
任务2IP协议分析实验
(1)使用Ping命令在两台计算机之间发送数据报,用Ethereal截获数据报,分析IP数据报的格式,按要求回答问题
任取一个数据报,分析IP数据报头的格式,完成表2.5;
表2.5IP协议报文分析
字段
报文信息
说明
4
表示IP协议的版本
头长
20bytes
报文首部长度为20bytes
0x00
规定了对数据包的处理格式
60
描述了整个数据报的长度
标识主机所发的每一个数据报
标志数据报分片以便进行控制
片偏移
与标识标志一起对分片重组进行控制
生存周期
限制在网络中存活时间,防止无休止的循环投递
协议
ICMP
传输层协议类型
校验和
用于保证数据报首部在传输过程中的完整性
源地址
发送端主机IP地址
目的地址
接收端主机IP地址
(2)查看该数据报的源IP地址和目的IP地址,他们分别是哪类地址?
体会IP地址的编址方法。
都是A类地址。
IP地址空间范围从0.0.0.0~255.255.255.255,这些地址被分为5类,常见的地址是A、B、C类。
A类1.0.0.0到126.0.0.00.0.0.0和127.0.0.0保留
B类128.1.0.0到191.254.0.0128.0.0.0和191.255.0.0保留
C类192.0.1.0到223.255.254.0192.0.0.0和223.255.255.0保留
D类224.0.0.0到239.255.255.255用于多点广播
E类240.0.0.0到255.255.255.254保留255.255.255.255用于广播
任务3IP数据报分片实验
在PC1、PC2两台计算机上运行Ethereal,为了只截获和实验有关的数据报,设置Ethereal的截获条件为对方主机的IP地址,开始截获报文;
在PC1上执行如下Ping命令,向主机PC2发送4500B的数据报文:
Ping–l4500–n2PC2的IP地址
停止截获报文,分析截获的报文,回答下列问题:
1以太网的MTU是
。
②对截获的报文分析,将属于同一ICMP请求报文的分片找出来,主机PC1向主机PC2发送的ICMP请求报文分成了4分片。
③若要让主机PC1向主机PC2发送的数据分为3个分片,则Ping命令中的报文长度应为多大?
为什么?
长度2953---4432bytes都会分为3个分片。
因为MTU=1480,加上数据报首部,3片分片最大为4432bytes,最小为2953bytes。
④将第二个ICMP请求报文的分片信息填入表:
表2.6ICMP请求报文分片信息
分片序号
(Identification)
标志(Flag)
(FragmentOffset)
数据长度
29
0x02
1480bytes
30
1480
31
2960
32
4440
68bytes