TTL是IP协议包中的一个值,它告诉网络路由器包在网络中的时间是否太长而应被丢弃。有很多原因使包在一定时间内不能被传递到目的地。例如,不正确的路由表可能导致包的无限循环。一个解决方法就是在一段时间后丢弃这个包,然后给发送者一个报文,由发送者决定是否要重发。TTL的初值通常是系统缺省值,是包头中的8
位的域。TTL的最初设想是确定一个时间范围,超过此时间就把包丢弃。由于每个路由器都至少要把TTL域减一,TTL通常表示包在被丢弃前最多能经过的路由器个数。当记数到0时,路由器决定丢弃该包,并发送一个ICMP报文给最初的发送者。
当你ping 网站时,对方网站ttl设置觉得你ping中ttl值,每经过一路由对方的ttl就减1,然后反映在你的ping的ttl中,黑客可以根据ping回的TTL值来大致判断你的操作系统:
TTL=107(WINNT);
TTL=108(win2000);
TTL=127或128(win9x);
TTL=240或241(linux);
TTL值全称是“生存时间(Time To Live)
关于sysctl:
其实/etc/sysctl.conf对应的是/proc/sys/目录,例如要修改/proc/sys/net/ipv4/ip_default_ttl的话,就修改/etc/sysctl.conf文件如下:
添加一行:net.ipv4.ip_default_ttl=数组
然后在执行一次:
#sysctl -p
就可以生效了。
阅读(801) | 评论(0) | 转发(0) |