zoukankan      html  css  js  c++  java
  • 介绍ping中的TTL是什么意思

    ping是icmp报文的一种应用。用来测试网络中各设备的连通性。在这几天的实验课上,我又用到了这个非常常用的命令,但是这次我发现了一些以前没有太注意的地方,那就是我在Ping不同的地址时所返回的TTL值是不同的。如下:

    C:Documents and SettingsAdministrator>ping 192.168.12.254

    Pinging 192.168.12.254 with 32 bytes of data:

    Reply from 192.168.12.254: bytes=32 time=245ms TTL=64
    Reply from 192.168.12.254: bytes=32 time=214ms TTL=64
    Reply from 192.168.12.254: bytes=32 time=251ms TTL=64
    Reply from 192.168.12.254: bytes=32 time=236ms TTL=64

    Ping statistics for 192.168.12.254:
        Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
    Approximate round trip times in milli-seconds:
        Minimum = 214ms, Maximum = 251ms, Average = 236ms

    .C:Documents and SettingsAdministrator>ping 202.99.160.68

    Pinging 202.99.160.68 with 32 bytes of data:

    Reply from 202.99.160.68: bytes=32 time=242ms TTL=250
    Reply from 202.99.160.68: bytes=32 time=250ms TTL=250
    Reply from 202.99.160.68: bytes=32 time=247ms TTL=250
    Reply from 202.99.160.68: bytes=32 time=237ms TTL=250

    Ping statistics for 202.99.160.68:
        Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
    Approximate round trip times in milli-seconds:
        Minimum = 237ms, Maximum = 250ms, Average = 244ms

    C:Documents and SettingsAdministrator>ping www.baidu.com

    Pinging www.a.shifen.com [202.108.22.5] with 32 bytes of data:

    Reply from 202.108.22.5: bytes=32 time=277ms TTL=52

    Reply from 202.108.22.5: bytes=32 time=294ms TTL=52

    Reply from 202.108.22.5: bytes=32 time=268ms TTL=52

    Reply from 202.108.22.5: bytes=32 time=260ms TTL=52

    Ping statistics for 202.108.22.5:

        Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),

    Approximate round trip times in milli-seconds:

        Minimum = 260ms, Maximum = 294ms, Average = 274ms

    上面所ping的地址中第一个地址(192.168.12.254)是我的电脑所在局域网的网关地址;第二个地址(202.99.160.68)是我的电脑的dns服务器的地址。最后一个大家都很熟悉了,就是百度网站的地址喽

           在这里我要说明的是不同的Rpely消息中的不同的TTL值的由来。TTL 是数据包为了防止数据包在网络中无限制的循环,而设定的网络数据包在网络传输中最大的转发次数。因为每转发一次在路由器,就会转向下一跳,所以,又通常称为最大跳数。具体的含义是这样的。我们本地机器会发出一个数据包,数据包经过一定数量的路由器传送到目的主机,但是由于很多的原因,一些数据包不能正常传送到目的主机,那如果不给这些数据包一个生存时间的话,这些数据包会一直在网络上传送,导致网络开销的增大。当数据包传送到一个路由器之后,TTL就自动减1,如果减到0了还是没有传送到目的主机,那么就自动丢失。例如:你定义了数据包的TTL为64.那么在你的数据包被转发了64次,也就是经过了63个中间路由器后,还没有到达目的网络,那么,你的电脑就会显示Requet time out (请求超时)了。例如:你定义了数据包的TTL为64.那么在你的数据包被转发了64次,也就是经过了63个中间路由器后,还没有到达目的网络,那么,你的电脑就会显示Requet time out (请求超时)了。这就是TTL的意思了

          在此补充一点,由于不同的操作系统所定义的TTL是不同的,一般有如下规则:默认情况下,Linux系统的TTL值为64或255,Windows NT/2000/XP系统的TTL值为128,Windows 98系统的TTL值为32,UNIX主机的TTL值为255。

  • 相关阅读:
    查看端口有没有被占用
    微信公众号2()
    How to insert a segment of noise to music file
    puppet practice
    Docker Commands
    LempelZiv algorithm realization
    The algorithm of entropy realization
    Java network programmingguessing game
    Deploy Openstack with RDO and Change VNC console to Spice
    puppet overview
  • 原文地址:https://www.cnblogs.com/zhangkaimin/p/4897226.html
Copyright © 2011-2022 走看看