[转帖]学习关于TTL ping命令返回的TTL值判断操作系统

自己简单试了一下在家里与在公司里面服务器的连接:

C:\Users\Administrator>tracert oms.inspur.com

通过最多 30 个跃点跟踪
到 oms.inspur.com [218.57.146.174] 的路由:

  1     3 ms     1 ms     1 ms  192.168.0.1
  2     7 ms     9 ms     9 ms  39.82.72.1
  3     6 ms     9 ms     4 ms  221.0.4.45
  4     8 ms     9 ms    34 ms  221.0.4.42
  5    62 ms    14 ms    84 ms  218.57.145.34
  6    15 ms    10 ms    10 ms  218.57.146.174
  7    17 ms    19 ms    14 ms  218.57.146.174
  8     5 ms     9 ms     9 ms  218.57.146.174

跟踪完成。

C:\Users\Administrator>ping oms.inspur.com

正在 Ping oms.inspur.com [218.57.146.174] 具有 32 字节的数据:
来自 218.57.146.174 的回复: 字节=32 时间=14ms TTL=121
来自 218.57.146.174 的回复: 字节=32 时间=13ms TTL=121

还是有很奇怪的现象的 不知道为什么 tracert 出来是 8个 但是 减掉的却是7个

可能跟我们集团的一些设置有关系 但是 我的linux的VPS 就很准确

C:\Users\Administrator>tracert 45.62.117.86

通过最多 30 个跃点跟踪
到 45.62.117.86.16clouds.com [45.62.117.86] 的路由:

  1     5 ms     2 ms     3 ms  192.168.0.1
  2     5 ms     9 ms     4 ms  39.82.72.1
  3     8 ms     9 ms     9 ms  119.164.221.209
  4    27 ms    19 ms    19 ms  119.164.220.229
  5    45 ms    39 ms    45 ms  219.158.101.117
  6    50 ms    52 ms    46 ms  219.158.8.122
  7    50 ms    44 ms    49 ms  219.158.103.34
  8   185 ms   184 ms   186 ms  219.158.30.254
  9   180 ms   180 ms   183 ms  199.102.95.5
 10   184 ms   184 ms   179 ms  192.254.84.85
 11   208 ms   204 ms   204 ms  192.254.84.247
 12     *        *        *     请求超时。
 13   191 ms   188 ms   189 ms  45.62.117.86.16clouds.com [45.62.117.86]

跟踪完成。

C:\Users\Administrator>ping 45.62.117.86

正在 Ping 45.62.117.86 具有 32 字节的数据:
来自 45.62.117.86 的回复: 字节=32 时间=189ms TTL=51

又学到了 一种判断操作系统 的简单办法。 以后需要多多学习。

ping命令返回的TTL值判断操作系统

 来源:
https://www.cnblogs.com/ziyeqingshang/p/3769542.html

通过简单的ping命令,查看返回的TTL值来判断对方的操作系统

生存时间(TTL)是IP分组中的一个值,网络中的路由器通过察看这个值就可以判断这个IP分组是不是已经在网络中停留了很久,进而决定是否要将其丢弃。出于多种原因,一个IP分组可能在很长一段时间内不能抵达目的地。例如:错误的路由有可能导致一个IP分组在网络中无限地循环。一种解决方法就是在一定时间后丢弃这个分组,然后发送一个信息通知这个分组的发送者,由它决定是否重发这个分组。TTL的初始值一般是系统缺省值,它位于IP分组的头部,占用8个二进制位。最初设定TTL值的目的是,让它来指定一段特定的时间(以秒为单位),当这段时间耗尽的时候就将这个分组丢弃。由于每个路由器至少会让这个TTL值减一,所以这个TTL只经常用来指定在一个分组被丢弃之前允许经过的路由器数。每个路由器收到一个分组后就将它的TTL 值减一,一旦这个值被减为0,路由器就会丢弃这个分组,并发送一个ICMP信息给这个分组的最初的发送者。

UNIX 及类 UNIX 操作系统 ICMP 回显应答的 TTL 字段值为             255
Compaq Tru64 5.0 ICMP 回显应答的 TTL 字段值为                          64
Windows NT/2K操作系统 ICMP 回显应答的 TTL 字段值为              128
Windows 95 操作系统 ICMP 回显应答的 TTL 字段值为                    32

