关于ping以及TTL的分析

本文介绍了Ping命令的工作原理及如何通过返回的数据包TTL值推断数据包在网络中经过的路由器数量。同时,还详细解释了Tracert工具如何追踪从源主机到目标主机所经过的路径。

首先介绍一下ping这个工具

ping [目标]

的意思就是向目标发送几个数据包,之后如果目标接受到一个数据包,那么目标就会向发送ping的主机返回一个数据包


比如上图,我ping了百度的服务器(windows下默认ping 4次)

字节代表数据包的大小,时间顾名思义就是返回时间,TTL这里稍微说一下:

TTL的意思就是数据包的生存时间,当然你得到的这个就是剩余的生存时间。

TTL用来计算数据包在路由器的消耗时间,因为现在绝大多数路由器的消耗时间都小于1s,而时间小于1s就当1s计算,所以数据包没经过一个路由器节点TTL都减一。

那么TTL的值一开始是什么呢?

不同的操作系统默认下TTL是不同的。

默认情况下,Linux系统的TTL值为64或255,Windows NT/2000/XP系统的TTL值为128,Windows 98系统的TTL值为32,UNIX主机的TTL值为255。

在这里不难得到百度服务器返回给我的数据包的TTL值应该为64(一般都是找2^n且离返回值最近的那个值),我得到的时候TTL为47,那么途中则经过了64-47=17个路由器。

在比如,我ping了自己的ip


可以看到我自己给自己发送数据包不需要经过路由器,所以TTL值为64,也就是说我的数据包生存时间默认为64


提到ping就不得不提到另外一个windows下的工具tracert

tracert [目标]

的意思就是得到你的主机到目标主机经过路由器的ip

如图:


tracert的原理就不多阐述了,和ICMP协议有关,利用了数据包的生存期进行路径的取得

在这里我们可以看到达到目标我们经过了15个路由器(不算终点)

注意一下有的值为 请求超时 ,原因是有的路由器是禁止ping的(所以不会返回信息)

另外由于现在网络状况很复杂,你ping不同地址可能得到的路径不同,就像我再一次ping了一下百度:


得到的结果是不是不同了?

这个和不同时间网络状况以及很多因素有关


在 Windows 系统中使用 `ping` 命令时,返回结果中的 TTL(Time To Live)值表示数据包在网络中可以经过的最大跳数[^1]。每经过一个路由器或三层设备TTL 值会减少 1。当 TTL 值减到 0 时,数据包将被丢弃,以防止数据包在网络中无限循环。 例如,如果 `ping` 返回的 TTL 值为 128,则通常表明目标主机与本地主机之间的网络路径最多允许经过 128 个跳点[^2]。该值可以帮助判断网络路径的长度以及中间路由设备的数量。 此外,`ping` 命令的输出还提供其他关键网络信息: - **往返时间 (RTT)**:显示数据包从发送到接收响应所花费的时间(以毫秒为单位)。较低的 RTT 表示网络延迟较低,性能较好。 - **数据包丢失情况**:如果部分或全部数据包未收到响应,可能表示网络拥塞、不稳定连接或目标主机不可达。 - **IP 地址解析**:`ping` 命令还可以验证是否能够正确解析目标主机名到 IP 地址,从而帮助诊断 DNS 问题[^2]。 以下是一个典型的 `ping` 命令输出示例: ``` C:\> ping www.example.com Pinging www.example.com [93.184.216.34] with 32 bytes of data: Reply from 93.184.216.34: bytes=32 time=25ms TTL=55 Reply from 93.184.216.34: bytes=32 time=24ms TTL=55 Reply from 93.184.216.34: bytes=32 time=26ms TTL=55 Reply from 93.184.216.34: bytes=32 time=25ms TTL=55 Ping statistics for 93.184.216.34: Packets: Sent = 4, Received = 4, Lost = 0 (0% loss), Approximate round trip times in milli-seconds: Minimum = 24ms, Maximum = 26ms, Average = 25ms ``` 通过分析上述输出,可以了解网络连接的状态、延迟情况路径特性。 ---
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值