Ping命令
前提条件
要求
阅读本文档要求对 ping 命令有所了解,关于ping命令的详细介绍请参见配套产品文档的命令参考具体章节。
使用的组件
本文档基于以下软件和硬件版本进行写作:
- 华为NE、ME和CX系列路由器
- V800R011C10软件版本
原理描述
- 远程设备是否可达;
与远程主机通信的来回旅程(round-trip)的延迟(delay);
报文包(packet)的丢失情况。
命令格式及参数说明
ping命令最常用的命令格式如下,其他命令格式请参阅配套产品文档中命令参考具体章节。
ping [ ip | ipv6 ] [-c count | -t timeout ] host
参数 |
参数说明 |
取值范围 |
---|---|---|
ip |
指定IPv4协议。 |
缺省情况下,默认为IPv4协议。 |
ipv6 |
指定IPv6协议。 |
缺省情况下,默认为IPv4协议。 |
-c count |
指定发送ICMP ECHO-REQUEST或ICMPv6 ECHO-REQUEST报文的次数。 当网络质量不高时,可以增加发送报文数目,通过丢包率来检测网络质量。 |
整数形式,取值范围是1~4294967295,缺省值是5。 |
-t timeout |
指定发送完ICMP ECHO-REQUEST后,等待ICMP ECHO-REPLY的超时时间。 ping命令会发送ICMP ECHO-REQUEST报文到某个地址,然后等待应答(reply),当ICMP ECHO-REQUEST报文到达目标地址以后,在一个有效的时间内(timeout之前)返回ICMP ECHO-REPLY给源地址,则说明目的地可达。如在有效时间内,没有收到回应,则在发送端显示超时。 当网络传输速率较慢时,可以使用此参数加大ICMP ECHO_REQUEST报文的响应超时时间。 |
整数形式,取值范围是0~65535,单位是毫秒。缺省值是2000毫秒。 |
host |
指定目的主机名称或目的主机IP地址。 说明:
若为IP地址,格式为点分十进制形式或X:X:X:X:X:X:X:X。 |
字符串形式,长度范围是1~255。 |
ping执行过程
在Ping过程中,发起端会发送ICMP(Internet Control Message Protocol) Echo Request报文到目的端的IP地址,然后等待应答。目的端接收到ICMP Echo Request报文后,将返回ICMP Echo Reply报文给发起端。若在超时时间之内ICMP Echo Reply报文能够到达发起端,说明目的端可达。否则,说明目的端不可达,并在发起端显示超时。
每发送一个ICMP Echo Request报文,报文序号就加1(从1开始增加)。在Ping过程中,默认发送ICMP Echo Request的数量是5个,也可以通过命令行参数设置发送ICMP Echo Request报文的个数。如果对端可达,则对端会相应回应相同数量的和请求端同样序号的ICMP Echo Reply报文。报文在转发过程中,如果TTL字段的值减为0,报文到达的路由器就会向发起端发送ICMP差错报文(TTL超时报文),表明远程设备不可达。
执行Ping操作时,会将ICMP报文中的标识符置为发送该ICMP报文的进程ID号,这样即使在同一台主机上同时运行了多个Ping程序,可以识别出返回的信息。
使用示例
下面的使用示例取自华为V800R011C10版本的NE40E产品,其他产品的输出信息可能略有差异,本文档示例仅供参考。
- # 检查IP地址为10.1.1.2的主机是否可达。
<HUAWEI> ping 10.1.1.2 PING 10.1.1.2 : 56 data bytes , press CTRL_C to break Reply from 10.1.1.2 : bytes=56 sequence=1 ttl=255 time = 1ms Reply from 10.1.1.2 : bytes=56 sequence=2 ttl=255 time = 2ms Reply from 10.1.1.2 : bytes=56 sequence=3 ttl=255 time = 1ms Reply from 10.1.1.2 : bytes=56 sequence=4 ttl=255 time = 3ms Reply from 10.1.1.2 : bytes=56 sequence=5 ttl=255 time = 2ms --10.1.1.2 ping statistics-- 5 packet(s) transmitted 5 packet(s) received 0.00% packet loss round-trip min/avg/max = 1/2/3 ms
如上述回显信息所示,transmitted报文数和received报文数相同,代表目的主机可达。
- 网络环境较差的情况下,可以指定较大的-c和 -t参数,通过分析显示结果中的丢包率和平均时延粗略评估网络质量。
# 指定-c为10,-t为3000,检查IP地址为10.1.1.2的主机是否可达。
<HUAWEI> ping -c 10 -t 3000 10.1.1.2 PING 10.1.1.2: 56 data bytes, press CTRL_C to break Reply from 10.1.1.2: bytes=56 Sequence=1 ttl=253 time=785 ms Reply from 10.1.1.2: bytes=56 Sequence=2 ttl=253 time=19 ms Reply from 10.1.1.2: bytes=56 Sequence=3 ttl=253 time=16 ms Reply from 10.1.1.2: bytes=56 Sequence=4 ttl=253 time=16 ms Reply from 10.1.1.2: bytes=56 Sequence=5 ttl=253 time=19 ms Reply from 10.1.1.2: bytes=56 Sequence=6 ttl=253 time=24 ms Reply from 10.1.1.2: bytes=56 Sequence=7 ttl=253 time=21 ms Reply from 10.1.1.2: bytes=56 Sequence=8 ttl=253 time=18 ms Reply from 10.1.1.2: bytes=56 Sequence=9 ttl=253 time=22 ms Reply from 10.1.1.2: bytes=56 Sequence=10 ttl=253 time=19 ms --- 10.1.1.2 ping statistics --- 10 packet(s) transmitted 10 packet(s) received 0.00% packet loss round-trip min/avg/max = 16/95/785 ms
表1-2 ping命令输出信息解释项目
描述
x data bytes
发送的ECHO-REQUEST报文的长度。
press CTRL_C to break
键盘操作CTRL + C将终止正在进行的Ping测试。
Reply from x.x.x.x
目的主机对每个ECHO-REQUEST报文的响应情况,包括:
bytes:响应报文的长度。
sequence:响应报文的序号。
ttl:响应报文的TTL。
time :响应时间,以ms为单位。如果超时后没有收到响应报文,则显示“Request time out”。
x.x.x.x ping statistics
对目的主机进行Ping测试的统计结果,包括:
packets transmitted:发送的ECHO-REQUEST报文数目。
packets received:接收到的ECHO-REPLY报文数目。
% packet loss:未响应报文数占应响应报文总数的百分比。
round-trip min/avg/max:响应时间的最小值、平均值、最大值。
- 检查IPv6地址为2001:db8::1的主机是否可达
<HUAWEI> ping ipv6 2001:db8::1 PING 2001:db8::1 : 56 data bytes, press CTRL_C to break Reply from 2001:db8::1 bytes=56 Sequence=1 hop limit=64 time=115 ms Reply from 2001:db8::1 bytes=56 Sequence=2 hop limit=64 time=1 ms Reply from 2001:db8::1 bytes=56 Sequence=3 hop limit=64 time=1 ms Reply from 2001:db8::1 bytes=56 Sequence=4 hop limit=64 time=1 ms Reply from 2001:db8::1 bytes=56 Sequence=5 hop limit=64 time=1 ms - --2001:db8::1 ping statistics--- 5 packet(s) transmitted 5 packet(s) received 0.00% packet loss round-trip min/avg/max=1/23/115 ms
表1-3 ping ipv6命令输出信息解释项目
描述
x data bytes
发送的ICMPv6 ECHO-REQUEST报文的长度。
press CTRL_C to break
键盘操作CTRL + C将终止正在进行的IPv6 Ping测试。
Reply from HH:HH::HH:H
目的主机对每个ICMPv6 ECHO-REQUEST报文的响应情况,包括:
bytes:响应报文的长度。
Sequence:响应报文的序号。
hop limit:响应报文的最大跳数。
time :响应时间,单位是毫秒。
如果超时后没有收到响应报文,则显示“Request time out”。
HH:HH::HH:HH ping statistics
对目的主机进行Ping测试的统计结果,包括:
packet(s) transmitted:发送的ECHO-REQUEST报文数目。
packet(s) received:接收到的ECHO-REPLY报文数目。
% packet loss:未响应报文数占应响应报文总数的百分比。
round-trip min/avg/max:响应时间的最小值、平均值、最大值。