注:ICMP报文的类型包括如下:
ECHO (Request (Type 8), Reply (Type 0))--回显应答,
Time Stamp (Request (Type 13), Reply (Type 14))--时间戳请求和应答,
Information (Request (Type 15), Reply (Type16))--信息请求和应答,
Address Mask (Request (Type 17), Reply (Type 18))--地址掩码请求和应答等

不同的操作系统,它的TTL值是不相同的。默认情况下:

Linux系统的TTL值为64或255,

Windows NT/2000/XP系统的TTL值为128,

Windows 98系统的TTL值为32,

UNIX主机的TTL值为255。

公司使用的是多数为Windows 2000服务器,TTL值默认为128,如果将该值修改为255,攻击者可能会以为这个服务器是Linux系统或UNIX系统,那么他们就会针对Linux系统或UNIX系统来查找Windows 2000服务器的安全漏洞,不过他们是不会找到什么安全漏洞的,这样一来,服务器相来说增加了安全性。
  具体实现方法:
  修改TTL值其实非常简单,通过注册表编辑器就可以实现,点击“开始→运行”,在“运行”对话框中输入“regedit”命令并回车,弹出
“注册表编辑器”对话框,展开“HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\ Parameters”,找到“DefaultTTL”,将该值修改为十进制的“255”,重新启动服务器系统后即可。

通过简单的ping命令,查看返回的TTL值来判断对方的操作系统

生存时间(TTL)是IP分组中的一个值,网络中的路由器通过察看这个值就可以判断这个IP分组是不是已经在网络中停留了很久,进而决定是否要将其丢弃。出于多种原因,一个IP分组可能在很长一段时间内不能抵达目的地。例如:错误的路由有可能导致一个IP分组在网络中无限地循环。一种解决方法就是在一定时间后丢弃这个分组,然后发送一个信息通知这个分组的发送者,由它决定是否重发这个分组。TTL的初始值一般是系统缺省值,它位于IP分组的头部,占用8个二进制位。最初设定TTL值的目的是,让它来指定一段特定的时间(以秒为单位),当这段时间耗尽的时候就将这个分组丢弃。由于每个路由器至少会让这个TTL值减一,所以这个TTL只经常用来指定在一个分组被丢弃之前允许经过的路由器数。每个路由器收到一个分组后就将它的TTL 值减一,一旦这个值被减为0,路由器就会丢弃这个分组,并发送一个ICMP信息给这个分组的最初的发送者。

UNIX 及类 UNIX 操作系统 ICMP 回显应答的 TTL 字段值为             255
Compaq Tru64 5.0 ICMP 回显应答的 TTL 字段值为                          64
Windows NT/2K操作系统 ICMP 回显应答的 TTL 字段值为              128
Windows 95 操作系统 ICMP 回显应答的 TTL 字段值为                    32

注:ICMP报文的类型包括如下:
ECHO (Request (Type 8), Reply (Type 0))--回显应答,
Time Stamp (Request (Type 13), Reply (Type 14))--时间戳请求和应答,
Information (Request (Type 15), Reply (Type16))--信息请求和应答,
Address Mask (Request (Type 17), Reply (Type 18))--地址掩码请求和应答等

不同的操作系统,它的TTL值是不相同的。默认情况下:

Linux系统的TTL值为64或255,

Windows NT/2000/XP系统的TTL值为128,

Windows 98系统的TTL值为32,

UNIX主机的TTL值为255。

公司使用的是多数为Windows 2000服务器,TTL值默认为128,如果将该值修改为255,攻击者可能会以为这个服务器是Linux系统或UNIX系统,那么他们就会针对Linux系统或UNIX系统来查找Windows 2000服务器的安全漏洞,不过他们是不会找到什么安全漏洞的,这样一来,服务器相来说增加了安全性。
  具体实现方法:
  修改TTL值其实非常简单,通过注册表编辑器就可以实现,点击“开始→运行”,在“运行”对话框中输入“regedit”命令并回车,弹出
“注册表编辑器”对话框,展开“HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\ Parameters”,找到“DefaultTTL”,将该值修改为十进制的“255”,重新启动服务器系统后即可。

猜你喜欢

转载自www.cnblogs.com/jinanxiaolaohu/p/10545281.html
TTL