ping
命令用来向网络主机发送 ICMP 回显请求,不仅是 Linux 系统中有这个命令,在 Windows 中也有同名的命令。常用来判断本机或目标主机的网络状况。
ping 命令格式
ping [选项...] 目标主机
ping 命令示例
检查主机的连接状态和响应速度:
ping 192.168.1.100
默认 ping
命令会一直发送请求,想要结束需要按 Ctrl+c 键来中止,可以通过命令选项来指定请求次数:
ping -c 3 192.168.1.100
上面命令会在发起 3 次 ping 请求后自动结束。除了指定次数,还可以指定请求间隔。ping
命令默认的间隔时间为 1 秒,通过以下命令可以设置为 3 秒:
ping -i 3 192.168.1.100
关于 ping
命令的更多选项可以查阅下面的参考表。
ping 命令选项参考
选项名称 | 功能说明 |
---|---|
-4 |
仅使用 IPv4 地址。 |
-6 |
仅使用 IPv6 地址。 |
-a |
可发声的 ping. |
-A |
自适应 ping。 |
-b |
允许对一个广播地址进行 ping。 |
-t ttl |
设置 IP 的 TTL(Time to Live)。 |
-T timestamp |
设置特殊的 IP 时间戳选项。timestamp 可以是 tsonly (仅时间戳)、 tsandaddr (时间戳和地址)或者 tsprespec host1 [host2 [host3 [host4]]] (预先指定跳数的时间戳)。 |
-U |
打印完整的用户到用户的延迟(旧行为)。通常情况下 ping 打印网络往返延时,它们可能不同,例如在 DNS 解析出现失败时。 |
-V |
显示版本并退出。 |
-c count |
在发送(和接收)了正好数量为 count 的回显应答分组后停止操作。 |
-d |
在所用的套接字上使用 SO_DEBUG 选项。 |
-D |
在每行之前打印时间戳。 |
-f |
以高速方式进行 ping。 以分组返回的速度来输出其它分组或每秒输出百次。当收到每个回显应答并打印一个退格符时,对每个回显请求都打印一个句点 . 。这可以快速显示出丢弃了多少个分组,只有超级用户可以用这个选项。另外此操作对网络要求非常苛刻,应该慎重使用。 |
-i wait |
在发送每个分组时等待 wait 个秒数。缺省值为每个分组等待一秒。此选项与 -f 选项不能同时使用。 |
-l preload |
如果指定 preload,那么 ping 程序在开始正常运行模式前尽可能快地发送分组。同样只有超级用户可以用这个选项。 |
-n |
只以数字形式输出信息。这样就不尝试去查找主机名了。 |
-p pattern |
可以指定最多 16 个填充字节用于保持分组长度为 16 的整数倍。在网络上诊断与数据相关问题时此选项很有用。例如 -p ff 将使发出的分组都用全 1 填充数据区。 |
-q |
静态输出。在程序启动和结束时只显示摘要行。 |
-R |
记录路由。在回显请求分组中包含记录路由选项并在相应的分组返回时显示路由缓冲区。注意 IP 首部的容量只能存放 9 条这样的路由。一些主机会忽略或禁用此选项。 |
-r |
在所连接的网络上旁路正常的选路表,直接向主机发送分组。如果主机未处于直接相连的网络上就返回一个错误。 |
-s packetsize |
指定要发送数据的字节量。缺省值为 56。 |
-w waitsecs |
在 waitsecs 秒后停止 ping 程序的执行。 |
-v |
输出详细信息。 |