Linux ping命令详解

article/2025/10/7 5:57:38




ping命令用来测试主机之间网络的连通性。执行ping指令会使用ICMP传输协议,发出要求回应的信息,若远端主机的网络功能没有问题,就会回应该信息,因而得知该主机运作正常。

语法

ping(选项)(参数)

选项

-d:使用Socket的SO_DEBUG功能;
-c<完成次数>:设置完成要求回应的次数;
-f:极限检测;
-i<间隔秒数>:指定收发信息的间隔时间;
-I<网络界面>:使用指定的网络界面送出数据包;
-l<前置载入>:设置在送出要求信息之前,先行发出的数据包;
-n:只输出数值;
-p<范本样式>:设置填满数据包的范本样式;
-q:不显示指令执行过程,开头和结尾的相关信息除外;
-r:忽略普通的Routing Table,直接将数据包送到远端主机上;
-R:记录路由过程;
-s<数据包大小>:设置数据包的大小;
-t<存活数值>:设置存活数值TTL的大小;
-v:详细显示指令的执行过程。
ping 192.168.1.9   开始;ctrl + c 停止  
  ping命令通过ICMP(Internet控制消息协议)工作;ping可以用来测试本机与目标主机是否联通、联通速度如何、稳定性如何。

一、ping用法:
  ping命令运行在命令提示符终端,用法为:“ping 参数 目标主机”。其中参数为零到多个,目标主机可以是IP或者域名。
1
2
3
4
Usage:  ping  [-aAbBdDfhLnOqrRUvV] [-c count] [-i interval] [-I interface]
             [-m mark] [-M pmtudisc_option] [-l preload] [-p pattern] [-Q tos]
             [-s packetsize] [-S sndbuf] [-t ttl] [-T timestamp_option]
             [-w deadline] [-W timeout] [hop1 ...] destination

  二、ping参数详解:
下面是爱E族(aiezu.com)收集整理的ping详细参数,可能部分不全或翻译错误,欢迎指正:
参数详解
-aAudible ping.
-A自适应ping,根据ping包往返时间确定ping的速度;
-b允许ping一个广播地址;
-B不允许ping改变包头的源地址;
-c countping指定次数后停止ping; 
-d 使用Socket的SO_DEBUG功能;
-F flow_label为ping回显请求分配一个20位的“flow label”,如果未设置,内核会为ping随机分配;
-f极限检测,快速连续ping一台主机,ping的速度达到100次每秒;
-i interval设定间隔几秒发送一个ping包,默认一秒ping一次;
-I interface指定网卡接口、或指定的本机地址送出数据包;
-l preload设置在送出要求信息之前,先行发出的数据包;
-L抑制组播报文回送,只适用于ping的目标为一个组播地址
-n 不要将ip地址转换成主机名;
-p pattern指定填充ping数据包的十六进制内容,在诊断与数据有关的网络错误时这个选项就非常有用,如:“-p ff”;
-q不显示任何传送封包的信息,只显示最后的结果
-Q tos设置Qos(Quality of Service),它是ICMP数据报相关位;可以是十进制或十六进制数,详见rfc1349和rfc2474文档;
-R记录ping的路由过程(IPv4 only);
注意:由于IP头的限制,最多只能记录9个路由,其他会被忽略;
-r忽略正常的路由表,直接将数据包送到远端主机上,通常是查看本机的网络接口是否有问题;如果主机不直接连接的网络上,则返回一个错误。
-S sndbufSet socket sndbuf. If not specified, it is selected to buffer not more than one packet.
-s packetsize指定每次ping发送的数据字节数,默认为“56字节”+“28字节”的ICMP头,一共是84字节;
包头+内容不能大于65535,所以最大值为65507(linux:65507, windows:65500);
-t ttl设置TTL(Time To Live)为指定的值。该字段指定IP包被路由器丢弃之前允许通过的最大网段数;
-T timestamp_option设置IP timestamp选项,可以是下面的任何一个:
  'tsonly' (only timestamps)
  'tsandaddr' (timestamps and addresses)
  'tsprespec host1 [host2 [host3]]' (timestamp prespecified hops). 
-M hint 设置MTU(最大传输单元)分片策略。
可设置为:
  'do':禁止分片,即使包被丢弃;
  'want':当包过大时分片;
  'dont':不设置分片标志(DF flag);
