ICMP(控制报文协议)是网络层的协议。用于在主机、路由器之间传递控制消息,包括网络是否畅通、主机是否可达等。这些控制消息虽然并不传输用户数据,但是对于用户数据的传递起着重要的作用。
确认IP包是否成功到达目标地址.
通知在发送过程中IP包被丢弃的原因.
ICMP也是基于IP协议⼯作的. 但是它并不是传输层的功能, 因此⼈们仍然把它归结为网络层协议;当IP报头协议类型值为1时,说明这是一个ICMP报文。
ICMP只能搭配IPv4使⽤. 如果是IPv6的情况下, 需要使用ICMPv6。
ICMP报文格式:
ICMP包有一个8字节长的包头,其中前4个字节是固定的格式,包含8位类型字段,8位代码字段和16位的校验和;后4个字节根据ICMP包的类型而取不同的值。
类型(十进制数) | 内容 |
0 | 回送应答(Echo Reply) |
3 | 目标不可达(Destination Unreachable) |
4 | 原点抑制(Source Que |