ping命令的功能是用于测试主机间网络连通性,发送出基于ICMP传输协议的数据包,要求对方主机予以回复,若对方主机的网络功能没有问题且防火墙放行流量,则就会回复该信息,我们也就可得知对方主机系统在线并运行正常了。
不过值得我们注意的是Linux与Windows相比有一定差异,Windows系统下的ping命令会发送出去4个请求后自动结束该命令;而Linux系统则不会自动终止,需要用户手动按下组合键“Ctrl+c”才能结束,或是发起命令时加入-c参数限定发送个数。
语法格式: ping [参数] 目标主机
常用参数:
-d | 使用Socket的SO_DEBUG功能 |
---|---|
-c | 指定发送报文的次数 |
-i | 指定收发信息的间隔时间 |
-I | 使用指定的网络接口送出数据包 |
-l | 设置在送出要求信息之前,先行发出的数据包 |
-n | 只输出数值 |
-p | 设置填满数据包的范本样式 |
-q | 不显示指令执行过程 |
-R | 记录路由过程 |
-s | 设置数据包的大小 |
-t | 设置存活数值TTL的大小 |
-v | 详细显示指令的执行过程 |
参考实例
测试与指定网站服务器之间的网络连通性(需手动按下“Ctrl+c”组合键结束命令):
C:\Windows\System32>ping www.tsyvps.com 正在 Ping www.tsyvps.com [112.192.19.252] 具有 32 字节的数据: 来自 112.192.19.252 的回复: 字节=32 时间=13ms TTL=50 来自 112.192.19.252 的回复: 字节=32 时间=9ms TTL=50 来自 112.192.19.252 的回复: 字节=32 时间=9ms TTL=50 来自 112.192.19.252 的回复: 字节=32 时间=9ms TTL=50 112.192.19.252 的 Ping 统计信息: 数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失), 往返行程的估计时间(以毫秒为单位): 最短 = 9ms,最长 = 13ms,平均 = 10ms
测试与指定网站服务器之间的网络连通性,发送请求包限定为4次:
[root@linuxcool ~]# ping -c 4 www.tsyvps.com PING www.tsyvps.com (112.192.19.252) 56(84) bytes of data. 64 bytes from www.tsyvps.com (112.192.19.252): icmp_seq=1 ttl=52 time=24.7 ms 64 bytes from www.tsyvps.com (112.192.19.252): icmp_seq=2 ttl=52 time=24.7 ms 64 bytes from www.tsyvps.com (112.192.19.252): icmp_seq=3 ttl=52 time=24.7 ms 64 bytes from www.tsyvps.com (112.192.19.252): icmp_seq=4 ttl=52 time=24.7 ms 4 packets transmitted, 4 received, 0% packet loss, time 3005ms rtt min/avg/max/mdev = 24.658/24.664/24.673/0.111 ms
测试与指定主机之间的网络连通性,发送3次请求包,每次间隔0.2秒,最长等待时间为3秒:
[root@linuxcool ~]# ping -c 3 -i 0.2 -W 3 192.168.10.10 64 bytes from 192.168.10.10: icmp_seq=1 ttl=64 time=0.166 ms 64 bytes from 192.168.10.10: icmp_seq=2 ttl=64 time=0.060 ms 64 bytes from 192.168.10.10: icmp_seq=3 ttl=64 time=0.113 ms --- 192.168.10.10 ping statistics --- 3 packets transmitted, 3 received, 0% packet loss, time 410ms rtt min/avg/max/mdev = 0.060/0.113/0.166/0.043 ms