ping命令如何工作

1、ping 是基于 ICMP 协议工作的,也就是互联网控制报文协议

2、ICMP 主要的功能包括:确认 IP 包是否成功送达目标地址、报告发送过程中 IP 包被废弃的原因和改善网络设置等。

3、ICMP 报文是封装在 IP 包里面,它工作在网络层,是 IP 协议的助手。

4、ICMP 包头的类型字段,大致可以分为两大类:

  • 一类是用于诊断的查询消息,也就是「查询报文类型

  • 另一类是通知出错原因的错误消息,也就是「差错报文类型

ping命令如何工作

查询报文类型

回送消息用于进行通信的主机或路由器之间,判断所发送的数据包是否已经成功到达对端的一种消息,ping 命令就是利用这个消息实现的。

差错报文类型

例如表中的几种错误

5、ping —— 查询报文类型的使用

1)ping 命令执行的时候,源主机首先会构建一个 ICMP 回送请求消息数据包。

2) ICMP 协议将这个数据包目的地址(要ping的地址) 一起交给 IP 层

3)要发送 ARP 协议查询 MAC 地址,获得 MAC 地址后,由数据链路层构建一个数据帧。

4)主机 B 收到这个数据帧后,先检查它的目的 MAC 地址,并和本机的 MAC 地址对比,如符合,则接收,否则就丢弃。

5)主机 B 会构建一个 ICMP 回送响应消息数据包