Internet控制报文协议,即为ICMP(Internet Control Message Protocal),用于主机,路由器之间传递信息,其目的是让我们能够检测网路的连线状况﹐也能确保连线的准确性,所以是每一个IP实现中的必要组成部分。
ICMP报文的分类
ICMP报文大致可以分为差错类和信息类:
- 有关IP数据报传递的ICMP报文称为差错报文
- 有关信息采集和配置的ICMP报文称为信息类报文
差错类报文:
最常见的差错报文类型包括:
- 目的不可达(不可达的主机/协议)
- 重定向(表示应该被使用的可选路由器)
- 超时(资源耗尽)
- 参数问题(有问题的数据包或者头部)
- 源端抑制(表示拥塞弃用)
下面各种情况都不会导致产生ICMP差错报文:
1) ICMP差错报文(ICMP查询报文可能会产生ICMP差错报文)。
2) 目的地址是广播地址或多播地址的IP数据报。
3) 作为链路层广播的数据报。
4) 不是IP分片的第一片。
5) 源地址不是单个主机的数据报。这就是说,源地址不能为零地址、环回地址、广播地址或多播地址。
这些规则是为了防止过去允许ICMP差错报文对广播分组响应所带来的广播风暴。
信息类报文
信息类报文包括:
- 回显请求(ping请求)
- 回显应答(ping应答,返回数据)
- 路由器通告(指示路由器地址/优先级)
- 路由器请求(请求路由器通告)
感谢ICMP协议详解作者的帮助