您好!欢迎光临云杰通信官网,本公司专业提供跨境企业网络加速优化、企业MPLS-VPN、SD-WAN等跨境网络技术服务。
服务热线:13631779516

企业网络优化专家

国际网络互联综合解决方案

行业知识 NEWS

云杰通信助您了解行业,全方位掌握国际互联网最新资讯

您当前的位置:首页 > 资讯中心 > 行业知识

什么是ping?ping命令的作用和原理有哪些?

2019-11-21 18:55阅读:221

当遇到网络不通的情况,网络管理员会说:“等我ping一下,看看什么情况。”

那么,问题来了。

到底什么是ping?ping一下命令的作用和原理又是什么?

ping是定位网络通不通的一个重要手段。用来探测本机与网络中另一主机之间是否可达的命令,如果两台主机之间ping不通,则表明这两台主机不能建立起连接。

ping 命令是基于 ICMP 协议来工作的。 ICMP 全称为 Internet 控制报文协议( Internet Control Message Protocol)。ping 命令会发送一份ICMP回显请求报文给目标主机,并等待目标主机返回ICMP回显应答。因为ICMP协议会要求目标主机在收到消息之后,必须返回ICMP应答消息给源主机,如果源主机在一定时间内收到了目标主机的应答,则表明两台主机之间网络是可达的。

举例描述ping命令的工作过程

  1. 假设有两个主机,主机A(192.168.0.1)和主机B(192.168.0.2),现在我们要监测主机A和主机B之间网络是否可达,那么我们在主机A上输入命令:ping 192.168.0.2

  2. 此时,ping命令会在主机A上构建一个 ICMP的请求数据包,然后 ICMP协议会将这个数据包以及目标IP(192.168.0.2)等信息一同交给IP层协议。

  3. IP层协议得到这些信息后,将源地址(即本机IP)、目标地址(即目标IP:192.168.0.2)、再加上一些其它的控制信息,构建成一个IP数据包。

  4. IP数据包构建完成后,还不够,还需要加上MAC地址,因此,还需要通过ARP映射表找出目标IP所对应的MAC地址。当拿到了目标主机的MAC地址和本机MAC后,一并交给数据链路层,组装成一个数据帧,依据以太网的介质访问规则,将它们传送出出去。

  5. 当主机B收到这个数据帧之后,会首先检查它的目标MAC地址是不是本机,如果是就接收下来处理,接收之后会检查这个数据帧,将数据帧中的IP数据包取出来,交给本机的IP层协议,然后IP层协议检查完之后,再将ICMP数据包取出来交给ICMP协议处理,当这一步也处理完成之后,就会构建一个ICMP应答数据包,回发给主机A。

  6. 在一定的时间内,如果主机A收到了应答包,则说明它与主机B之间网络可达,如果没有收到,则说明网络不可达。除了监测是否可达以外,还可以利用应答时间和发起时间之间的差值,计算出数据包的延迟耗时。

通过ping的流程可以发现,ICMP协议是这个过程的基础,是非常重要的。

那么,ICMP又是什么?

我们知道,ping命令是基于ICMP协议来实现的。那么我们再来看下图,就明白了ICMP协议又是通过IP协议来发送的,即ICMP报文是封装在IP包中。

什么是ping?ping命令的作用和原理有哪些?

IP协议是一种无连接的,不可靠的数据包协议,它并不能保证数据一定被送达,那么我们要保证数据送到就需要通过其它模块来协助实现,这里就引入的是ICMP协议。

当传送的IP数据包发送异常的时候,ICMP就会将异常信息封装在包内,然后回传给源主机。

将上图再细拆一下可见:

什么是ping?ping命令的作用和原理有哪些?

继续将ICMP协议模块细拆:

什么是ping?ping命令的作用和原理有哪些?

由图可知,ICMP数据包由8bit的类型字段和8bit的代码字段以及16bit的校验字段再加上选项数据组成。

ICMP协议大致可分为两类:

  • 查询报文类型

  • 差错报文类型

什么是ping?ping命令的作用和原理有哪些?

查询报文类型:

查询报文主要应用于:ping查询、子网掩码查询、时间戳查询等等。

上面讲到的ping命令的流程其实就对应ICMP协议查询报文类型的一种使用。在主机A构建ICMP请求数据包的时候,其ICMP的类型字段中使用的是 8 (回送请求),当主机B构建ICMP应答包的时候,其ICMP类型字段就使用的是 0 (回送应答)。

差错报文类型:

差错报文主要产生于当数据传送发送错误的时候。

它包括:目标不可达(网络不可达、主机不可达、协议不可达、端口不可达、禁止分片等)、超时、参数问题、重定向(网络重定向、主机重定向等)等等。

当传送IP数据包发生错误的时候(例如主机不可达),ICMP协议就会把错误信息封包,然后传送回源主机,那么源主机就知道该怎么处理了。

文章标题:《什么是ping?ping命令的作用和原理有哪些?》

本文部分资料来源于网络,转载目的在于传递更多信息及学习参考:https://www.gdyunjie.cn/showinfo-114-675-0.html

主要业务
企业专线网络MPLS-VPNSD-WAN云专线
行业解决方案
跨境电商智能制造业互联网医疗国际教育
关于我们
公司简介服务支持商务合作联系我们
国际网络专题:广域网接口什么是广域网广域网优化广域网访问广域网加速广域网协议广域网端口无线广域网局域网广域网广域网虚拟网络上海iplc访问加速网络建设全球加速出口带宽远程组网网络加速香港网络香港专线视频会议ebayAliExpresAmazonInstagramTwitterFacebookgooglevklineSkypeWhatsAppzoom视频会议公司用vpnvpn方案公司vpn网络vpnvpn地址vpn直通香港vpn可靠vpnvpn中国vpn提供商外贸VPN企业用vpn企业vpn跨境电商vpnvpn专线ipsec vpnsdwan vpn国外网站加速vpn组网mpls iplc 价格mpls专线价格mplsvpn专线
Copyright @ 版权所有2012-2019 广东云杰通信有限公司 粤ICP备18062193号-2

在线咨询

在线咨询真诚为您提供专业解答服务

咨询热线

13631779516欢迎致电咨询

微信咨询

二维码微信扫一扫咨询
返回顶部