实验五IP协议和ICMP协议_第1页
实验五IP协议和ICMP协议_第2页
实验五IP协议和ICMP协议_第3页
实验五IP协议和ICMP协议_第4页
实验五IP协议和ICMP协议_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、实验五 IP协议和ICMP协议【实验目的】1. 掌握IP数据报的报文格式2. 掌握IP校验和计算方法3. 掌握子网掩码和路由转发4. 理解特殊IP地址的含义5. 理解IP分片过程6. 掌握ICMP协议的报文格式7. 理解不同类型ICMP报文的具体意义8. 了解常见的网络故障【实验学时】建议2学时一、IP协议【实验环境配置】采用网络结构路由器A【实验原理】一、 IP报文格式IP数据报是由IP首部加数据组成的。IP首部的最大长度不超过60字节。 IP数据报文格式如下图所示:4位版本4位首部长度8位服务类型16位总长度(字节数)16位标识3位标志13位片偏移8位生存时间8位协议类型16位首部检验和3

2、2位源IP地址32位目的IP地址选项(如果有)数据二、 IP分片 链路层具有最大传输单元(MTU)这个特性,它限制了数据帧的最大长度。不同的网络类型都有一个上限值。以太网通常是1500字节。 如果IP层有数据包要传输,而数据包的长度超过了MTU,那么IP层就要对数据包进行分片操作。使每一片长度都小于MTU。 IP首部中“16位标识”、“3位标志”和“13位片偏移”包含了分片和重组所需的信息。另外,当数据被分片后,每个片的“16位总长度” 值要改为该片的长度值。三、 IP路由表 大部分网络层设备都存储着一张记录路由信息的表格,称为路由表。它由许多条项目组成。网络层设备收到数据报后,根据其目的IP

3、地址查找路由表确定数据报传输的最佳路径(下一跳)。然后利用网络层的协议重新封装数据报,利用下层提供的服务把数据报转发出去。 路由表的项目一般含有五个基本字段:目的地址、网络掩码、下一跳地址、接口、度量。路由表按如下顺序匹配: l 直接交付:路由表表项的“目的地址”字段是交付主机的本网络地址。l 特定主机交付:路由表表项的“目的地址”字段是某台特定主机的IP地址。l 特定网络交付:路由表表项的“目的地址”字段是另一个网络的地址。l 默认交付:路由表表项的“目的地址”字段是一个默认路由器(默认网关)。四、 路由选择过程 路由选择模块从IP处理模块接收到IP分组后,使用该分组的目的IP地址同路由表中

4、的每一个项目按特定的顺序(按照前面介绍的“路由表匹配顺序”)查找匹配项,当找到第一个匹配项后就不再继续寻找了,这样就完成了路由选择过程。 匹配路由表项的方法是将IP地址与路由表中的一个项目的“子网掩码”进行按位“与”操作,然后判断运算结果是否等于该项目的“目的地址”,如果等于,则匹配成功,否则,匹配失败。路由选择模块的工作过程:【实验步骤】练习一:编辑并发送IP数据报1. 进入仿真模式,主机B在命令行下运行“arp -d”命令,清空ARP高速缓存表,2. 主机B发出一个Ping应用的数据包,其中: 源IP地址:主机B的IP地址(172.16.1.2)。目的IP地址:主机E的IP地址(172.1

5、6.0.2)。生存时间(TTL):128。3. 设置过滤条件(提取ICMP协议),开始捕获数据。 3. 逐步观察数据包的传递过程。主机B: 请求交换机:请求路由器:请求集线器:请求主机E:做出应答:集线器:做出应答路由器:作出应答交换机:作出应答最后主机B得到回应,一个ICMP数据报发送成功4. 停止捕获数据,在捕获到的数据中查找主机B所发送的数据包,并回答以下问题: 第1步中创建出的数据包,由主机B发出,经过路由器A到达主机E后,包数据是否发生变化?若发生变化,记录变化的字段,并简述发生变化的原因。 发生了变化,变化的字段是ICMP类型字段,因为发送包的时候,ICMP数据报是处于请求状态,类

