ICMP(Internet Control Message Protocol)报文主要分为两大类,具体类型如下:
一、差错报告报文(Type 3-5)
目标不可达(Destination Unreachable) - 代码0:网络不可达(如目标主机不存在或网络故障)
- 代码1:主机不可达(如端口不可达)
- 代码2:协议不可达(如IP地址格式错误)
- 代码3:源点抑制(用于流量控制)
源抑制(Source Quench)
- 类型4:用于网络拥塞控制,通知源主机减少发送速率
路由改变(Redirect)
- 类型5:指示数据包需通过另一路径传输
超时(Time Exceeded)
- 类型11:数据包在传输中丢失或路由器故障
参数问题(Parameter Problem)
- 类型12:数据包格式错误(如TTL值超出范围)
二、查询报文(Type 8/0/13/14)
回显请求/应答(Echo Request/Reply)
- 类型8:主机可达性测试(如ping命令)
- 类型0:回显应答
时间戳(Timestamp)
- 类型13:请求发送方时间戳
- 类型14:响应接收方时间戳,用于计算传输延迟
补充说明
差错报告报文: 仅发送给源主机,用于报告传输错误(如丢包、格式错误等) 查询报文
特殊场景:ICMP类型11(超时)和类型12(参数问题)在差错报告报文中使用,但需注意某些特殊场景下可能不发送差错报告(如多播数据包、首片分片后)
以上分类综合了ICMP协议规范及常见应用场景。