ping命令通常用来测试与目标主机的连通性,它通过发送ICMP ECHO_REQUEST数据包到网络主机(send ICMP ECHO_REQUEST to network hosts),并显示响应情况,这样我们就可以根据它输出的信息来确定目标主机是否可访问(但这不是绝对的)。

有些服务器为了防止通过ping探测到,通过防火墙设置了禁止ping或者在内核参数中禁止ping,这样就不能通过ping确定该主机是否还处于开启状态。

info: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的大小。

常用范例

ping网关

ping -b 127.0.0.1

ping网关


ping指定次数

ping -c 2 127.0.0.1

ping指定次数


时间间隔和次数限制的ping

# ping 2次;发送周期 0.5秒
ping -c 2 -i 0.5 127.0.0.1

时间间隔和次数限制的ping


通过域名ping公网上的站点

ping -c 5 pi.idzd.top

ping 我的树莓派


多参数使用

#发送周期 3秒;发送包大小 1024;TTL值为 255;
ping -i 3 -s 1024 -t 255 pi.idzd.top

多参数使用