Ping 协议号及相关介绍
Ping 程序使用的是ICMP(Internet Control Message Protocol,互联网控制报文协议),在网络协议中,并没有为 ICMP 单独分配一个特定的协议号,但它是 IP 协议的一部分,通常与 IP 协议一起工作。
ICMP 协议
定义:ICMP 全称是 Internet Control Message Protocol,即互联网控制报文协议,它是一种辅助 IP 协议的协议,用于在网络设备之间传递控制消息,这些消息主要用于提供网络故障诊断、路由信息以及其他网络状态相关的信息。
功能:
确认 IP 包是否成功送达目标地址:当一个 IP 数据包无法到达目标地址时,路由器或目标主机可以使用 ICMP 向源主机发送错误消息,告知数据包未能成功送达的原因,如网络不可达、主机不可达等。
报告发送过程中 IP 包被废弃的原因:如果在传输过程中某个 IP 数据包因为某些原因被丢弃,ICMP 可以向源端发送消息说明丢弃的原因,帮助源端了解网络状况并采取相应的措施。
改善网络设置:网络管理员可以通过分析 ICMP 消息来发现网络中存在的问题,从而对网络进行优化和调整。
ICMP 报文类型
查询报文类型:用于进行通信的主机或路由器之间,判断所发送的数据包是否已经成功到达对端的一种消息,回送请求消息(ICMP Echo Request Message)的类型为 8,用于向对端主机发送回送请求;回送应答消息(ICMP Echo Reply Message)的类型为 0,用于接收对端主机发回来的回送应答,ping 命令就是利用这两种消息实现的。
差错报文类型:用于通知出错原因,常见的有目标不可达消息(类型为 3)、原点抑制消息(类型 4)、重定向消息(类型 5)、超时消息(类型 11)等。
ping 所使用的 ICMP 协议在网络通信中扮演着重要的角色,它通过不同类型的报文,为网络故障诊断、状态监测等提供了有效的手段,保障了网络的正常运行和稳定通信。