打印本文 打印本文  关闭窗口 关闭窗口  
ping结果中TTL是什么意思
作者:Jackie  文章来源:网络文摘  点击数  更新时间:2010/5/25 20:09:35  文章录入:admin  责任编辑:admin

      ping命令我们是常用的,但是你知道TTL是什么意思么?记得以前我在哪里看到我们可以从TTL的值中可以看出目的主机的操作系统类型,是这样的吗?下面就说明TTL的真实含义。
      以下就是ping 瓷都网的返回值:
C:\Documents and Settings\Administrator>ping www.cidu.net
Pinging www.cidu.net [218.85.138.86] with 32 bytes of data:
Reply from 218.85.138.86: bytes=32 time=27ms TTL=248
Reply from 218.85.138.86: bytes=32 time=28ms TTL=248
Reply from 218.85.138.86: bytes=32 time=25ms TTL=248
Reply from 218.85.138.86: bytes=32 time=27ms TTL=248
Ping statistics for 218.85.138.86:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
    Minimum = 25ms, Maximum = 28ms, Average = 26ms
      从结果中我们可以看出瓷都网的服务器的IP地址是:218.85.138.86,所用的时间是26ms等,那TTL等于248是什么意思呢?
      TTL是生存时间的意思,就是说这个ping的数据包能在网络上存在多少时间。当我们对网络上的主机进行ping操作的时候,我们本地机器会发出一个数据包,数据包经过一定数量的路由器传送到目的主机,但是由于很多的原因,一些数据包不能正常传送到目的主机,那如果不给这些数据包一个生存时间的话,这些数据包会一直在网络上传送,导致网络开销的增大。当数据包传送到一个路由器之后,TTL就自动减1,如果减到0了还是没有传送到目的主机,那么就自动丢失。就像上面ping瓷都网的时候第三次那样,出现Request timed out的情况,增加TTL来减少网络资源的消耗。默认情况下,Linux系统的TTL值为64或255,Windows NT/2000/XP系统的TTL值为128,Windows 98系统的TTL值为32,UNIX主机的TTL值为255。(这个是从网络上找到的),瓷都网的目的主机是采用windows 2003系统的,在这里可能TTL值是255,而不是FreeBSD的64,UNIX主机的255,所以在从我这里到目的主机经过了64-51=13个路由。当我们不知道目的主机的操作系统的时候我们可以根据TTL来猜测,但是不一定100%准确,如果目的主机是windows,但是经过了比如75个路由器,那么TTL的返回值是128-75=53,那么你可能认为这个目的主机是Linux系统,但是一般不会经过那么多的路由器,所以通过TTL来判断目的主机的操作系统还是有一定的依据的。
打印本文 打印本文  关闭窗口 关闭窗口