Linux的ping命令是一个非常实用的网络工具,用于测试主机之间的网络连通性。ping命令发送基于ICMP传输协议的数据包,并等待对方主机的回复,若对方主机的网络功能没有问题且防火墙放行流量,则就会回复该信息。本文主要介绍ping命令的语法格式和用法解刨。
一、概述
ping命令的功能是测试主机间网络的连通性,它发送出基于ICMP传输协议的数据包,要求对方主机予以回复。若对方主机的网络功能没有问题且防火墙放行流量,则就会回复该信息,我们也就可得知对方主机系统在线并运行正常了。 不过值得注意的是,ping命令在Linux下与在Windows下有一定差异,Windows系统下的ping命令会发送出去4个请求后自动结束该命令;而Linux系统则不会自动终止,需要用户手动按下Ctrl+C组合键才能结束,或是发起命令时加入-c参数限定发送数据包的个数。
二、语法格式
ping 参数 域名或IP地址
三、常用参数
1、-4:基于IPv4网络协议。
2、-I:使用指定的网络接口送出数据包。
3、-6:基于IPv6网络协议。
4、-n:仅输出数值。
5、-a:发送数据时发出鸣响声。
6、-p:设置填满数据包的范本样式。
7、-b:允许ping一个广播地址。
8、-q:静默执行模式。
9、-c:设置发送数据包的次数。
10、-R:记录路由过程信息。
11、-d:使用接口的SO_DEBUG功能。
12、-s:设置数据包的大小。
13、-f:使用泛洪模式大量向目标发送数据包。
14、-t:设置存活数值TTL的大小。
15、-h:显示帮助信息。
16、-v:显示执行过程详细信息。
17、-i:设置收发信息的间隔时间。
18、-V:显示版本信息。
四、参考示例
1、测试与指定域名之间的网络连通性(需手动按下Ctrl+C组合键结束命令):
[root@zzbaike ~] ping www.zzbaike.com PING www.zzbaike.com.w.kunlunar.com (222.85.26.229) 56(84) bytes of data. 64 bytes from www.zzbaike.com (222.85.26.229): icmp_seq=1 ttl=52 time=22.4 ms 64 bytes from www.zzbaike.com (222.85.26.229): icmp_seq=2 ttl=52 time=22.4 ms 64 bytes from www.zzbaike.com (222.85.26.229): icmp_seq=3 ttl=52 time=22.4 ms 64 bytes from www.zzbaike.com (222.85.26.229): icmp_seq=4 ttl=52 time=22.4 ms ^C --- www.zzbaike.com.w.kunlunar.com ping statistics --- 5 packets transmitted, 5 received, 0% packet loss, time 4005ms rtt min/avg/max/mdev = 22.379/22.389/22.400/0.094 ms
2、测试与指定主机之间的网络连通性,发送请求包限定为4个:
[root@zzbaike ~] ping -c 4 192.168.10.10 PING 192.168.10.10 (192.168.10.10) 56(84) bytes of data. 64 bytes from 192.168.10.10: icmp_seq=1 ttl=64 time=0.063 ms 64 bytes from 192.168.10.10: icmp_seq=2 ttl=64 time=0.088 ms 64 bytes from 192.168.10.10: icmp_seq=3 ttl=64 time=0.049 ms 64 bytes from 192.168.10.10: icmp_seq=4 ttl=64 time=0.046 ms --- 192.168.10.10 ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time 110ms rtt min/avg/max/mdev = 0.046/0.061/0.088/0.018 ms
3、测试与指定域名之间的网络连通性,发送请求包限定为4个:
[root@zzbaike ~] ping -c 4 www.zzbaike.com PING www.zzbaike.com (222.85.26.234) 56(84) bytes of data. 64 bytes from www.zzbaike.com (222.85.26.234): icmp_seq=1 ttl=52 time=24.7 ms 64 bytes from www.zzbaike.com (222.85.26.234): icmp_seq=2 ttl=52 time=24.7 ms 64 bytes from www.zzbaike.com (222.85.26.234): icmp_seq=3 ttl=52 time=24.7 ms 64 bytes from www.zzbaike.com (222.85.26.234): icmp_seq=4 ttl=52 time=24.7 ms --- www.zzbaike.com.w.kunlunar.com ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time 3005ms rtt min/avg/max/mdev = 24.658/24.664/24.673/0.111 ms
4、测试与指定主机之间的网络连通性,发送3个请求包,每次间隔0.2s,最长等待时间为3s:
[root@zzbaike ~] 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