在回答与解释来自ping操作的TTL的值有关的问题时,据说TTL值取决于操作系统而变化。 我或多或less地理解了TTL的用途,它主要用于防止networking中的环路。 在每一跳,该值递减,并且当它到达0时,如果没有到达目的地,则该分组被丢弃。 我不确定这个值是否真的与操作系统或实际的路由器或调制解调器或其他东西有关。 请给我解释一下
我的问题是:我怎么能find这些初始值? 如果有人给出一个详尽的答案(例如Windows和Unix操作系统,也可能使用terminal或其他接口),那将会很好。
一个解决方法可能是ping,并看到ttl值,然后traceroute,并计算跳数,但它不够精确…
发送到本地主机的数据包不会超过任何一跳,因此显示的ttl将作为起始值。
Windows 10
C:\>ping -4 localhost Pinging Win10Main [127.0.0.1] with 32 bytes of data: Reply from 127.0.0.1: bytes=32 time<1ms TTL=128 ....
OpenWrt 15.05
root@OpenWrt:~# ping localhost PING localhost (127.0.0.1): 56 data bytes 64 bytes from 127.0.0.1: seq=0 ttl=64 time=0.283 ms ...