ToB企服应用市场:ToB评测及商务社交产业平台

标题: Linux 中的 `ping` 命令详解 [打印本页]

作者: 八卦阵    时间: 2024-12-5 23:14
标题: Linux 中的 `ping` 命令详解

Linux 中的 ping 命令详解

ping 命令是网络测试和诊断工具中的常用命令之一,它用于查抄主机之间的网络连通性。ping 通过向目标主机发送 ICMP 回显请求(Echo Request)包,接收回显响应(Echo Reply)包,来评估网络的响应时间、是否存在丢包等。
根本用法

  1. ping <目标主机>
复制代码
例如,ping 一个域名:
  1. ping www.baidu.com
复制代码
或者 ping 一个 IP 地点:
  1. ping 114.114.114.114
复制代码
输出结果详解

  1. [root@sonar ~]# ping www.baidu.com
  2. PING www.a.shifen.com (182.61.200.7) 56(84) bytes of data.64 bytes from 182.61.200.7 (182.61.200.7): icmp_seq=1 ttl=49 time=3.42 ms64 bytes from 182.61.200.7 (182.61.200.7): icmp_seq=2 ttl=49 time=2.92 ms64 bytes from 182.61.200.7 (182.61.200.7): icmp_seq=3 ttl=49 time=3.45 ms^C--- www.a.shifen.com ping statistics ---3 packets transmitted, 3 received, 0% packet loss, time 2002msrtt min/avg/max/mdev = 2.921/3.267/3.457/0.249 ms[root@sonar ~]#
复制代码
在这个 ping 结果中,可以看到向 www.baidu.com 发出的 ICMP 请求经过解析后指向了 www.a.shifen.com,它对应的 IP 地点是 182.61.200.7。具体输出如下:
1. 根本信息


2. 每个 ICMP 响应的信息


具体的 ICMP 响应:

3. 统计信息

当你通过 Ctrl+C 克制 ping 后,会显示一段统计信息:

4. RTT(来回时间)统计


ping 的工作原理

ping 通过发送 ICMP 回显请求包,并等待目标主机的 ICMP 回显应答包来判断目标主机是否在线,同时通过计算来回时间来评估网络延迟。主要步骤如下:
3. 常用选项及其功能

以下是一些常用的 ping 选项:
参数作用示例-c指定发送的数据包数量ping -c 4 www.baidu.com
-i设置每次 ping 之间的间隔时间(默认 1 秒)ping -i 0.5 www.baidu.com-s设置 ICMP 数据包的大小(字节)ping -s 1000 www.baidu.com
-t设置 IP 数据包的生存时间(TTL 值)ping -t 64 www.baidu.com-W设置等待每次复兴的时间(秒)ping -W 3 www.baidu.com-q启动静默模式,仅显示开始和结束的统计信息ping -q www.baidu.com-f开启“flood”模式,每秒发送大量 ping,实用于压力测试ping -f www.baidu.com-v显示详细输出信息ping -v www.baidu.com 4. 示例分析

示例 1:根本利用

  1. ping -c 4 www.baidu.com
复制代码
输出:
  1. [root@sonar ~]# ping -c 4 www.baidu.com
  2. PING www.a.shifen.com (182.61.200.7) 56(84) bytes of data.64 bytes from 182.61.200.7 (182.61.200.7): icmp_seq=1 ttl=49 time=3.28 ms64 bytes from 182.61.200.7 (182.61.200.7): icmp_seq=2 ttl=49 time=2.97 ms64 bytes from 182.61.200.7 (182.61.200.7): icmp_seq=3 ttl=49 time=3.11 ms64 bytes from 182.61.200.7 (182.61.200.7): icmp_seq=4 ttl=49 time=3.00 ms--- www.a.shifen.com ping statistics ---4 packets transmitted, 4 received, 0% packet loss, time 3003msrtt min/avg/max/mdev = 2.973/3.093/3.281/0.133 ms[root@sonar ~]#
复制代码
解释:

示例 2:调整数据包大小

  1. ping -s 1000 www.baidu.com
复制代码
该命令会发送 1000 字节大小的数据包,通过增长数据包大小,可以测试网络对大数据包的传输性能。
示例 3:设置 TTL 和间隔时间

  1. ping -t 64 -i 0.2 www.baidu.com
复制代码
此命令设置 TTL 值为 64,每次请求的间隔为 0.2 秒。
示例 4:快速检测网络状态

  1. ping -q -c 4 8.8.8.8
复制代码
该命令仅输出 ping 统计信息,适合快速检测网络状态。
5. ping 的高级用法

5.1 ping 当田主机

  1. ping localhost
复制代码
这个命令用来测试主机自己的 TCP/IP 协议栈是否正常。
5.2 利用 ping 测试局域网连接

  1. ping 192.168.1.1
复制代码
可用于检测是否能够连接到路由器或其他本地网络装备。
5.3 利用 ping 进行网络压力测试

利用 -f 选项,发送大量 ICMP 请求包进行网络压力测试,但要警惕利用此选项,因为它会消耗大量带宽。
  1. ping -f 8.8.8.8
复制代码
总结

ping 命令是网络测试的基础工具,通过它可以快速判断网络是否连通、网络延迟和丢包环境。结合不同的参数,可以实现定制化的网络测试需求。合理利用 ping,可以资助我们迅速定位网络题目,特别是在网络性能优化和故障排查过程中。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4