TTL是IP协议包中的一个值,它告诉网络,数据包在网络中的时间是否太长而应被丢弃。有很多原因使包在一定时间内不能被传递到目的地。解决方法就是在一段时间后丢弃这个包,然后给发送者一个报文,由发送者决定是否要重发。TTL的初值通常是系统缺省值,是包头中的8位的域。TTL的最初设想是确定一个时间范围,超过此时间就把包丢弃。由于每个路由器都至少要把TTL域减一,TTL通常表示包在被丢弃前最多能经过的路由器个数。当记数到0时,路由器决定丢弃该包,并发送一个ICMP报文给最初的发送者。
TTL 字段值可以帮助我们识别操作系统类型。
UNIX 及类 UNIX操作系统 ICMP 回显应答的 TTL 字段值为 255
Compaq Tru64 5.0 ICMP 回显应答的 TTL 字段值为 64
WINXP-32bit 回显应答的 TTL 字段值为 64
微软 Windows NT/2K/2003操作系统 ICMP 回显应答的 TTL 字段值为 128
微软 Windows 95 操作系统 ICMP 回显应答的 TTL 字段值为 32
但有些情况下有所特殊
LINUX Kernel 2.2.x & 2.4.x ICMP 回显应答的 TTL 字段值为 64
FreeBSD 4.1, 4.0, 3.4; Sun Solaris 2.5.1, 2.6, 2.7, 2.8; OpenBSD 2.6, 2.7, NetBSD HP UX 10.20 ICMP 回显应答的 TTL 字段值为 255
Windows 95/98/98SE ;Windows ME ;CMP 回显应答的 TTL 字段值为 32
Windows NT4 WRKS ;Windows NT4 Server; Windows 2000 ;Windows XP;ICMP 回显应答的 TTL 字段值为 128
//
linux 中ping baidu.com
其中的ttl应为服务器端所对应得TTL。
在windows下ping baidu.com
其中tt应为服务器(此处应为220.181.111.85)处操作系统对应ttl-从本地至服务器间得路由跳数