TTL协议是什么?详解TTL协议
搞网站的朋友都知道ping命令是非常有用的。ttl是什么意思?这样的问题,其实所知道的TTL更多的是关于网络方面的,比如我们在ping ip或ping 网站的时候都可以看到有TTL数值,如下图,相信网友所问的问题应该是ping中的TTL什么意思吧,下面我们来详细介绍下TTL是什么意思。希望对您有所帮助!
一(yi)、TTL是什么(me)意思(si)?
TTL是一(yi)个ip协(xie)议的(de)值,它告诉(su)网络,数据(ju)包在(zai)网络中的(de)时间(jian)是否太长而(er)应被丢弃(qi)。有很(hen)多原因(yin)使包在(zai)一(yi)定时间(jian)内(nei)不能被传递到目的(de)地。
TTL 的(de)(de)(de)初(chu)值通常是(shi)系(xi)统缺省值,是(shi)包头(tou)中(zhong)的(de)(de)(de)8位的(de)(de)(de)域。TTL的(de)(de)(de)最(zui)(zui)初(chu)设想是(shi)确定一个时(shi)间(jian)范围,超过(guo)此时(shi)间(jian)就(jiu)把包丢弃(qi)。由于每个路由器都至少要(yao)把TTL域减(jian)一,TTL通常表示包在(zai)被丢弃(qi)前最(zui)(zui)多能经过(guo)的(de)(de)(de)路由器个数(shu)。当记数(shu)到(dao)0时(shi),路由器决定丢弃(qi)该包,并(bing)发送一个ICMP报(bao)文(wen)给最(zui)(zui)初(chu)的(de)(de)(de)发送者。
在(zai)网(wang)络(luo)(luo)中主要是(shi)指(zhi)ping网(wang)速(su)中的(de)(de)TTL数值,ping命令(ling)(ling)相(xiang)信熟悉网(wang)络(luo)(luo)的(de)(de)朋友都不(bu)会陌生,也为大家(jia)介绍(shao)过不(bu)少ping命令(ling)(ling)相(xiang)关知识(shi),在(zai)网(wang)络(luo)(luo)应用(yong)(yong)中,ping网(wang)速(su)与IP地址等都是(shi)非常(chang)常(chang)用(yong)(yong)的(de)(de)命令(ling)(ling),通(tong)过ping ip或网(wang)址可以(yi)知道网(wang)络(luo)(luo)是(shi)否畅通(tong)或者(zhe)网(wang)络(luo)(luo)传输(shu)质(zhi)量如何等,是(shi)网(wang)络(luo)(luo)技术(shu)人员常(chang)用(yong)(yong)的(de)(de)检测网(wang)络(luo)(luo)命令(ling)(ling)。如下图(tu)是(shi)ping比(bi)克尔网(wang)网(wang)速(su)截图(tu):
二、ping网(wang)速中的TTL是什么意思
从(cong)上图(tu)可以看出,ping电(dian)脑百事网(wang)(wang)网(wang)(wang)速中的(de)(de)(de)TTL=114,那么(me)这(zhei)个(ge)(ge)TTL数(shu)值(zhi)是(shi)什么(me)意思呢?通(tong)俗的(de)(de)(de)说(shuo),TTL是(shi)IP协议包(bao)中的(de)(de)(de)一(yi)个(ge)(ge)值(zhi),它告诉网(wang)(wang)络,数(shu)据包(bao)在(zai)(zai)(zai)网(wang)(wang)络中的(de)(de)(de)时间(jian)(jian)是(shi)否太长而应被(bei)(bei)丢(diu)弃(qi)。有很多原因使包(bao)在(zai)(zai)(zai)一(yi)定(ding)(ding)时间(jian)(jian)内不能被(bei)(bei)传(chuan)递到(dao)目的(de)(de)(de)地。解(jie)决方法就是(shi)在(zai)(zai)(zai)一(yi)段时间(jian)(jian)后丢(diu)弃(qi)这(zhei)个(ge)(ge)包(bao),然后给发送(song)者(zhe)(zhe)一(yi)个(ge)(ge)报(bao)文,由发送(song)者(zhe)(zhe)决定(ding)(ding)是(shi)否要重发。TTL的(de)(de)(de)初值(zhi)通(tong)常是(shi)系统缺省值(zhi),是(shi)包(bao)头中的(de)(de)(de)8位(wei)的(de)(de)(de)域(yu)。TTL的(de)(de)(de)最初设想是(shi)确定(ding)(ding)一(yi)个(ge)(ge)时间(jian)(jian)范围,超过(guo)此时间(jian)(jian)就把(ba)包(bao)丢(diu)弃(qi)。由于每个(ge)(ge)路由器都至少(shao)要把(ba)TTL域(yu)减一(yi),TTL通(tong)常表示包(bao)在(zai)(zai)(zai)被(bei)(bei)丢(diu)弃(qi)前最多能经(jing)过(guo)的(de)(de)(de)路由器个(ge)(ge)数(shu)。当记数(shu)到(dao)0时,路由器决定(ding)(ding)丢(diu)弃(qi)该(gai)包(bao),并发送(song)一(yi)个(ge)(ge)ICMP报(bao)文给最初的(de)(de)(de)发送(song)者(zhe)(zhe)。
在(zai)比如(ru)(ru)我(wo)ping一下学无忧的网址(zhi),点(dian)击“开(kai)始菜(cai)单--运行(xing)”,在(zai)运行(xing)输(shu)(shu)入(ru)框输(shu)(shu)入(ru)cmd命(ming)令,然后执(zhi)行(xing)该命(ming)令即(ji)可打(da)开(kai)命(ming)令提示符运行(xing)窗口,然后输(shu)(shu)入(ru)“ping www.xue51.com”命(ming)令(双引(yin)号除外(wai)),输(shu)(shu)入(ru)之后就会(hui)返(fan)回了TTL值。如(ru)(ru)图(tu)所示:
上面丢失度是(shi)0%,说明网(wang)址能(neng)正常访问打开,如果发现接受不了,数据全(quan)部丢失的话,那说明服务器空(kong)间上除(chu)了问题,这就(jiu)要联(lian)系你的空(kong)间服务商(shang)。
TTL值(zhi)(zhi)(zhi)默(mo)认(ren)情况下(xia),Linux系(xi)(xi)统的(de)(de)(de)(de)(de)(de)(de)(de)TTL值(zhi)(zhi)(zhi)为(wei)64或(huo)255,Windows NT/2000/XP系(xi)(xi)统的(de)(de)(de)(de)(de)(de)(de)(de)默(mo)认(ren)TTL值(zhi)(zhi)(zhi)为(wei)128,Win7系(xi)(xi)统的(de)(de)(de)(de)(de)(de)(de)(de)TTL值(zhi)(zhi)(zhi)是(shi)64,Windows 98系(xi)(xi)统的(de)(de)(de)(de)(de)(de)(de)(de)TTL值(zhi)(zhi)(zhi)为(wei)32,UNIX主机(ji)(ji)(ji)(ji)(ji)的(de)(de)(de)(de)(de)(de)(de)(de)TTL值(zhi)(zhi)(zhi)为(wei)255。(这个(ge)是(shi)从网络上找到的(de)(de)(de)(de)(de)(de)(de)(de)),曙(shu)光博客的(de)(de)(de)(de)(de)(de)(de)(de)目的(de)(de)(de)(de)(de)(de)(de)(de)主机(ji)(ji)(ji)(ji)(ji)是(shi)采用FreeBSD系(xi)(xi)统的(de)(de)(de)(de)(de)(de)(de)(de)(可(ke)能(neng)已经更换),在(zai)这里可(ke)能(neng)TTL值(zhi)(zhi)(zhi)是(shi)64,而不是(shi)UNIX主机(ji)(ji)(ji)(ji)(ji)的(de)(de)(de)(de)(de)(de)(de)(de)255,所以在(zai)从这里到目的(de)(de)(de)(de)(de)(de)(de)(de)主机(ji)(ji)(ji)(ji)(ji)经过了64-51=13个(ge)路由(此处容易引(yin)起误区,64是(shi)代表 FressBSD的(de)(de)(de)(de)(de)(de)(de)(de)默(mo)认(ren)TTL还(hai)是(shi)发起方的(de)(de)(de)(de)(de)(de)(de)(de)TTL,这个(ge)TTL初始值(zhi)(zhi)(zhi)应(ying)该(gai)是(shi)被PING方的(de)(de)(de)(de)(de)(de)(de)(de),我认(ren)为(wei)应(ying)该(gai)是(shi)代表发起方的(de)(de)(de)(de)(de)(de)(de)(de)TTL,因为(wei)TTL是(shi)由发送(song)主机(ji)(ji)(ji)(ji)(ji)设置。
简单(dan)概(gai)括的说,ttl是(shi)一个(ge)时(shi)间(jian)值,TTL是(shi)发出信息再返回的时(shi)间(jian)。是(shi)一个(ge)生存周期,他(ta)不能(neng)计算途径路由(you)(you),他(ta)与路由(you)(you)没关系(xi),与服务器操作系(xi)统有关系(xi),通过观察TTL值的大小,可以粗略的判断出目标的主(zhu)机系(xi)统类型(xing),一般情况下:
TTL值在(zai)100至130之间,主机系统为WINDOWS
TTL值在240至255之间,主机系统为(wei)UNIX或(huo)LINUX
所(suo)以(yi)我们会发现ping不同(tong)网站或(huo)不同(tong)服务器主(zhu)(zhu)机得(de)到的(de)TTL数值是(shi)不一样(yang)的(de),主(zhu)(zhu)要是(shi)由服务器主(zhu)(zhu)机的(de)操(cao)作(zuo)系(xi)统决定,一般我们只要简单(dan)了(le)解这些知识(shi)就可以(yi)说(shuo)基本懂TTL是(shi)什(shen)么意思了(le)。
三(san)、TTL值参考:
TTL时(shi)(shi)间(jian)越(yue)长(zhang),缓存时(shi)(shi)间(jian)越(yue)长(zhang),更(geng)新越(yue)不容易及(ji)时(shi)(shi)生效(xiao)。 增大TTL值,以节约(yue)域名解析(xi)时(shi)(shi)间(jian),给(ji)网站(zhan)访问加速。
TTL设置的小(xiao)一些(xie),生(sheng)效时间就(jiu)会快一些(xie)。二.减小(xiao)TTL值,减少更换空间时的不可访(fang)问时间。关于(yu)网(wang)络词语的ttl值也有tt恋,说白了女同(tong)性恋者,当(dang)这些(xie)都是(shi)题外话(hua)
TTL其他意思方(fang)面,在电(dian)路中有(you)TTL电(dian)平(ping),TTL电(dian)平(ping)信(xin)号被(bei)利用的最多(duo)是(shi)因为通常数(shu)据表示采用二(er)进制规定,+5V等价(jia)于逻(luo)辑“1”,0V等价(jia)于逻(luo)辑“0”,这(zhei)被(bei)称(cheng)做(zuo)TTL(晶(jing)体管(guan)-晶(jing)体管(guan)逻(luo)辑电(dian)平(ping))信(xin)号系统,这(zhei)是(shi)计算机处理(li)器控制的设备内部(bu)(bu)各部(bu)(bu)分之间通信(xin)的标(biao)准技术。在生活方(fang)面,TTL还被(bei)指:女(nv)同(tong)性恋(lian),T意义上为老公,P则是(shi)受照顾的老婆(po),TTL就是(shi)指TT恋(lian),即两个T在一起,T一般是(shi)长得很像男(nan)生的女(nv)生。
TTL是什么(me)意思(si)这(zhei)里算(suan)是比较全(quan)面的(de)为大家总结(jie)了一下,其(qi)实更多(duo)的(de)时候我(wo)们是指(zhi)ping网(wang)速中的(de)TTL数值(zhi),阅读完本文相(xiang)信大家对TTL有(you)着比较清楚的(de)认识吧。
下(xia)面是(shi)其它网友的(de)补充:
TTL(Time-To-Live)的作用是限制数(shu)据(ju)包在(zai)网络(luo)中存在(zai)的时间,防止数(shu)据(ju)包不(bu)断(duan)的在(zai)IP互联网络(luo)上循环(huan)。
TTL指定数(shu)据(ju)包(bao)被(bei)路由(you)器(qi)丢弃之前允许(xu)通过的(de)最(zui)大(da)(da)网(wang)段数(shu)量,是IP数(shu)据(ju)包(bao)在网(wang)络中可以转发的(de)最(zui)大(da)(da)跳数(shu)(跃(yue)点数(shu)),TTL位于(yu)IPv4包(bao)的(de)第9个字节(jie),是一个8 bit字段。
TTL字段由数(shu)据包的(de)(de)发(fa)送(song)者设(she)置,路(lu)由器转发(fa)数(shu)据包时,至少(shao)将TTL减小1。路(lu)由器将会丢(diu)弃TTL=0的(de)(de)数(shu)据包,并向数(shu)据包源地址发(fa)送(song)一个类型11的(de)(de)ICMP报文,表示(shi)time exceeded(TTL为0),由发(fa)送(song)者决定是否要(yao)重发(fa)。
TTL的(de)最大值(zhi)(zhi)是255,推(tui)荐(jian)值(zhi)(zhi)是64,windows中(zhong)TTL默认值(zhi)(zhi)保存在注册表HKLMSYSTEMCurrentControlSetServicesTcpipParameters 下的(de)DefaultTTL(DWORD)中(zhong),修改设置(zhi)后重启(qi)才生(sheng)效。
ping命令结果中(zhong)的(de)TTL:来自 192.168.1.1 的(de)回复: 字节=32 时间(jian)<1ms TTL=64
ping -i 1 8.8.8.8后可抓到Time-to-live exceeded的数据(ju)包(bao),wireshark抓包(bao)使用(yong)icmp.type == 11过滤对应(ying)的ICMP包(bao):Time-to-live exceeded (Time to live exceeded in transit),抓包(bao)中可以根据(ju)TTL值判(pan)断(duan)数据(ju)包(bao)是否被中间设备伪造。
在(zai)域名(ming)系(xi)统 (DNS)中的TTL存活时(shi)间,用以设定域名(ming)纪录的最长缓(huan)存时(shi)间。