ping命令常用参数

本文概述了ping命令的基本原理,包括发送回显请求和计算往返时间,并介绍了Linux下ping命令的常用参数,如-s设置包大小,-i设置间隔,-c指定次数,以及解决ping域名慢问题的方法,如禁用反向DNS查询。此外,还提供了Ubuntu安装ping命令和指定来源IP的实例。
摘要由CSDN通过智能技术生成

简述ping命令原理和作用

参考: https://www.zhihu.com/question/266846392

ping命令是主机向目标主机发送一个icmp协议的回显报文请求,请求中附带有请求方主机的时间戳T1,目标主机收到请求后会记录时间戳T2

# 计算过程
方案一:本地记录时间戳
客户端发出Ping包1,本地记录时间戳T1,当ping 包1返回时,记录时间戳T2,那么

RTT = T2-T1

就得到这个RTT。

方案二:Ping包的Payload里记录发出时间戳T1

当Ping包1被弹回时,记录当前时间T2,则

RTT = T2-T1

也可以得到这个RTT( Round Trip Time)[计算机网络]各种时延的计算
发送时延=数据帧长度(b) /信道带宽(b/s) [信道带宽就是数据率]
传播时延=信道长度(m)/电磁波在信道上的传播速率(m/s)
总时延=发送时延+传播时延+处理时延+排队时延
# ping命令的作用
ping命令可以获取网络质量,例如网络时延为多少毫秒!假定ping值高于100ms,则网络质量不太好。
可以获取操作系统版本.
例如:通过返回的ttl值识别主机操作系统
	ttl=255
		Unix
	ttl=64
		Linux
	ttl=128
		Windows2000以上
	ttl=32
		Windows95

Linux下ping常用参数

参考 https://zhuanlan.zhihu.com/p/23973587

  • -d:使用Socket的SO_DEBUG功能;
  • -c<完成次数>:设置完成要求回应的次数;
  • -f:极限检测;
  • -i<间隔秒数>:指定收发信息的间隔时间;
  • -I<网络界面>:使用指定的网络界面送出数据包;
  • – l<前置载入>:设置在送出要求信息之前,先行发出的数据包;
  • -n:只输出数值;
  • -p<范本样式>:设置填满数据包的范本样式;
  • -q:不显示指令执行过程,开头和结尾的相关信息除外;
  • -r:忽略普通的Routing Table,直接将数据包送到远端主机上;
  • -R:记录路由过程;
  • -s<数据包大小>:设置数据包的大小;
  • -t<存活数值>:设置存活数值TTL的大小;
  • -v:详细显示指令的执行过程。
## -s 指定size
## -i interval 指定收发信息的间隔时间
## -c 指定发送报文的次数
ping -s 4096 -i 1 -c 1000 130.10.0.77

# ping -i 3 发送周期为 3秒 -s 设置发送包的大小为1024 -t 设置TTL值为 255
ping -i 3 -s 1024 -t 255 192.168.120.206

Ubuntu安装ping命令

# Ubuntu安装ping命令
apt install iputils-ping -y

指定来源ip

## -l 指定来源ip(必须是本机绑定的一个ip)
ping -l 192.168.1.10 8.8.8.8

ping指定次数 -c

# ping -c 次数 主机
ping -c 10 114.114.114.114

间隔秒数-i

设定间隔几秒送一个网络封包给一台机器,预设值是一秒送一次。

# ping -i 0.1秒发送一次 主机
ping -i 0.1 10.147.17.80

指定发包字节数-s

指定发送的数据字节数,预设值是56,加上8字节ICMP头,默认值一共是64ICMP数据字节。

#ping -s 发送1024字节数 主机 
ping -s 1024 10.147.17.80

存活数值-t

设置存活数值TTL的大小。

# ping -t 设置ttl为255 主机
ping -t 255 114.114.114.114

ping域名很久才解析到ip

参考: https://blog.woofoo.cn/2021/01/10/linux-ping域名很慢的其中一个原因/
https://www.xiaoz.me/note/225.html


Linux下ping域名时很久才解析到ip,解析到ip后时延又不高

ping域名时,ping结果返回很慢,但ping这个域名的ip,返回结果却很快。
原因: https://www.cnblogs.com/276815076/p/6374298.html
当每次ping完得到响应之后,ping程序会尝试一次反向dns查询(reverse dns lookup)来获取“64 bytes from”后面的域名,如果查询速度很慢的话,就会给人似乎延迟很大的感觉,其实这也是ping感觉慢,但是每次ping的响应时间却并不慢的原因。

解决办法: 使用-n参数禁止反向DNS查询

# 禁用反向解析-n
ping -n 域名

ping域名慢解决办法

/etc/nsswitch.conf文件的作用是控制系统如何查找和解析各种不同类型的名称。通过编辑该文件,您可以控制系统如何查找用户主机服务等信息。

vi /etc/nsswitch.conf

# 注释这一行
## 系统将首先从/etc/hosts文件中查找主机名,
## 然后使用mdns4_minimal(一种用于本地网络的mDNS协议)查找主机名,## 如果找不到,则返回,如果仍然找不到,则使用DNS协议进行查找。
#hosts:          files mdns4_minimal [NOTFOUND=return] dns mdns4

# 修改成files dns
## 系统将首先从/etc/hosts文件中查找主机名,
## 然后使用DNS协议进行查找
hosts:          files dns
ping命令有多个参数,以下是一些常用参数: -t:指定要ping的主机,直到停止。要查看统计信息并继续操作,请键入Ctrl Break;要停止,请键入Ctrl C。 -a:将地址解析为主机名。 -n count:指定要发送的回显请求的数量。 -l size:指定发送缓冲区的大小。 -f:在数据包中设置"不分段"标记(仅适用于IPv4)。 -i TTL:指定生存时间。 -v TOS:指定服务类型(仅适用于IPv4,该设置已被弃用,对IP标头中的服务类型字段没有任何影响)。 -r count:记录计算跃点的路由(仅适用于IPv4)。 -s count:计算跃点的时间戳(仅适用于IPv4)。 -j host-list:与主机列表一起使用的松散源路由(仅适用于IPv4)。 -k host-list:与主机列表一起使用的严格源路由(仅适用于IPv4)。 -w timeout:等待每次回复的超时时间(毫秒)。 -R:同样使用路由标头测试反向路由(仅适用于IPv6)。根据RFC 5095,此路由标头已被弃用。如果使用此标头,某些系统可能会丢弃回显请求。 -S srcaddr:指定要使用的源地址。 -c compartment:路由隔离舱标识符。 -p:Ping Hyper-V网络虚拟化提供程序地址。 -4:强制使用IPv4。 -6:强制使用IPv6。 <span class="em">1</span><span class="em">2</span> #### 引用[.reference_title] - *1* [ping 命令参数详解](https://blog.csdn.net/qq_37131073/article/details/109492541)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [Ping命令参数详解](https://download.csdn.net/download/xiaopanyan123/7771535)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

识途老码

赞赏是第一生产力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值