Linux 中的 Ping 命令2025年3月17日 | 阅读 7 分钟 Ping 命令简介Ping 是 Packet Internet Groper 的缩写。此命令主要用于检查主机/服务器与主机之间的网络连接性。ping 命令以 URL 或 IP 地址作为输入,并将数据包与“PING”消息一起传输到指定的地址。然后,它会从主机/服务器收到回复。这段时间被称为“延迟”。 注意:低延迟和快速 ping 意味着更快的连接。大多数 Linux 用户都熟悉 ping 命令。几乎所有用户都知道如何以其常用形式使用此命令。但是,ping 命令还有一些其他的变体和选项。 在本文中,我们将通过一些最有用的 Linux ping 命令并附带示例进行解释。 这些 ping 命令 将适用于任何 Linux 或 Unix 发行版。我们用于提供输出样本和示例的测试系统是 Ubuntu 20.04 LTS。 前提条件
Ping 命令的工作原理在 Linux 中,ping 命令是一个通用实用程序,用于检查网络是否存在以及主机是否可达。我们可以使用此命令测试服务器是否正在运行。此外,它还有助于排除各种连接问题。 ping 命令允许我们
当我们尝试“ping”远程主机时,我们的机器开始传输 ICMP 回显请求并等待响应。当连接建立时,我们将收到所有请求的回显响应。 ping 命令的结果包括所有数据包到达目标并返回所需的时间。此外,终端会持续打印回复,直到被中断。在所有会话结束后,会有几行显示 ping 统计信息。 Ping 命令用法ping 命令的基本语法是 ping,后面跟主机名、网站名或精确的 IP 地址。 语法 因此,我们可以在终端中输入以下命令来检查远程主机是否在线 ![]() 要停止进程,我们可以使用 Ctrl+C 键。
ping 命令示例ping "localhost" 以检查本地网络如果我们遇到连接远程机器或网站的问题,我们可以 ping 本地主机以确保我们有网络连接。我们可以使用以下任何一种方法来检查本地网络接口:
注意:无论我们选择哪个选项,ping 的结果看起来都一样。示例如下 ![]() 互联网协议规范IPv6 是 IP 地址的字母数字格式,它取代了 IPv4。原因是 IPv4 地址数量有限。 要请求 IPv4 或 IPv6 地址,我们可以在 IP/主机名之前或 ping 命令之后添加 -4 或 -6。 修改 Ping 数据包之间的时间间隔所有 ping 请求之间的时间间隔(默认)为一秒。我们可以使用称为“-i”的开关来减少或增加时间。 我们使用小于 1 的值来缩短 ping 时间间隔。 ![]() 我们使用大于 1 的值来增加 ping 时间间隔。 用 ping 泛洪网络我们可以应用 ping 泛洪(flood)来测试我们在高负载下网络的性能。ping 泛洪的一个选项,即 -f,需要 root 权限才能运行。否则,我们也可以在 ping 命令中使用 sudo 选项来泛洪主机。它会尽快传输大量数据包。 命令如下: 结果会为每个传输的数据包打印一个点,为每个响应打印一个退格符。统计信息行显示 ping 命令的摘要。 更改 ping 数据包的大小在这种情况下,我们可能希望使用 -s 将数据包大小从默认的 56 (84) 字节增加。括号中的数字表示传输的 ping 字节数,包括 28 字节的头部数据包。 例如,要将数据包大小增加到 1000 字节,我们可以使用以下命令 ![]() 如果分析网络性能,此命令很有帮助。如果我们把数据包的大小增加到几千字节,我们可以分析网络链路何时开始限速。 如何修复 ping 数量ping 命令的设置(默认)是持续发送请求,直到我们中断它。我们可以通过以下两种方法来固定 ping 数量: 1. 限制 Ping 数据包的数量我们可以使用 -c 选项和一个数字来自动使 ping 命令在传输完指定数量的数据包后停止。它设置了所需的 ping 请求数量,如下例所示: ![]() 如上图所示,ping 命令将在两次请求后停止传输数据包。 2. 在 ping 命令中设置时间限制我们可以将 -w 和一个以秒为单位的时间间隔添加到我们的命令中,以便在特定时间量后停止接收 ping 结果。 例如,我们可以键入 ping 命令,以便在 25 秒后停止打印 ping 输出: ![]() ping 命令的其他用途抑制 Ping 结果,仅显示摘要统计信息 如果我们不想让屏幕被每个数据包的详细信息淹没,请使用 -q 选项仅显示摘要。 -q 开关会打印一行带有常规 ping 详细信息的摘要,然后最后给出统计信息。在此命令中,“q”字母是“quiet”(安静)结果的缩写。 ![]() 通常,我们将安静结果与其他选项结合使用。在这种情况下,我们将 ping 设置为发送 10 个数据包并抑制结果。 在每个行之前包含 Ping 结果的时间戳如果我们想记住运行 ping 命令的时间,我们可以添加 -D 开关,如下所示: ![]() 它会在每一行之前打印 Unix 格式的时间戳。 注意:我们需要使用大写的 D,因为这些命令区分大小写。如果主机可达,则发出声音 Ping当我们使用 -a 选项时,如果主机有回复,系统将播放声音。声音 Ping 对于我们在对网络问题进行故障排除时很有用,因为我们不想盯着屏幕,直到有回复为止。 ![]() 结果看起来与任何常规 ping 命令结果相似。 显示 Ping 版本我们可以检查系统中 ping 工具的版本。我们也可以将 -V 选项附加到 ping 命令以显示此实用程序的版本。 命令如下: ![]() 最常用的 Ping 命令以下是一些常用的 ping 命令: a- 如果对端可达,则发出声音。 b- 允许 ping 广播的 IP 地址。 B- 防止 ping 更改探测源地址。 c- 限制传输的 ping 请求数量。 d- 在使用的套接字上设置 SO-DEBUG 选项。 f- 通过每秒传输多个数据包来泛洪网络。 i- 描述连续数据包传输之间的时间间隔。一秒是默认值。 I- 将源的 IP 地址设置为接口的描述 IP 地址。如果 ping IPv6 链路的缺少地址,则需要此选项。我们可以使用设备名称或 IP 地址。 l- 指定要传输的多个数据包,而无需等待响应。 q- 在 ping 输出中显示 IP 地址而不是主机名。 T- 设置生存时间。 v- 提供详细的输出。 V- 显示 ping 版本并退出到新的命令提示符。 下一个主题Linux Source 命令 |
我们请求您订阅我们的新闻通讯以获取最新更新。