Linux ping 命令
ping命令用来测试与目标主机的连通性,常见用法如下:
[root@localhost ~]$ ping www.baidu.com # 对目标主机域名进行连通性测试 [root@localhost ~]$ ping 14.215.177.38 # 对目标主机IP进行连通性测试 [root@localhost ~]$ ping -c 5 www.baidu.com # 指定ping的次数,如果不指定会一直ping下去 [root@localhost ~]$ ping -f www.baidu.com # 洪水ping,也就是以最快的速度去ping,可以用来测试丢包率
命令参数:
-c # 设定ping的次数,如果没有设定默认会一直ping下去直到按 Ctrl + C 结束 -f # 洪水ping,也就是以最快的速度去ping,可以用来测试丢包率 -i # 设定ping的时间间隔,如 ping -i 0.5 www.baidu.com 表示每隔0.5秒ping一次,如果没有设置默认是一秒一次 -s # 设置发送的数据包的大小,默认发送56字节,最大只能设置为65507字节
输出详解:
[root@localhost ~]$ ping www.baidu.com PING www.a.shifen.com (14.215.177.38) 56(84) bytes of data. # ping的目标主机域名和IP,56表示每次ping发送的字节数,默认为56字节,84是表示56字节加上28字节的ICMP头部 64 bytes from 14.215.177.38 (14.215.177.38): icmp_seq=1 ttl=54 time=3.83 ms # 64 bytes from ... 表示接收到来自哪个域名/IP的报文 64 bytes from 14.215.177.38 (14.215.177.38): icmp_seq=2 ttl=54 time=3.85 ms # icmp_seq 表示ping序列,从1开始;如果数字不是按顺序递增也就意味着丢包了 64 bytes from 14.215.177.38 (14.215.177.38): icmp_seq=3 ttl=54 time=3.86 ms # ttl 表示生存时间,参考下面的"TTL详解" 64 bytes from 14.215.177.38 (14.215.177.38): icmp_seq=4 ttl=54 time=3.86 ms # time 表示响应时间 64 bytes from 14.215.177.38 (14.215.177.38): icmp_seq=5 ttl=54 time=3.87 ms --- www.a.shifen.com ping statistics --- # 显示ping的统计情况 5 packets transmitted, 5 received, 0% packet loss, time 4004ms # 发出去的包数 、返回的包数 、丢包率 、耗费时间 rtt min/avg/max/mdev = 3.837/3.858/3.879/0.069 ms # rtt表示往返时延,这里min/avg/max表示一个数据包最小/平均/最大的往返时延,mdev则表示偏离平均值的程度,这个值越大说明网速越不稳定
# PS:www.a.shifen.com是百度原来的域名,至于为什么会显示这个,参考:https://zhidao.baidu.com/question/16297333.html # TTL详解:TTL(Time To Live)生存时间,表示数据包在被丢弃前最多能经过的路由器个数,每经过一个路由器,TTL的值就减去一;如上面的信息中,ttl=54,表示经过了64-54=10个路由器,64是默认的值;
# Linux系统的TTL值默认为64或255,Windows NT/2000/XP系统的TTL值默认为128,Windows 98系统的TTL值默认为32,UNIX主机的TTL值默认为255