-m mark设置mark;
-v使ping处于verbose方式,它要ping命令除了打印ECHO-RESPONSE数据包之外,还打印其它所有返回的ICMP数据包;
-U Print full user-to-user latency (the old behaviour).
Normally ping prints network round trip time, which can be different f.e. due to DNS failures.
-W timeout以毫秒为单位设置ping的超时时间;
-w deadlinedeadline;
参考内容: http://ss64.com/bash/ping.html
 
三、输出格式:
linux_bash_ping.png
下图为简单的ping产生的响应内容,图中返回内容具体的含义如下:
  • ① ping目标主机的域名和IP(ping会自动将域名转换为IP)
  • ② 不带包头的包大小和带包头的包大小(参考“-s”参数)
  • ③ icmp_seq:ping序列,从1开始;
  •   ttl:剩余的ttl;
  •   time: 响应时间,数值越小,联通速度越快;
  • ④ 发出去的包数,返回的包数,丢包率,耗费时间;
  • ⑤ 最小/最大/平均响应时间和本机硬件耗费时间; 
   
四、简单例子:
1、每隔0.6秒ping一次,一共ping 5次:
1
2
3
4
5
6
7
8
9
10
11
[root@aiezu.com ~] # ping -c 5 -i 0.6 qq.com
PING qq.com (14.17.32.211) 56(84) bytes of data.
64 bytes from 14.17.32.211: icmp_seq=1 ttl=54  time =16.5 ms
64 bytes from 14.17.32.211: icmp_seq=2 ttl=54  time =17.0 ms
64 bytes from 14.17.32.211: icmp_seq=3 ttl=54  time =16.6 ms
64 bytes from 14.17.32.211: icmp_seq=4 ttl=54  time =18.3 ms
64 bytes from 14.17.32.211: icmp_seq=5 ttl=54  time =19.9 ms
--- qq.com  ping  statistics ---
5 packets transmitted, 5 received, 0% packet loss,  time  2405ms
rtt min /avg/max/mdev  = 16.520 /17 .692 /19 .919 /1 .293 ms
 
2、极限快速的使用大包ping:
  以最快的速度,使用最大的包进行ping,可用于测试目标主机的承压能力:
1
2
3
4
5
6
[root@aiezu ~] # ping -f -s 65507 10.0.0.52
PING 10.0.0.52 (10.0.0.52) 65507(65535) bytes of data.
.^
--- 10.0.0.52  ping  statistics ---
646 packets transmitted, 646 received, 0% packet loss,  time  1675ms
rtt min /avg/max/mdev  = 1.202 /2 .406 /8 .253 /0 .507 ms, ipg /ewma  2.598 /2 .318 ms
注意:此用法非常危险,65535(包头+内容)*100个包每秒=6.25MB,每秒发送6.25MB的数据,相当于50Mbps的带宽,完全可能导致目标主机拒绝服务。请勿用于非法用途,造成不良后果自负。

3、联通不稳定,丢包严重的情形:
  下面的ping发出17个ping icmp包,而只有序号为8、9、12的包收到响应信息,丢包率达82%,联通非常不稳定:
1
2
3
4
5
6
7
8
9
[root@aiezu.com ~] # ping 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=8 ttl=43  time =32.3 ms
64 bytes from 8.8.8.8: icmp_seq=9 ttl=43  time =32.2 ms
64 bytes from 8.8.8.8: icmp_seq=12 ttl=43  time =32.0 ms
^C
--- 8.8.8.8  ping  statistics ---
17 packets transmitted, 3 received, 82% packet loss,  time  16003ms
rtt min /avg/max/mdev  = 32.038 /32 .208 /32 .362 /0 .246 ms
 
4、完全无法ping通的情形:
1
2
3
4
5
[root@aiezu.com ~] # ping -c 3 9.9.9.9
PING 9.9.9.9 (9.9.9.9) 56(84) bytes of data.
--- 9.9.9.9  ping  statistics ---
3 packets transmitted, 0 received, 100% packet loss,  time  1999ms
 
