/tool/ping
ping
向主机发送 ICMP 回显请求(IPv4)或 ICMPv6 回显请求(IPv6),并显示每个应答及其往返时间、TTL 和状态,然后显示摘要。
/ping是/tool/ping的简写形式。使用arp-ping或nd-ping时,路由器改为发送 ARP 请求或 IPv6 邻居请求;当address为 MAC 地址时,发送 MAC ping。在脚本中,命令返回应答数量。完整文档参见 Ping。
tool/ping
Type: Command
向主机发送 ICMP 回显请求(IPv4)或 ICMPv6 回显请求(IPv6),并显示每个应答及其往返时间、TTL 和状态,然后显示摘要。/ping 是 /tool/ping 的简写形式。使用 arp-ping 或 nd-ping 时,路由器改为发送 ARP 请求或 IPv6 邻居请求;当 address 为 MAC 地址时,发送 MAC ping。在脚本中,命令返回应答数量。完整文档参见 Ping。
| 参数 | 类型 | 描述 |
|---|---|---|
address | address (flags=46v%Dm) | 要 ping 的主机:IPv4 或 IPv6 地址、DNS 名称,或用于 MAC ping 的 MAC 地址。路由器使用自己的 DNS 设置解析名称。IPv6 链路本地地址和 MAC 地址以接口作为后缀,例如 fe80::1%ether1 或 00:11:22:33:44:55%ether1;不带后缀的 MAC ping 会从每个接口发出。参见 地址标志。 |
interval | time | 两个请求之间的时间,00:00:00.010..00:00:05(10 毫秒到 5 秒)。晚于该间隔到达的应答计为超时。默认值:1s。 |
size | num | 每个请求的大小(字节),即整个 IP 数据包(包括 IP 头),IPv4 为 28..65535,IPv6 为 48..65535。size=1500 是以太网链路上的全尺寸数据包。大于传出接口 MTU 的请求会被分片,除非设置了 do-not-fragment。默认值:56。 |
ttl | num | IPv4 请求的 TTL 和 IPv6 请求的跳数限制,1..255。默认值:IPv4 为 255,IPv6 为 64。 |
dscp | num | 请求 IP 头中设置的区分服务代码点,0..63。例如,dscp=46(加速转发)的 ToS 字节为 0xb8。默认值:0。 |
do-not-fragment | switch | 在请求中设置 Don't Fragment 标志,使其不被分片。大于路径 MTU 的请求随后会失败:路径上具有较小链路的路由器会以状态 fragmentation needed and DF set 应答,而大于传出接口 MTU 或路由器已获知的路径 MTU 的请求会失败并显示 packet too large and cannot be fragmented。与 size 一起使用可查找路径 MTU。 |
src-address | alt { ip-src-address: ipAddr , ip6-src-address: ip6Addr } | 请求的源地址。当测试需要特定地址时使用,例如用于测试 IPsec 站点到站点隧道的 LAN 地址。默认值:路由的 pref-src,否则为传出接口的地址。 |
arp-ping | bool | 发送 ARP 请求而不是 ICMP 回显请求,以到达直接连接的 IPv4 子网上丢弃 ICMP 的主机。需要 interface;没有它时命令会失败并显示 interface needs to be specified for arp ping。host 显示应答主机的 MAC 地址。默认值:no。 |
count | num | 要发送的请求数。没有它时,ping 会一直运行直到您按 Ctrl-C 停止。在脚本中,命令返回应答数量。默认值:unlimited。 |
nd-ping | bool | 使用 IPv6 邻居发现而不是 ICMPv6 回显:路由器发送邻居请求(NS),并将邻居通告(NA)计为应答。仅适用于链路上的 IPv6 地址;全局地址还需要 interface。默认值:no。 |
interface | iface_enum | 请求离开所经过的接口。当通过该接口没有覆盖目标的路由时,路由器将目标视为直接连接在那里,并为其发送 ARP 请求。arp-ping、发往全局地址的 nd-ping 以及 IPv6 链路本地地址需要它(或将接口作为地址后缀)。 |
vrf | enum | ping 运行所在的 VRF。仅接受 VRF;为策略路由创建的路由表会被拒绝并显示 input does not match any value of vrf。默认值:main。 |
| 只读参数 | 类型 | 描述 |
|---|---|---|
seq | num | 此行应答的请求编号。对多播请求的应答共享一个编号。 |
host | alt { ipv6-address: ip6Addr , mac-address: macAddr , ip-address: ipAddr } | 应答来自的地址:主机,或路径上发送 ICMP 错误的路由器(参见 status)。对于 ARP ping 和 MAC ping,为应答主机的 MAC 地址。 |
size | num | 接收数据包的大小(字节)。对于来自路由器的 ICMP 错误,为该消息的大小。 |
ttl | num | 接收数据包的 TTL(IPv4)或跳数限制(IPv6)。与发送方使用的值之差大致显示应答经过了多少个路由器。 |
time | time | 往返时间:发送请求与接收应答之间的时间。 |
status | string | IPv4 应答为空,否则表示请求发生了什么: - timeout - 在 interval 内没有应答到达。 - net unreachable - host 中的路由器没有到目标网络的路由,或那里的防火墙规则以默认 reject 操作拒绝数据包。 - host unreachable - host 中的路由器报告无法到达主机,或那里的防火墙规则以 icmp-host-unreachable 拒绝数据包。 - admin prohibited - host 中路由器上的防火墙规则拒绝数据包。 - TTL exceeded - TTL 在 host 中的路由器上耗尽,通常是因为路由环路。 - fragmentation needed and DF set - host 中的路由器有一条 MTU 较小的链路,并且设置了 do-not-fragment。 - packet too large and cannot be fragmented - 请求大于传出接口的 MTU 或已获知的路径 MTU,并且设置了 do-not-fragment。 - no route to host - 路由器没有到该地址的路由;对于 nd-ping,该地址不在直接连接的子网上。 - echo reply - IPv6 回显应答。 |
sent | num | 已发送的请求数。 |
received | num | 收到的应答数。 |
packet-loss | num | 未收到应答的请求百分比。 |
min-rtt | time | 本次运行的最短往返时间。 |
avg-rtt | time | 本次运行的平均往返时间。 |
max-rtt | time | 本次运行的最长往返时间。 |