Ping简介

     0评论

ping简介

ping是一种网络工具,用来测试数据包能否通过IP协议到达特定主机。ping的运作原理是向目标主机传出一个ICMP echo@要求数据包,并等待接收echo回应数据包。程序会按时间和成功响应的次数估算丢失数据包率(丢包率)和数据包往返时间(网络时延,Round-trip delay time)。

网络管理员之间也常将ping用作动词,如“ping一下计算机X,看它是否开着。”

我们常用的操作系统一般都内置了ping工具,在Linux/Mac的终端、Windows的CMD等环境中,输入ping hostname即可测试你的电脑到目标主机的连通性,通过参数可以指定发送的数据包的个数以及每个数据包的大小。不指定数据包个数时,Windows默认会发送4个包,而Linux需要Ctrl+C中断发送才会停止;Linux默认的包大小一般是64bytes,而Windows默认是32bytes。本文末尾附了一份ping命令的帮助文档,备大家深入了解。

怎么看ping的结果

在ping返回的文本信息中,我们可以看到域名被解析后的IP地址,每个包的往返时间,以及根据多个包的数据估算的丢包率、响应时间的均值等。还有一个TTL,根据它可以推算数据包在到达终点前途径了多少个路由节点。

下面是摘自维基百科页面的两个ping实例:

Linux系统内的ping

root

Windows系统下的示例

C:\>ping www.google.com Pinging www.l.google.com [64.233.183.103] with 32 bytes of data: Reply from 64.233.183.103: bytes=32 time=25ms TTL=245 Reply from 64.233.183.103: bytes=32 time=22ms TTL=245 Reply from 64.233.183.103: bytes=32 time=25ms TTL=246 Reply from 64.233.183.103: bytes=32 time=22ms TTL=246 Ping statistics for 64.233.183.103: Packets: Sent = 4, Received = 4, Lost = 0 (0% loss), Approximate round trip times in milli-seconds: Minimum = 22ms, Maximum = 25ms, Average = 23ms

其中,Pinging www.l.google.com [64.233.183.103] with 32 bytes of data:

www.google.com是www.l.google.com DNS别名,IP地址是64.233.183.103。以32 bytes大小测试,可以以-l(Windows)参数更改,大小是1-65500

Reply from 64.233.183.103: bytes=32 time=22ms TTL=246
反应时间25毫秒,TTL(Time To Live)值为245 由上来看,到google通过255-245 = 10个路由

Ping statistics for 64.233.183.103: Packets: Sent = 4, Received = 4, Lost = 0 (0% loss), Approximate round trip times in milli-seconds: Minimum = 22ms, Maximum = 25ms, Average = 23ms

总计,最小22ms,最大25ms,平均23ms

实际应用中的ping数据

本站提供的ping测试数据主要关注响应时间、丢包率这两个指标;为保证数据的可靠性,我们做测试时发送的数据包基本都是100个,极少数的测速点因为环境限制,发送的数据包是30个或10个。一般来说,位于国外机房的VPS主机,ping值在250毫秒以内就是可接受的,当然越快越好;丢包率则不应高于10%。如果有两处机房的响应时间接近,略慢的那一处的丢包率比另一处低一些,我们应该优先选择丢包率低的那个,因为丢包对我们实际感受到的网络延迟、卡顿等作用更大。

ping命令文档

qiushan">topvps:/c/Users/qiushan% ping 用法: ping [-t] [-a] [-n count] [-l size] [-f] [-i TTL] [-v TOS] [-r count] [-s count] [[-j host-list] | [-k host-list]] [-w timeout] [-R] [-S srcaddr] [-c compartment] [-p] [-4] [-6] target_name 选项: -t Ping 指定的主机,直到停止。 若要查看统计信息并继续操作,请键入 Ctrl+Break; 若要停止,请键入 Ctrl+C。 -a 将地址解析为主机名。 -n count 要发送的回显请求数。 -l size 发送缓冲区大小。 -f 在数据包中设置“不分段”标记(仅适用于 IPv4)。 -i TTL 生存时间。 -v TOS 服务类型(仅适用于 IPv4。该设置已被弃用, 对 IP 标头中的服务类型字段没有任何 影响)。 -r count 记录计数跃点的路由(仅适用于 IPv4)。 -s count 计数跃点的时间戳(仅适用于 IPv4)。 -j host-list 与主机列表一起使用的松散源路由(仅适用于 IPv4)。 -k host-list 与主机列表一起使用的严格源路由(仅适用于 IPv4)。 -w timeout 等待每次回复的超时时间(毫秒)。 -R 同样使用路由标头测试反向路由(仅适用于 IPv6)。 根据 RFC 5095,已弃用此路由标头。 如果使用此标头,某些系统可能丢弃 回显请求。 -S srcaddr 要使用的源地址。 -c compartment 路由隔离舱标识符。 -p Ping Hyper-V 网络虚拟化提供程序地址。 -4 强制使用 IPv4。 -6 强制使用 IPv6。

参考资料

PING

-- EOF --

本文最后修改于6年前 (2018-05-08)

差评不太行一般挺好非常不错 (No Ratings Yet)
读取中...
发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址