五、常见错误:
1、错误一:
1
ping: packet size too large: 70000
1
2
3
4
WARNING: packet size 65508 is too large. Maximum is 65507
PING 10.0.0.52 (10.0.0.52) 65508(65536) bytes of data.
ping: local error: Message too long, mtu=1500
ping: local error: Message too long, mtu=1500
解决:
  将ping的“-s”参数设置一个更小的值,windows最大值为“65500”,linux最大值为“65507”。



http://chatgpt.dhexx.cn/article/YmRw7Vdt.shtml

相关文章

ping命令详解 ping不通处理方法

概述&#xff1a; Ping命令是一种用来测试ip层网络层可达的命令&#xff0c;属于icmp层的探查消息。当网络访问出现故障时&#xff0c;用来执行测试网络导通性&#xff0c;根据ping的结果回显来判断问题可能在哪里&#xff1f; ping命令发出包是icmp协议的查询消息&#xff0c…

ping 命令的基本使用

ping 命令的基本使用 一、主要作用二、返回值参数的意义三、ping参数四、常用1、-c2、-n3、-i4、-p5、-r6、-R7、-s8、-S9、-t10、批量ping网段 五、如何禁止他人ping你的IP 一、主要作用 1.用来检测网络的连通情况和分析网络速度 2.根据域名得到服务器ip 3.根据ping返回的TTL…

图解:Ping 命令的工作原理

目录 一、ping 命令使用的是 ICMP 协议 二、ping —— 工作原理分析 1、打个 ICMP 数据包 - 网络层 2、打个 IP 数据包 - 网络层&#xff1a; 3、加入 Mac 头信息 - 数据链路层 4、接收端 拆解包&#xff1a;物理层-数据链路层-网络层 5、接收端 构建响应包&#xff0c;…

ping命令整个过程详解

转自&#xff1a;http://wanicy.blog.51cto.com/509018/335207/ 如果你想了解ping命令的原理&#xff0c;看了这篇文章&#xff0c;你会从对网络一窍不通&#xff0c;到豁然开朗。 先看拓朴图&#xff1a; 在这里讲ping的两情况&#xff1a;一种是同一网段内&#xff0c;一种…

计算机网络——ping命令过程的详解、原理

目录 一、ping命令是用来做什么的&#xff1f; 1、ICMP是什么呢&#xff1f; 2、ping命令和icmp的关系 二、ping命令的使用 三、ping过程的原理 ping过程的详解 1、ping的是相同网段 2、使用 Cisco实验拓扑图来演示这个原理&#xff1a; 3、ping不同网段之间的ip 4、使…

ping命令讲解

ping命令个人讲解&#xff08;日常使用&#xff09; 最近正在复习、研究DOS命令时&#xff0c;了解到之前个人理解的ping命令时对其功能作用了解模糊不清&#xff0c;近日在教学视频和查找网络资料&#xff0c;对ping命令有了如下见解&#xff1a; ping命令的使用方式 使用&…

ping命令的使用

