每日一命令 第一天 ping

第一部分:基础用法

什么是Ping命令?

Ping命令是一个网络工具,用于测试两台计算机之间的网络连接。它通过向目标计算机发送ICMP(Internet Control Message Protocol)回显请求消息并等待回复来工作。Ping命令的名称源自声纳系统发出的声音来探测物体的原理,因为它的工作方式类似于发送声音并听取回声。

以下是基本的ping命令:

ping <host>

比如:

C:\Users\123>ping baidu.com
正在 Ping baidu.com [39.156.66.10] 具有 32 字节的数据:
来自 39.156.66.10 的回复: 字节=32 时间=34ms TTL=49
来自 39.156.66.10 的回复: 字节=32 时间=33ms TTL=49
来自 39.156.66.10 的回复: 字节=32 时间=33ms TTL=49
来自 39.156.66.10 的回复: 字节=32 时间=35ms TTL=49
39.156.66.10 的 Ping 统计信息:
    数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
    最短 = 33ms,最长 = 35ms,平均 = 33ms
解释Ping的基本结果

Ping命令的基本输出包括以下信息:

发送的字节数

在Ping命令的输出中,您会看到类似于"32 bytes from 8.8.8.8"的信息。这表示每个ICMP数据包发送了32个字节的数据到目标主机。这个字节数通常是固定的,但也可以使用Ping的高级选项来更改。

往返时间(RTT)

往返时间或响应时间是指发送ICMP请求到目标主机并接收到回复所需的时间。它以毫秒(ms)为单位表示。较低的RTT值表示网络连接速度较快,而较高的RTT值可能表示网络延迟较大。

TTL值

TTL(Time To Live)值是一个8位字段,它告诉路由器数据包在网络上可以传播的最大跳数。每经过一个路由器,TTL值就会减小。如果TTL值降到零,数据包将被丢弃,不会继续传播。根据TTL值,您可以粗略地判断目标系统是Windows系列还是UNIX/Linux系列。

  • TTL值在100~130ms之间通常表示Windows系统。
  • TTL值在240~255ms之间通常表示UNIX/Linux系统。

第二部分:Ping命令的高级选项

windows参数:

C:\Users\123>ping --help
选项 --help 不正确。

用法: ping [-t] [-a] [-n count] [-l size] [-f] [-i TTL] [-v TOS]
            [-r count] [-s count] [[-j host-list] | [-k host-list]]
            [-w timeout] [-R] [-S srcaddr] [-c compartment] [-p]
            [-4] [-6] target_name

选项:
    -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。

1、不间断地Ping -t

        -t 参数允许Ping命令不间断地Ping指定计算机,直到您手动停止它。这对于检测网络连接的稳定性非常有用。

2、指定次数 -n 2

-n参数,您可以指定要发送的数据包数量。这对于衡量网络速度非常有用。有时候想快速知道结果可以使用

3、指定ping数据包大小 -s 32

-l 参数允许您指定要发送的数据包的大小。默认情况下,Ping发送32字节的数据包,但您可以更改此值。请注意,发送过大的数据包可能会导致泛洪攻击(dos)

4、指定最大路由追踪次数 -r

要求 ping 某地址,并且最多进行二次路由跟踪。

本地为192.168.31.18 网关为192.168.31.1  但显示结果是192.168.1.2->192.168.1.1 表示192.168.1.2是我链接的路由器的上层ip,然后通信到192.168.1.1

5、指定源地址ping -S

linux 参数

补充 linux下若没有ping 命令 

 可通过安装inetutils-ping 软件包获取

-a使用可听见的ping
-A使用自适应ping
-B粘性源地址
-c<count>回复后停止
-创建套接字时的C调用connect()系统调用
-D打印时间戳
-d使用SO_DEBUG套接字选项
-e<identifier>定义ping会话的标识符,默认为随机
SOCK_RAW和为SOCK_DGRAM定义的内核
暗示使用SOCK_RAW(仅针对标识符0的IPv4)
-f洪水ping
-h打印帮助并退出
-I<interface>接口名称或地址
-发送每个数据包之间的i<interval>秒
-L抑制多播数据包的环回
-l<preload>在等待回复时发送<preload>包数
-m<mark>标记出包
-M<pmtud-opt>定义mtu发现,可以是<do|don|want>之一
-n无dns名称解析
-O报告未完成的回复
-p<pattern>填充字节的内容
-q安静输出
-Q<tclass>使用服务质量<tclass>bit
-s<size>使用<size>作为要发送的数据字节数
-S<size>使用<size>作为SO_SNDBUF套接字选项值
-定义生存时间
-U打印用户到用户延迟
-v详细输出
-V打印版本并退出
-w<最后期限>回复等待<最后期限>(秒)
-W<timeout>等待响应的时间
IPv4选项:
-4使用IPv4
-b允许ping广播
-R记录路线
-T<timestamp>定义时间戳,可以是<tsonly|tsandaddr|tsprespec>之一
IPv6选项:
-6使用IPv6
-F<flowlabel>定义流标签,默认为随机
-N<nodeinfo opt>使用icmp6节点信息查询,尝试将<help>作为参数

 1、指定次数 -c 2

 2、带时间戳 -D

3、快速ping -f

在linux下-f 选项将以尽可能快的速度发送数据包。这会导致网络泛洪,因此常被称为 “泛洪 ping”。它主要用于压力测试,应谨慎使用。由于数据包是以最快速度发送的,因此可能不会像普通 ping 那样有详细的输出。取而代之的是一连串的点,在发送和接收数据包时可能会打印出空格。

 4、指定网卡 -I

5、指定时间间隔 -i

一般来说,最小值可以是0,表示尽可能快地发送 ICMP 数据包。而最大值则取决于系统的限制,通常在几百到几千秒之间。

 6、指定等待时长 -w 

ping -w 5 baidu.com

这将会向 baidu.com 发送 ICMP 请求,并设置超时时间为 5 秒。如果在 5 秒内(继续按默认1s1个发包)没有收到来自 baidu.com 的 ICMP 回复,ping 命令将结束并显示相应的错误信息。

7、指定超时但继续ping -W

ping -W 3 example.com

这将会向 example.com 发送 ICMP 请求,并设置等待响应的超时时间为 3 秒。如果在发送 ICMP 请求后的 3 秒内没有收到来自 example.com 的 ICMP 回复,ping 命令将发送下一个 ICMP 请求。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值