📜  Linux Ping

📅  最后修改于: 2020-12-09 05:40:42             🧑  作者: Mango

Linux ping命令

Linux ping命令代表(Packet Internet Groper)。它检查两个节点之间的连通性,以查看服务器是否可用。它将ICMP ECHO_REQUEST数据包发送到网络主机,并在远程服务器的响应上显示数据。它检查远程主机是否已启动,或是否可以访问网络接口。此外,它用于检查两个设备之间的网络连接是否可用。它也是检查网络连接和验证网络问题的便捷工具。

Ping命令将继续执行并发送数据包,直到您中断。

要停止执行,请按“ CTRL + C”键。

句法:

ping命令支持各种命令行选项。但是,ping命令的基本语法如下:

ping 

选项:

ping命令支持以下命令行选项:

-4:以前仅使用IPv4。

-6:仅用于IPv6。

-a:用于可听见的ping。

-A:用于自适应ping。

-b:用于ping广播地址。

-B:用于不更改探针的源地址。

-c count:发送计数ECHO_REQUEST包后停止。

-d:用于在正在使用的套接字上设置SO_DEBUG选项。

-D:用于在每行之前print时间戳。

-f:代表泛洪ping。它为每个发送的ECHO_REQUEST打印一个周期,为每个收到的ECHO_REPLY打印退格。

-F流标签:仅用于IPv6。它在echo请求数据包上分配一个20位流标签(以十六进制表示)。

-h:用于显示帮助手册,其中简要说明了用法和支持选项。

-i interval:用于指定每个数据包之间的时间间隔(以秒为单位)。默认情况下,它设置为1。

-I接口:用于指定源接口。

-l preload:如果指定了preload,它将发送数据包并且不等待答复。只有超级用户(具有sudo特权的用户)才有权选择多个预加载。

-L:用于粉碎组播报文的环回。对于多播目标地址很有用。

-m mark:用于标记出局数据包。在出站处理中选择策略路由很有用。

-M pmtudisc_opt:用于选择路径MTU发现策略。

-N nodeinfo_option:仅用于IPv6。

-n:用于显示数字输出。

-O:用于在发送下一个数据包之前报告未完成的ICMP ECHO答复。

-p模式:它允许我们指定最多16个“填充”字节来填充发送的数据包,这对于确定“网络中与数据有关的问题”很有用。

-q:用于从终端安静。

-Q tos:用于设置ICMP数据报中与服务相关的比特的质量。

-r:用于绕过常规路由表。此外,它直接将其发送到连接接口上的主机。

-R:用于记录路线。

-s数据包大小:用于确定要发送的数据字节数。默认情况下,它发送56个字节。

-S sndbuf:用于设置套接字sndbuf。如果未指定,则缓冲区将选择一个以上的数据包。

-t ttl:仅用于ping,它将IP时间设置为有效。

-T时间戳选项:用于设置特殊的IP时间戳选项,例如tsonly,tsandaddr或tsprespec host1 [host2 [host3 [host4]]]。

-U:用于显示完整的用户到用户延迟。通常,ping命令显示网络往返时间。

-v:打印更详细的输出。

-V:用于显示版本信息。

-w截止时间:用于指定ping命令退出之前的超时(以秒为单位)。

-W超时:用于指定响应的等待时间(以秒为单位)。

ping命令的示例

让我们看一下ping命令的以下示例:

  • 使用DNS ping
  • 使用IP地址Ping
  • 限制数据包
  • 检查远程主机是否启动
  • 检查IPv4连接
  • 检查IPv6连接
  • 在每行之前添加时间戳
  • 指定源接口
  • 更改Ping数据包之间的时间间隔

使用DNS ping

要使用DNS检查连接性,请执行以下命令:

ping 

考虑以下命令:

ping javatpoint.com

上面的命令将ping'javatpoint.com'。考虑以下输出:

使用IP地址Ping

我们可以使用ping命令使用IP地址代替DNS。要使用IP地址ping目标,请执行以下命令:

ping 

考虑以下命令:

ping 2.2.2.2  

上面的命令将检查给定IP地址的连接性。考虑以下输出:

限制数据包

我们可以使用ping命令限制发送数据包的数量。要限制数据包,请指定“ c”选项,后跟要发送的数据包数量。它将被执行为:

ping -c    

考虑以下命令:

ping -c 5 javatpoint.com  

上面的命令将数据包限制为5。考虑以下输出:

检查远程主机是否启动。

要检查远程主机是否启动,请执行ping命令,然后执行远程服务器的主机名或IP地址。考虑以下命令:

ping javatpoint.com

上面的命令将检查与“ javatpoint.com”的连接。考虑以下输出:

从上面的输出中,命令将继续运行;我们可以通过按CTRL + C键手动中断它。

检查IPv4连接

'-4'选项用于Ipv4接口。要检查IPv4接口是否已启动,请执行以下命令:

ping -4 javatpoint.com

上面的命令将通过使用Ipv4地址显示与“ javatpoint.com”的连接。考虑以下输出:

检查IPv6连接

'-6'选项用于IPv6接口。要检查IPv6接口是否已启动,请执行以下命令:

ping 6 javatpoint.com

上面的命令将使用IPv6地址显示与“ javatpoint.com”的连接。考虑以下输出:

在每行之前添加一个时间戳。

'-D'选项用于在每行之前添加时间戳。要在每行之前添加时间戳,请执行以下命令:

ping -D javatpoint.com

上面的命令会将UNIX时间戳添加到每行的开头。考虑以下输出:

指定源接口

缺省情况下,ping命令使用默认路由发送ICMP软件包。要指定特定的源接口,请使用“ -I”选项,如下所示:

ping -I  

考虑以下命令:

ping -I enp7s0 javatpoint.com

上面的命令将使用'enp7s0'作为源接口ping javatpoint.com。考虑以下输出:

更改Ping数据包之间的时间间隔

缺省情况下,ping报文的时间间隔为一秒。我们可以根据需要设置。 “ -i”选项用于设置每个ping请求之间的时间间隔。要设置ping间隔,请执行以下命令:

ping -i 

考虑以下命令:

ping -i 1.5 www.javatpoint.com

上面的命令将每隔1.5秒请求一次ping数据包。考虑以下输出:

从上面的输出中,我们可以看到8个数据包的传输时间是1050s。