概述
ping
命令可以用于测试网络是否可连通。
注:该命令虽然与 Windows 系统下的
ping
命令一样,但是 Linux 系统下的ping
命令不会自动终止,需要按Ctrl + C
或者指定选项-c
来进行终止。
语法
该命令的语法如下:
ping [选项] [域名或IP地址]
该命令支持的选项有:
选项 | 说明 |
---|---|
-d | 使用socket的so_debug功能 |
-f | 极限检测。大量且快速地发送网络封包给一台机器,看它的回应 |
-n | 只输出数值 |
-q | 不显示任何传送封包的信息,只显示最后的结果 |
-r | 忽略普通的routing table,直接将数据包送到远端主机上。通常是查看本机的网络接口是否有问题 |
-R | 记录路由过程 |
-v | 详细显示命令的执行过程 |
-c 数目 | 在发送指定数目的包后停止 |
-i 秒数 | 设定间隔几秒发送一个包给一台机器,预设值是一秒一次 |
-I 网络界面 | 使用指定的网络界面送出数据包 |
-l 前置载入 | 设置在送出要求信息之前,先行发出的数据包 |
-p 范本样式 | 设置填满数据包的范本样式 |
-s 字节数 | 指定发送的数据字节数,预设值是56,加上8字节的ICMP头,一共是64ICMP数据字节 |
-t 存活数值 | 设置存活数值 TTL 的大小 |
注:该命令常用的选项是
-c
,其他不常用。
使用
ping
的通的情况
ping
不通的情况
指定发送包次数
Linux 系统下的 ping
命令如果不指定发送包次数,就会一值发送下去,所以需要 -c
选项指定发送次数。命令格式如下:
# 语法
ping -c 指定发送次数 域名或IP地址
# 示例
ping -c 4 www.baidu.com
在脚本中判断 IP 地址有效
在脚本中判断某个指定 IP 地址是否有效,就可以使用 ping
命令来进行测试。而是否能够 ping
通的判断条件就是判断该命令执行后的返回状态码是否为 0,如果为 0 则表示正确执行可 ping
通,否则不正确执行不可 ping
通。如图所示: