ICMP的type字段、code字段

ICMP(Internet Control Message Protocol,互联网控制报文协议)是一种网络层协议,用于在IP主机、路由器之间传递控制消息。ICMP封装在IP数据包中,用于报告错误情况和进行诊断等。ICMP类型编号用于区分ICMP消息的不同类型,以下是一些常见的ICMP类型编号:

1. **0** - Echo Reply(回显应答)

Echo Reply(回显应答,类型0):用于回复Echo Request(回显请求,类型8),通常用于测试网络连接是否正常。

2. **3** - Destination Unreachable(目的不可达)

Destination Unreachable(目的地不可达,类型3):用于指示主机或路由器无法到达目的地或某个网络服务不可用。

3. **4** - Source Quench(源抑制)

Source Quench(源站抑制,类型4):当接收方无法处理所有传入的数据包时,源站抑制报文会发送到发送方,以通知其减慢数据传输速度。

4. **5** - Redirect(重定向)

Redirect(重定向,类型5):用于通知发送方,其正在使用的路由不再是最佳路由,建议使用另一条路由。

5. **8** - Echo Request(回显请求)

6. **9** - Router Advertisement(路由器广告)

7. **10** - Router Selection(路由器选择)

8. **11** - Time Exceeded(时间超过)

ICMP(Internet Control Message Protocol)是用于在IP主机和路由器之间传递控制消息的协议,其中包括了多种类型的报文,用于不同的网络通信情况。超时消息是ICMP中的一种差错报文,它的Type字段编号为11。这类消息通常在以下情况下发送:

  • TTL值为0:当数据包在传输过程中,其TTL(Time to Live)字段减少到0时,路由器会向源主机发送一个ICMP超时报文,通知它数据包未能及时到达目的地。
  • 诊断工具应用:网络诊断工具如Traceroute利用ICMP超时报文来发现从源到目的地之间的路径上各个路由器的IP地址,帮助网络管理员了解网络路由情况。

此外,ICMP报文中的Type字段是必需的,它出现在每个ICMP报文的开始位置,并且伴随着一个Code字段,共同定义了特定类型的ICMP消息。这些消息对于网络操作的反馈和故障排查至关重要。例如,Ping命令就是通过发送ICMP回声请求(Echo Request)并等待回声应答(Echo Reply)来测试两台设备之间的连通性。而Traceroute则通过发送一系列TTL逐步增加的数据包,并通过接收到的ICMP超时报文来确定路径中的跳数和相关路由器的延迟。

总之,了解ICMP类型编号对于理解和处理网络问题非常重要,它们提供了网络状态的关键信息,帮助维护网络的健康运行。

9. **12** - Parameter Problem(参数问题)

10. **13** - Timestamp Request(时间戳请求)

11. **14** - Timestamp Reply(时间戳应答)

12. **15** - Information Request(信息请求)

13. **16** - Information Reply(信息应答)

14. **17** - Address Mask Request(地址掩码请求)

15. **18** - Address Mask Reply(地址掩码应答)

16. **30** - Traceroute(tracert)

17. **31** - Datagram Conversion Error(数据报转换错误)

18. **32** - Mobile Host Redirect(移动主机重定向)

19. **33** - IPv6 Where-Are-You(IPv6 你在哪里)

20. **34** - IPv6 I-Am-Here(IPv6 我在这里)

21. **35** - Mobile Registration Request(移动注册请求)

22. **36** - Mobile Registration Reply(移动注册应答)

23. **37** - Domain Name Request(域名请求)

24. **38** - Domain Name Reply(域名应答)

25. **39** - SKIP Algorithm Discovery Protocol(SKIP算法发现协议)

26. **40** - Photuris(一种安全相关协议)

这些类型编号代表了ICMP的不同功能,其中一些类型如3(目的不可达)、11(时间超过)和5(重定向)在网络诊断中非常常见。ICMP协议定义了多种错误报告和信息交换的消息类型,以帮助网络管理员和主机进行故障排除和网络管理。

========================

ICMP(Internet Control Message Protocol,互联网控制报文协议)的code字段用于进一步描述ICMP消息的具体情况。code字段与type字段一起决定了ICMP报文的确切含义。以下是一些常见的ICMP类型(type)及其对应的code值:

1. **类型 0** - Echo Reply
   - **代码 0** - 有效的Echo Reply消息

2. **类型 3** - Destination Unreachable(目的不可达)
   - **代码 0** - 网络不可达
   - **代码 1** - 主机不可达
   - **代码 2** - 协议不可达
   - **代码 3** - 端口不可达
   - **代码 4** - 需要进行分片但设置不分片比特
   - **代码 5** - 源站选路失败
   - **代码 6** - 目的网络未知
   - **代码 7** - 目的主机未知
   - **代码 9** - 目的网络被强制禁止
   - **代码 10** - 目的主机被强制禁止
   - **代码 11** - 网络不可达,由于服务类型TOS
   - **代码 12** - 主机不可达,由于服务类型TOS
   - **代码 13** - 通信被强制禁止,由于过滤

3. **类型 4** - Source Quench(源抑制)
   - **代码 0** - 通知发送方减小速率

4. **类型 5** - Redirect(重定向)
   - **代码 0** - 对网络重定向
   - **代码 1** - 对主机重定向
   - **代码 2** - 对服务类型和网络重定向
   - **代码 3** - 对服务类型和主机重定向

5. **类型 8** - Echo Request(回显请求,Ping请求)

6. **类型 11** - Time Exceeded(时间超过)
   - **代码 0** - 传输期间生存时间为0
   - **代码 1** - 在数据报组装期间生存时间为0

7. **类型 12** - Parameter Problem(参数问题)
   - **代码 0** - 坏的IP首部(catchall error)
   - **代码 1** - 缺少必需的选项

8. **类型 13** - Timestamp Request(时间戳请求,已作废)

9. **类型 14** - Timestamp Reply(时间戳应答,已作废)

10. **类型 15** - Information Request(信息请求,已作废)

11. **类型 16** - Information Reply(信息应答,已作废)

12. **类型 17** - Address Mask Request(地址掩码请求)

13. **类型 18** - Address Mask Reply(地址掩码应答)

请注意,某些code值可能在不同的RFC中有不同的含义或已经被声明为已作废。此外,ICMP的type和code值范围是0到255,上述列表并不全面,仅包括一些常见的类型和code。

  • 15
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值