6、型字段为0x8,而得到目的主机的回应后,ICMP类型字段变为0x0.5. 将第1步中创建的数据包的“生存时间”设置为1,发送。捕获失败:6. 重新捕获数据,逐步观察数据包的传递过程。 7. 停止捕获数据,在捕获到的数据中查找主机B所发送的数据包,并回答以下问题: 主机E是否能捕获到主机B所发送的数据包?简述产生这种现象的原因。不能,因为在生存时间内,数据报不能达到主机B,TTL=1,但是主机B和主机E中间还存在路由器和集线器。练习二:特殊的IP地址1. 直接广播地址。 (1)设置过滤条件(提取IP协议,捕获172.16.1.2接收和发送的所有IP数据包,设置地址过滤条件如下:permit ip

7、 host 172.16.1.2 any和permit ip any host 172.16.1.2)。(2)编辑IP数据报1,其中: 源IP地址:B的IP地址。目的IP地址:172.16.1.255。发送数据报。捕获数据,逐步观察数据包的传递。B发送请求给交换机;交换机发送请求给C:交换机发送请求给D;(3)编辑IP数据报2,其中:源IP地址:B的IP地址。目的IP地址:172.16.0.255。发送数据报。捕获数据,逐步观察数据包的传递。记录实验结果: 主机号 收到IP数据报1 主机C、D收到IP数据报2 B结合实验结果,简述直接广播地址的作用。 广播地址可以用于对某一线路内所有主机发送请

8、求,在在未知发送线路的情况下,利用广播地址发送广播接收回应,从而产生新的ARP表,这样在下次发送数据时候,路由器就可以根据ARP缓存表里面的地址映射来获得线路。2. 受限广播地址。(1) 设置过滤条件(提取IP协议,捕获172.16.1.2接收和发送的所有IP数据包,设置地址过滤条件如下:permit ip host 172.16.1.2 any和permit ip any host 172.16.1.2)。(2)编辑IP数据报,其中: 源IP地址:B的IP地址。目的IP地址:255. 255. 255.255。发送数据报。捕获数据,逐步观察数据包的传递。交换机请求路由:交换机请求C:交换机请

9、求D:路由器直接回应交换机,而没有把请求发送给E、F记录实验结果: 主机号 收到主机A发送的IP数据报C 、D未收到主机A发送的IP数据报E 、F结合实验结果,简述受限广播地址的作用。受限广播地址可以避免开销过大,可以使某一特定的网段接收消息3. 环回地址。 (1)设置过滤条件(提取IP协议,permit ip any any)。(2)主机E ping 127.0.0.1。(3)停止捕获数据。 主机F是否收到主机E发送的目的地址为127.0.0.1的IP数据报?为什么? 没有收到,因为主机F不在这个网段练习三:IP数据报分片1. 设置过滤条件(提取ICMP协议)。 2. 在主机B上,发出一个P

10、ing应用的数据包给主机E(目标IP地址为172.16.0.2),ICMP报文大小设为2492(即除ICMP首部以外的数据大小)。 3. 停止捕获数据。将E收到的IP的报文分片信息填入下表:(分片数不一定为3)字段名称分片序号1分片序号2分片序号3ID字段值0x40x4More fragments字段值0x10x0Fragment offset字段值0x00x5c8传输的数据量15001040分析表格内容,理解分片的过程。ID字段0x4代表两个分片是属于同一个数据报;MF位:分片1为0x1,代表后面还有分片,分片2为0x0说明后面没有了分片,说明原数据报分成了两个分片;FO:分片1为0x0表示

11、偏移量为0,说说明分片1是第一个分片,分片2为0x5c8,说明它的偏移量为1480(也就是第一个分片的数据部分长度),由于只分了两个分片,所以分片2就是第二个分片也就是最后一个分片。传输的数据量:分片1为1500,实际数据部分的长度为1480(去掉首部固定20字节的长度),分片2为1040,实际数据部分长度为1020(去除首部的固定长度20字节),所以数据长度为:1480+1020=2050.练习四:子网掩码和路由转发1. B、C、D主机取消网关,清除ARP缓存。 B C D取消网关:B C D清空arp:2. 主机C、D设置子网掩码为255.255.255.224,主机D的IP修改为172.

