Ping命令浅析

Posted JoshuaGuo

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Ping命令浅析相关的知识,希望对你有一定的参考价值。

Ping

​ Ping基于ICMP协议。

​ Ping可以分为 内网Ping外网Ping

​ 下面以内网Ping为例,使用的软件是eNSPWireShark

​ Step1.创建拓扑,PC A和PC B在同一网段内。

​ PC-A若要Ping PC-B,就要进行数据链路层的报文封装。首先PC-A查看MAC表,若没有查到PC-B的MAC地址,就会发送ARP广播包。交换机收到ARP广播包后,会检查自己MAC地址表有没有PC-B的MAC地址,如果有,就返回;如果没有,则向交换机的端口发送ARP广播包,如果该交换机的端口上还连接了PC-C、PC-D等多个主机,那么与该交换机连接的主机在收到APR后,会检查交换机是否在找自己,若不是找自己,则丢弃。PC-B就会接收ARP广播包,然后响应,告诉交换机PC-B的MAC地址,同时PC-B拥有了PC-A的MAC地址。交换机在收到PC-B的MAC地址后将会转发给PC-A。

​ Step2.PC-A ping PC-B,Wireshark数据抓包

Request

上图:PC-A 192.168.10.2没有查到PC-B的MAC地址(因为Target MAC address: Broadcast (ff:ff:ff:ff:ff:ff)),于是发送了ARP广播包(谁有192.168.10.3的MAC地址,请告诉192.168.10.2)。

Reply

​ 上图:PC-B收到了ARP广播包,发现是在询问自己的MAC,于是响应发送自己的MAC给PC-A

构造ICMP数据报,建立连接

​ ICMP相关内容可参考

ICMP相关

以上是关于Ping命令浅析的主要内容,如果未能解决你的问题,请参考以下文章

如何在ping命令后面显示时间

使用ping命令时的网卡选择

linux的ping命令怎么用

Linux中使用ping命令

ping命令怎么带时间

ping命令