<p><strong>一:ICMP介绍</strong></p>
讯享网
ICMP(Internet Control Message Protocol)Internet控制报文协议。它是TCP/IP协议簇的一个子协议,用于在IP主机、路由器之间传递控制消息。
二:ICMP报文介绍
ICMP报文是在IP数据报内部被传输的。
ICMP头部8个字节。
ICMP有两种查询报文,一种是查询报文一种是差错报告报文,ICMP常见报文代码如下:
【考点解析】常见ICMP类型0,3,8,11这几类常考。
三:ping与tracert解析
ping和Tracert是ICMP协议的具体应用。
ping原理:
- 在源端(DeviceA)执行Ping操作,向指定的目的地址发送一定数量的ICMP Echo Request报文,每发送一个ICMP Echo报文,报文序号加1(从1开始增加),一次Ping操作发送ICMP Echo报文的数量可以设置,缺省情况发送5个。报文发出后,源端启动超时定时器,等待接收目的端(DeviceB)发送的响应报文。
- 目的端收到ICMP Echo报文后,会对应发送相同序号的ICMP Echo Reply报文。
抓包解析:
发送Type=8,Code=0的请求
目的节点回复Type=0,Code=0
tracert原理:
- 在源端(DeviceA)执行Tracert操作,向目的端(DeviceE)发送TTL字段值为1的UDP数据报文(缺省情况发送3个)。第一个报文默认将33434号端口作为目的端设备的接收报文端口,后面报文依次加1。
- 第一跳设备(DeviceB)收到源端发送的UDP数据报文后,由于报文的TTL减为0,所以向源端发送3个ICMP超时报文。
- 源端收到第一跳设备回复的ICMP超时报文,则可以判断第一跳可达,同时获得源端与第一跳设备间的时延(即发送报文与接收报文的时间差)。
- 源端继续向目的端发送3个TTL字段值为2的UDP数据报文,第二跳设备收到后也向源端发送ICMP超时报文。
- 后续源端继续发送UDP数据报文,每次发送的报文TTL字段值加1,从而获取逐跳响应。
- 直到目的端收到源端发送的UDP数据报文,但因目的端口不可用,所以目的端会向源端发送3个ICMP端口不可达报文,表示目的端口不可达。
tracert原理图
tracert抓包分析:
tracert结果
第一跳TTL=1,源端发送3个UDP报文(默认是3个 注意返回结果有3个延时):
默认UDP目的端口33434
IP报文中TTL=1
第一跳返回结果type=11,code=0
第二跳TTL变为2
目的节点返回type=3,code=3端口不可达报文
Linux/Unix下:源端发的是UDP报文,中间节点返回的是TTL超时报文(Type=11,Code=0),目的端返回的是ICMP端口不可达(Type=3,Code=3)。
Windows下:源端发的是ICMP报文,echo request(Type=8,Code=0),目的返回的是TTL超时报文(Type=11,Code=0),目的节点返回的是TTL超时报文(Type=11,Code=0)。
可以看到windows的tracert请求是Type=0,Code=0报文。
中间节点返回的类型是Type=11,Code=0.
PS:其中路由器交换机发送的tracert是基于Linux方式,实际在windows系统下抓包目的节点返回的是Type=0,Code=0的报文,考试就选Type=11,Code=0。
【考点解析】ping和tracert使用的ICMP类型。
四:真题解析
2023年11月网络规划设计师
tracert探测分组利用了()类型的ICMP消息,而中间路由器或目标主机返回的分组里利用了( )类型的ICMP消息。
第一问选项:
A.Type=3,Code=7
B.Type=11,Code=0
C.Type=0,Code=0
D.Type=8,Code=0
第二问选项:
A.Type=3,Code=7
B.Type=11,Code=0
C.Type=0,Code=0
D.Type=8,Code=0
【解析】答案是D、B。首先了解tracert在windows和linux下发送和目的返回的值不同。看题目说的是中间路由器或目的主机返回分组,说明目的主机和中间路由器返回值一致,是基于windows下的tracert。发送采用Type=8,Code=0的ICMP Request报文,中间和目的返回TTL超时报文,Type=11,Code=0。
2021年11月网络规划设计师:
traceroute在进行路由追踪时发出的ICMP消息是(),收到的消息是中间节点或目的节点返回的()
第一问选项:
A.Echo Request
B.Timestamp Request
C.Echo Reply
D.Timestamp Reply
第二问选项:
A.Destination Unreachable
B.TTL Exceeded
C.Parameter Problem
D.Source Route Failed
【解析】答案是A、B。与2023年11月网规考的一致,只不是一个考类型英文一个考Type和Code具体值。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/174576.html