最近我发现发送给我的一些 ping 出现TTL错误。当有人 ping 我的计算机时,它会TTL为每个数据包显示不同的值。
例如,ping.eu 显示:
--- PING 78.188.216.242 (78.188.216.242) 56(84) bytes of data. ---
64 bytes from 78.188.216.242: icmp_req=1 ttl=112 time=78.7 ms
64 bytes from 78.188.216.242: icmp_req=2 ttl=17 time=78.8 ms
64 bytes from 78.188.216.242: icmp_req=3 ttl=206 time=78.7 ms
64 bytes from 78.188.216.242: icmp_req=4 ttl=212 time=78.7 ms
--- 78.188.216.242 ping statistics ---
packets transmitted 4
received 4
packet loss 0 %
time 3002 ms
--- Round Trip Time (rtt) ---
min 78.734 ms
avg 78.782 ms
max 78.861 ms
mdev 0.050 ms
Run Code Online (Sandbox Code Playgroud)
(有时我也会看到request timed out和TTL expired错误。)
如您所见,每个数据包都有不同的TTL值。那是问题吗?如果是,是我的网络配置引起的,还是我的ISP引起的?在这种情况下我能做什么?
如果重要的话,我使用WRT54GH带ZyXEL ADLS桥接调制解调器的家用路由器,连接三台 Windows 计算机。你可以尝试用我的 IP 地址 ping 我,78.188.216.242.
我从美国 ping 你的 IP 地址得到了类似的结果。
当我 ping 81.212.77.58 时,你上游的下一跳,我假设是你的 ISP 的设备,我每次都得到 243 的 TTL。这显然是错误的。
上游的下一跳是合理的,每次的 TTL 为 54。
基于这些结果,我强烈怀疑您的 ISP 正在处理数据包。