ping命令的使用 一、ping命令的基本概念 ping是一个十分基本但又十分重要的TCPIP网络工具。它的作用主要为: (1&#xff09;通常用来检测网络的连通情况和测试网络速度; (2)也可以根据域名得到相应主机的IP地址; (3&#xff09;根据ping返回的TTL值来判断对方所使用的操作系统…

ping 命令的用法大全(图文详解)

1、ping/? &#xff1a;ping命令使用帮助。&#xff08;用法如下图&#xff09; 2、无参数 ping &#xff1a;在默认情况下&#xff0c;一般都是只发送四个32字节数据包&#xff0c;通过这个命令从数据包返回的最短时间、最长时间、平均时间可以衡量网络速度、延迟&#xff0c…

Linux命令详解(1)ping命令

之前写过一个简版的ping命令介绍。看的人比较多。这次决心写一个新的&#xff0c;尽可能详细的版本。 -c选项&#xff0c;这个选项设定对目标主机地址发送请求次数。 例子1&#xff1a;对网关和一个不存在的主机地址执行ping -c2 如图&#xff0c;对网关发松了2个包&#xff…

【Ping命令的使用】

目录 前言1、Ping命令的使用方法总结 前言 ping命令常用来检测局域网内网络信号发送与接收的检测以及网络速度的检测&#xff0c;还可以用来判断网络是否存在故障等&#xff0c;对于网络运维人员来说&#xff0c;经常会用到&#xff0c;是最实用最常用的网络命令之一。 Ping命…

Ping命令详解(使用Ping这命令来测试网络连通)

相关知识点 BIOS 在计算机领域&#xff0c;BIOS是 "Basic Input Output System"的缩略语&#xff0c;译为"基本输入输出系统"&#xff0c; 与前者读法相同。计算机在运行时&#xff0c;首先会进入BIOS&#xff0c;它在计算机系统中起着非常重要的作用。一块…

Ping 命令详解

简述&#xff1a; ICMP协议是“Internet Control Message Protocol”&#xff08;因特网控制消息协议&#xff09;的缩写。它是TCP/IP协议族的一个子协议&#xff0c;用于在IP主机、路由器之间传递控制消息。 ping (Packet Internet Groper)&#xff0c;因特网包探索器&#xf…

ping命令详解 ping命令入门详解

在这个时代&#xff0c;科技越来越发达&#xff0c;网络已经越来越成为人们不可缺少的一部分。计算机也已经是很多学校的课程了&#xff0c;因为计算机技术是非常有技术性的专业&#xff0c;它其中涉及到很多专业知识&#xff0c;需要通过学习才能掌握。今日小编就为大家介绍一…

ping命令(详解)

简述&#xff1a; ICMP协议是“Internet Control Message Protocol”&#xff08;因特网控制消息协议&#xff09;的缩写。它是TCP/IP协议族的一个子协议&#xff0c;用于在IP主机、路由器之间传递控制消息。 ping (Packet Internet Groper)&#xff0c;因特网包探索器&#xf…

Ubuntu系统中清理DNS缓存

在下一篇文章中&#xff0c;我们将看一看 我们如何在Ubuntu中刷新DNS缓存。 DNS被认为是Internet连接的关键部分之一。 目的是更快地访问访问的网站。更常见的是&#xff0c;我们的机器会跟踪DNS记录&#xff0c;或者将其缓存。 迄今为止&#xff0c;IP地址的命名是DNS协议中…

DNS 缓存查看以及清除(转载)

转载地址&#xff1a;https://blog.csdn.net/cogbee/article/details/27535039 你是否因修改网站DNS解析后&#xff0c;却因本机DNS缓存而需要等待... 你是否遇到修改了本机的hosts文件后&#xff0c;必须重起firefox和ie才起作用... 其实只要清空DNS缓存这些问题都可以解决。 …

【DNS】Linux上DNS缓存的开启和清理

DNS 缓存是一个临时数据库&#xff0c;用于存储有关以前的 DNS 查找的信息。 换句话说&#xff0c;每当你访问网站时&#xff0c;你的操作系统和网络浏览器都会保留该域和相应 IP 地址的记录。 这消除了对远程 DNS 服务器重复查询的需要&#xff0c;并允许你的 OS 或浏览器快…

如何刷新DNS缓存(Windows,Mac,Chrome)

对网站进行故障排除可能是一个令人生畏的责任。当涉及到诸如刷新域名服务器&#xff08;DNS&#xff09;缓存之类的任务时&#xff0c;在您开始之前就很容易感到不知所措和困惑。 幸运的是&#xff0c;即使没有什么技术经验&#xff0c;您也可以快速&#xff0c;轻松地执行此特…

如何清除浏览器的 DNS 缓存:Chrome、Edge、Firefox、Safari

请访问原文链接&#xff1a;https://sysin.org/blog/clear-browser-dns-cache/&#xff0c;查看最新版。原创作品&#xff0c;转载请保留出处。 作者&#xff1a;gc(at)sysin.org&#xff0c;主页&#xff1a;www.sysin.org 对普通用户而言&#xff0c;关闭后重新打开浏览器一…

本机电脑清除DNS缓存+浏览器清除DNS缓存

目录 前言 一、Windows 二、Mac OS 三、Linux 四、路由器 五、浏览器 谷歌浏览器 Edge浏览器 火狐浏览器 总结语 前言 有时候在我们配置好了DNS地址后没有生效&#xff0c;可能是缓存导致的&#xff0c;这个时候我们就需要通过清除缓存的手段才能使DNS生效了&#xff…