标题:
关于ping 的TTL域的见解
[打印本页]
作者:
corperl
时间:
2003-1-11 15:26
标题:
关于ping 的TTL域的见解
本版主站首页上有两篇文章《PING是如何工作的》,技术文章类;《ping命令判断远程主机系统》,本站原创类。第一篇文章是比较好的,但是不是很全面(关于TTL的值的部分),第二篇文章,我个人认为不正确,把我的意思贴出来供大家参考,希望得到指正,hehe
以下是我在man ping (debian)中看到的解释:
一个IP包ttl的值代表在这个包在被扔掉之前可以经过的最大的IP路由器的数目
在现在的系统中,你可以认为该包每经过一个路由器,ttl的值就减掉1
tcp/ip规范把这个值(ttl)设为60,但是有很多系统用更小的值,例如
4.3bsd 用30,4.2bsd用15
ttl的最大的可能值是255,大多数unix系统把ICMP ECHO_REQUEST包
(我不知道该如何翻译)的值就设为255,这就是为什么你可以ping 一些站点,
但是用ftp(1) 或telnet(1)却不能到达的原因了。
正常情况下,ping会打印出它收到的包的ttl的值。当一个远程系统收到了一个
ping包时,它通常对ttl的值进行以下三种的某一种处理:
1)不改变它的值:这是4.3BSD-Tahoe release以前的Berkeley Unix系统所做的处理。在这种情况下,返回包的ttl值就等于255-这个回路中路由器的个数。
2)设置ttl的值为255:这是现在的Berkeley Unix系统所做的处理。在此种情况下,返回包的ttl值就等于255-从远程主机到本地所经过的路由器的数目(单程的)。
3)设置ttl的值为别的数:一些机器使用TCP包的值作为ICMP包的,例如,30 或60.还有一些系统用别的值,这就无从得知了
作者:
corperl
时间:
2003-1-11 16:56
标题:
关于ping 的TTL域的见解
修改两处:
第一行前四个字应为“本站主站”,而不是“本版主站”
第二处在五六行处,“一个IP包ttl的值代表在这个包在被扔掉之前可以经过的最大的IP路由器的数目”应该为“一个IP包ttl的值代表在这个包在被扔掉之前可以经过的最多的IP路由器的数目”
作者:
blackghost
时间:
2003-1-11 23:31
标题:
关于ping 的TTL域的见解
呵呵,英雄所见略同,以前我也就回答过相同的问题,你所说的是对的
欢迎光临 黑色海岸线论坛 (http://bbs.thysea.com/)
Powered by Discuz! 7.2