12、16.1.100。设置C,D子网掩码: 3. 主机B ping主机C(172.16.1.3),ping 主机D(172.16.1.100)。 记录实验结果 主机B ping 主机C:主机B ping 主机D:是否ping 通 主机B-主机C是 主机B -主机D 否4. B、C、D主机恢复网关,清除ARP缓存。恢复网关:清除arp:5. 主机E、F设置子网掩码为255.255.255.224,主机F的IP修改为172.16.0.100。6. 主机B ping主机E(172.16.0.2),ping 主机F(172.16.0.100)。 记录实验结果B ping E:B ping F:是否ping

13、 通 主机B-主机E 是主机B-主机F否请问什么情况下两主机的子网掩码不同,却可以相互通信?B的地址:172.16.1.2(10101100 00010000 00000001 00000010)子网掩码为:255.255.255.0(11111111 11111111 11111111 00000000)得到:10101100 00010000 00000001 00000000(172.16.1.0)E的地址:172.16.0.2(10101100 00010000 00000000 00000010)子网掩码:255.255.255.224(11111111 11111111 11111

14、111 11100000)得到:10101100 00010000 00000000 00000010(172.16.0.0)而F得到:10101100 00010000 00000000 01100100(172.16.0.96)也就是说当两个主机的上一层地址标识相同时,增大掩码可以让两台主机通信,172.16.1.0和172.16.0.0都变成了B类地址。二、ICMP协议【实验环境配置】采用网络结构路由器A【实验原理】 目的不可达报文 类型:3代码:0至15检验和未使用(全0.25)收到的IP数据报的一部分,包括IP首部以及数据报数据的前8个字节 源端抑制报文 类型:4代码:0检验和未使用

15、(全0)收到的IP数据报的一部分,包括IP首部以及数据报数据的前8个字节 超时报文 类型:11代码:0或1检验和未使用(全0)收到的IP数据报的一部分,包括IP首部以及数据报数据的前8个字节 参数问题 类型:12代码:0或1检验和指针未使用(全0)收到的IP数据报的一部分,包括IP首部以及数据报数据的前8个字节 改变路由 类型:5代码:0到3检验和目标路由器IP地址收到的IP数据报的一部分,包括IP首部以及数据报数据的前8个字节 回送请求和回答 类型:8或0代码:0检验和标识符序号由请求报文发送;由回答报文重复 时间戳请求和回答 类型:13或14代码:0检验和标识符序号原始时间戳接收时间戳发送

16、时间戳 地址掩码请求和回答 类型:17或18代码:0检验和标识符序号地址掩码 路由询问和通告 类型:10代码:0检验和标识符序号类型:9代码:0检验和地址数地址项目长度寿命路由器地址1优先级1路由器地址2优先级2.【实验步骤】练习一:运行Ping命令1. 设置过滤条件(提取ICMP协议)。 2. 主机B ping主机E(172.16.0.2)。 3. 停止捕获数据,察看哪些主机收到了B发出的包,哪些主机向B发送响应包,并回答以下问题: 捕获的报文对应的“类型”和“代码”字段分别是什么?类型:0x8(请求)代码:0x0 分析报文中的哪些字段保证了回送请求报文和回送应答报文的一一对应? 标识符和序列号练习二:ICMP差错报告报文1. 目的端不可达 a. 设置过滤条件(提取ICMP)。 b. 将路由器A的端口(172.16.0.1)的子网掩码改成255.255.255.224。c. 在主机B上发出ping 包,目标IP为172.16.0.100。 d. 捕获数据。察看并分析捕获到的数据,并回答以下问题: 捕获到了是哪一种差错报告报文?类型及代码为多少?超时,0x8,0x02. 超时 a

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论