PING是什么及如何使用?用7个例子来学习它
ping是最常用的网络命令之一。在本文中,您将了解它是什么,如何使用它,在线ping工具以及一些实际示例。
首先,让我们看看ping是什么。
什么是ping?
ping是一个终端/shell命令实用程序,用作一种简单的方式来验证机器是否具有互联网访问权限并且可以与其他计算机或网络设备进行通信。
ping命令的一些功能包括:
- 测试网络连接:本地网络,互联网
- 故障排除网络接口卡
- 测试dns名称解析问题
大多数操作系统(如windows、macos和linux)都预装了ping,但我们将在本文中介绍安装过程。
也许,您在正常对话中见过ping,例如:“完成工作后我会ping你”。在通常的语言中,ping只是指从一台计算机发送到另一台计算机的消息。
ping是如何工作的?
ping的基本思想是确定两个设备之间的连接性。它的工作原理是源设备向目标设备发送icmp回显请求,并等待回显应答。
根据工具的不同,可以获取有关数据包丢失、往返时间(rtt)和错误(如果有)的信息。对于成功的ping来说,这些参数中最重要的是rtt,它表示信号从源设备上下行所花费的总时间。
通常,这样的工具发送多个ping命令,并输出平均rtt时间,也称为延迟。通常以毫秒为单位;这个值的一半被称为ping。
ping用法
要检查您是否安装了ping,请打开终端(macos、linux)或命令提示符(windows),然后输入“ping -help”。在大多数情况下,您应该会看到类似于以下内容:
如果你得到一个带有要使用的标志列表的帮助部分,那么你可以开始了。在一些linux发行版(如ubuntu)中,您可能会遇到麻烦,因为ping默认未安装。在ubuntu中,您可以使用以下命令安装ping:
sudo apt install iputils-ping
另一种测试系统中是否安装了ping的方法是使用which,它会返回系统中任何二进制文件的路径:
which ping
# /usr/bin/ping # 我的结果
现在您可以毫无问题地使用ping了,是时候学习其基本用法了。
ping命令连接到任何可用的主机,无论是您的本地网络还是互联网。该主机可以是另一台计算机、服务器、路由器,甚至是打印机。
ping接受一个参数,即您要连接到的网址或ip地址。例如,我们将尝试连接到yaoweibin.com。
$ ping yaoweibin.com
记住“$”符号表示我们正在使用bash shell;在powershell(windows)中,它将是“>”。您只需复制命令,而不复制美元符号。
在输入上述命令后,您应该会看到类似于下面的内容:
ping yaoweibin.com (104.27.118.115) 56(84) bytes of data.
64 bytes from 104.27.118.115 (104.27.118.115): icmp_seq=1 ttl=57 time=64.1 ms
64 bytes from 104.27.118.115 (104.27.118.115): icmp_seq=2 ttl=57 time=71.4 ms
首先,它在括号内指示了我们要连接的域名及其ip地址。然后,它向目标地址发送数据包(通常为64个字节)。要停止ping命令,只需按下ctrl + c。
如果您有一种稳定的互联网连接(我相信您肯定有,因为您正在阅读本文),您应该收到类似下面的消息:
--- yaoweibin.com ping statistics ---
3个数据包传输,3个接收,0%的数据包丢失,时间10192毫秒
这个消息显示了您对域名或ip地址进行ping测试的统计信息。如您所见,ping发送了3个数据包,并且接收到了所有数据包。这意味着您的互联网连接和提供ip地址服务的主机都正常工作。
当您访问一个网页时,同样的过程会发生,即(您的浏览器)发送带有请求的数据包,dns(域名服务)将域名转换为真实的ip地址,然后主机将页面的内容传输回给我们。当然,我们省略了许多事情,但这只是关于一个简单网络交互的解释。
作为一条专业提示,每当您需要一个可用标志(flags)列表时,可以使用man或–help标志来调用其手册页。
man ping
#手册页
ping --help
#帮助标志
ipv6 vs. ipv4
世界上的ip地址正在耗尽,因此我们开始实施ipv6(internet protocol version 6)。
简单来说,ipv4是运行网络的核心ip协议。它使用32位ip地址,包括数字点表示法。例如,谷歌的主要ip地址是8.8.8.8. ipv4自1981年以来一直存在,并且是我们习惯看到的正常协议。
另一方面,ipv6是另一个解决地址耗尽问题的ip协议。如果ipv4有高达43亿个组合,ipv6可以有340万亿亿亿个ip地址。
下面是一个ipv6地址的示例:2001:db8:3333:4444:5555:6666:7777:8888。
换句话说,由于每个物联网设备和即将到来的网站都需要新的地址,我们将在未来几年内过渡到ipv6地址。
ping已经支持ipv6地址,在一些linux发行版中,您可以找到一个专用命令,ping6,用于ipv6地址。
然而,ping ipv6地址的最佳方法是使用-6标志。
这是一个示例:
ping -6 2001:db8:3333:4444:5555:6666:7777:8888
如果您的网络尚不支持ipv6,不用担心。近年来,ipv6的采用率已经大幅增长。
使用ipv6测试工具检查您的网站是否支持ipv6。
如何在线运行ping测试?
ping的使用不仅仅是确定您是否能够连接到特定服务器,还可以获取您的请求到服务器的延迟(ping接收响应所需的时间)。在线ping工具允许您收集有关ping过程的更多数据,如
另一方面,如果您的连接出现问题,或者只是想测试来自世界各地不同位置的服务器延迟,那么在线ping工具是您的最佳选择。
查看我们的免费在线ping工具,并在伦敦、孟买和俄勒冈执行ping测试。使用此工具,您将获得重要的数据,如数据包丢失以及从服务器获取响应所需的最大和最小时间。
命令示例
让我们测试并查看此网络工具的一些常用示例。
#1. 检查您的互联网连接
这可能显而易见,但您可以通过ping(使用ping操作)像google.com这样的稳定目标主机来检查您是否可以访问互联网。
ping google.com
如果没有收到任何响应,则可能是您的互联网连接有问题。
#2. 发送指定数量的ping包
如果您使用的是unix机器,可能会遇到一个问题,即ping会无限发送数据包。使用标志-c(count),您可以指定要发送的ping次数。例如,如果您想ping三次,则可以执行以下操作。
ping -c 3 yaoweibin.com
注意:这在windows中不会发生,其中ping仅发送4个数据包
您可以使用此标志发送只有一个ping请求,并显示您要到达的目标的ip地址。
ping -c 1 google.com
#3. 在指定时间间隔内ping服务器
您可以设置发送每个数据包之间的秒数间隔。默认间隔为一秒,但您可以使用-i标志进行修改。
ping -i 3 yaoweibin.com
#4. ping本地主机
您可以ping任何ipv4地址;因此,您可以使用localhost标签或ip地址127.0.0.1来ping本地主机。
ping localhost
# 正常工作
ping 127.0.0.1
# 也正常工作
ping不会通过物理网络接口,而是通过虚拟环回。
#5. ping广播地址
您可以使用-b标志向广播地址发送请求。例如,您可以使用以下命令ping本地网络中的所有设备。
ping -b 255.255.255.255
#6. 发送特定的数据包大小
根据您的需求,可以使用-s标志更改ping的数据包大小,并指定要发送的字节数。
ping -s 70 google.com
请注意,如果发送大尺寸的数据包,可能会导致一些请求无法正常工作。
#7. 压力测试ping
-f标志会尽可能快地发送ping请求。由于用户允许的最小ping间隔为200毫秒,因此您必须以超级用户身份使用sudo命令运行。
ping -f google.com
ping google.com (142.250.78.142) 56(84) bytes of data.
ping: cannot flood; minimal interval allowed for user is 200ms
sudo ping -f -c 1000 google.com
# 在1000个ping后停止
--- google.com ping statistics ---
1000 packets transmitted, 1000 received, 0% packet loss, time 11158ms
如您所见,我使用count标志在达到1000次时停止发送请求(请注意,这只花了11秒)。
注意:使用“flood ping”时要非常小心,因为这可能会导致对您正在ping的服务器造成拒绝服务(dos)。唯一情况下您应该使用它是为了测试您的服务器在高强度环境下的情况。
ip或域名ping api
yaoweibin ping api是一个方便的工具,可以帮助您从多个位置跟踪任何ip或域名的性能。
这对于监控一系列服务器以确保最佳的终端用户体验至关重要。
更重要的是,您可以使用yaoweibin的api免费套餐轻松实现这一点,每月享受3000次api调用。
对于专业人士,高级计划还提供住宅代理、更高的请求速率和更多的api调用次数,仅需每月5美元起。
结论
ping工具实际上是互联网本身几乎一样古老的工具。使用它,您可以确定是否有活动的互联网连接,以及测试您是否能够访问web服务器或其他网络设备。