您好、欢迎来到现金彩票网!
当前位置:彩之网 > 主机操作系统 >

如何根据TTL判断主机的操作系统

发布时间:2019-06-27 00:47 来源:未知 编辑:admin

  可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。

  TTL(Time To Live,生存时间)是IP协议包中的一个值,当我们使用Ping命令进行网络连通测试或者是测试网速的时候,本地计算机会向目的主机发送数据包,但是有的数据包会因为一些特殊的原因不能正常传送到目的主机,如果没有设置TTL值的话,数据包会一直在网络上面传送,浪费网络资源。数据包在传送的时候至少会经过一个以上的路由器,当数据包经过一个路由器的时候,TTL就会自动减1,如果减到0了还是没有传送到目的主机,那么这个数据包就会自动丢失,这时路由器会发送一个ICMP报文给最初的发送者。举个例子,如果一个主机的TTL是64,那么当它经过64个路由器后还没有将数据包发送到目的主机的话,那么这个数据包就会自动丢弃。

  不同的操作系统的默认TTL值是不同的, 所以我们可以通过TTL值来判断主机的操作系统,但是当用户修改了TTL值的时候,就会误导我们的判断,所以这种判断方式也不一定准确。下面是默认操作系统的TTL:

  上面的两个例子中,例1里面的TTL值是118,比较接近128,所以我们可以初步判断这台机器的操作系统是Windows操作系统,128-118=10,所以它经过了10个路由器(不包含本机路由器)到达目的主机。在例2中我们可以看到TTL值是54,比较接近64,所以可以判断出这台机器使用的是Linux的操作系统,64-54=10,所以一共经过了10个路由器(不包含本机路由器)。有人也许会问为什么第二个例子中不认为它的TTL默认值是128,然后经过了74个路由器,所以128-74=54呢?首先,路由器在选择路径的时候会选择最佳的路由路径,当然,如果你想知道它经过了哪些路由器的话,可以使用cmd命令里面的tracert命令来查看,详情如下:

  我们可以看到,如果不包含本机路由的线为本机网络IP),数据包是经过了10个路由器,而不是前面所说的74个路由器。

http://7-pia.com/zhujicaozuoxitong/160.html
锟斤拷锟斤拷锟斤拷QQ微锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷微锟斤拷
关于我们|联系我们|版权声明|网站地图|
Copyright © 2002-2019 现金彩票 版权所有