TTL協議是什么?詳解TTL協議
搞網站的朋友都知道ping命令是非常有用的。ttl是什么意思?這樣的問題,其實所知道的TTL更多的是關于網絡方面的,比如我們在ping ip或ping 網站的時候都可以看到有TTL數值,如下圖,相信網友所問的問題應該是ping中的TTL什么意思吧,下面我們來詳細介紹下TTL是什么意思。希望對您有所幫助!
一、TTL是什么意思?
TTL是一個ip協議的值,它告訴網絡,數據包在網絡中的時間是否太長而應被丟棄。有很多原因使包在一定時間內不能被傳遞到目的地。
TTL 的初值通常是系統缺省值,是包頭中的8位的域。TTL的最初設想是確定一個時間范圍,超過此時間就把包丟棄。由于每個路由器都至少要把TTL域減一,TTL通常表示包在被丟棄前最多能經過的路由器個數。當記數到0時,路由器決定丟棄該包,并發送一個ICMP報文給最初的發送者。
在網絡中主要是指ping網速中的TTL數值,ping命令相信熟悉網絡的朋友都不會陌生,也為大家介紹過不少ping命令相關知識,在網絡應用中,ping網速與IP地址等都是非常常用的命令,通過ping ip或網址可以知道網絡是否暢通或者網絡傳輸質量如何等,是網絡技術人員常用的檢測網絡命令。如下圖是ping比克爾網網速截圖:
二、ping網速中的TTL是什么意思
從上圖可以看出,ping電腦百事網網速中的TTL=114,那么這個TTL數值是什么意思呢?通俗的說,TTL是IP協議包中的一個值,它告訴網絡,數據包在網絡中的時間是否太長而應被丟棄。有很多原因使包在一定時間內不能被傳遞到目的地。解決方法就是在一段時間后丟棄這個包,然后給發送者一個報文,由發送者決定是否要重發。TTL的初值通常是系統缺省值,是包頭中的8位的域。TTL的最初設想是確定一個時間范圍,超過此時間就把包丟棄。由于每個路由器都至少要把TTL域減一,TTL通常表示包在被丟棄前最多能經過的路由器個數。當記數到0時,路由器決定丟棄該包,并發送一個ICMP報文給最初的發送者。
在比如我ping一下學無憂的網址,點擊“開始菜單--運行”,在運行輸入框輸入cmd命令,然后執行該命令即可打開命令提示符運行窗口,然后輸入“ping www.xue51.com”命令(雙引號除外),輸入之后就會返回了TTL值。如圖所示:
上面丟失度是0%,說明網址能正常訪問打開,如果發現接受不了,數據全部丟失的話,那說明服務器空間上除了問題,這就要聯系你的空間服務商。
TTL值默認情況下,Linux系統的TTL值為64或255,Windows NT/2000/XP系統的默認TTL值為128,Win7系統的TTL值是64,Windows 98系統的TTL值為32,UNIX主機的TTL值為255。(這個是從網絡上找到的),曙光博客的目的主機是采用FreeBSD系統的(可能已經更換),在這里可能TTL值是64,而不是UNIX主機的255,所以在從這里到目的主機經過了64-51=13個路由(此處容易引起誤區,64是代表 FressBSD的默認TTL還是發起方的TTL,這個TTL初始值應該是被PING方的,我認為應該是代表發起方的TTL,因為TTL是由發送主機設置。
簡單概括的說,ttl是一個時間值,TTL是發出信息再返回的時間。是一個生存周期,他不能計算途徑路由,他與路由沒關系,與服務器操作系統有關系,通過觀察TTL值的大小,可以粗略的判斷出目標的主機系統類型,一般情況下:
TTL值在100至130之間,主機系統為WINDOWS
TTL值在240至255之間,主機系統為UNIX或LINUX
所以我們會發現ping不同網站或不同服務器主機得到的TTL數值是不一樣的,主要是由服務器主機的操作系統決定,一般我們只要簡單了解這些知識就可以說基本懂TTL是什么意思了。
三、TTL值參考:
TTL時間越長,緩存時間越長,更新越不容易及時生效。 增大TTL值,以節約域名解析時間,給網站訪問加速。
TTL設置的小一些,生效時間就會快一些。二.減小TTL值,減少更換空間時的不可訪問時間。關于網絡詞語的ttl值也有tt戀,說白了女同性戀者,當這些都是題外話
TTL其他意思方面,在電路中有TTL電平,TTL電平信號被利用的最多是因為通常數據表示采用二進制規定,+5V等價于邏輯“1”,0V等價于邏輯“0”,這被稱做TTL(晶體管-晶體管邏輯電平)信號系統,這是計算機處理器控制的設備內部各部分之間通信的標準技術。在生活方面,TTL還被指:女同性戀,T意義上為老公,P則是受照顧的老婆,TTL就是指TT戀,即兩個T在一起,T一般是長得很像男生的女生。
TTL是什么意思這里算是比較全面的為大家總結了一下,其實更多的時候我們是指ping網速中的TTL數值,閱讀完本文相信大家對TTL有著比較清楚的認識吧。
下面是其它網友的補充:
TTL(Time-To-Live)的作用是限制數據包在網絡中存在的時間,防止數據包不斷的在IP互聯網絡上循環。
TTL指定數據包被路由器丟棄之前允許通過的最大網段數量,是IP數據包在網絡中可以轉發的最大跳數(躍點數),TTL位于IPv4包的第9個字節,是一個8 bit字段。
TTL字段由數據包的發送者設置,路由器轉發數據包時,至少將TTL減小1。路由器將會丟棄TTL=0的數據包,并向數據包源地址發送一個類型11的ICMP報文,表示time exceeded(TTL為0),由發送者決定是否要重發。
TTL的最大值是255,推薦值是64,windows中TTL默認值保存在注冊表HKLMSYSTEMCurrentControlSetServicesTcpipParameters 下的DefaultTTL(DWORD)中,修改設置后重啟才生效。
ping命令結果中的TTL:來自 192.168.1.1 的回復: 字節=32 時間<1ms TTL=64
ping -i 1 8.8.8.8后可抓到Time-to-live exceeded的數據包,wireshark抓包使用icmp.type == 11過濾對應的ICMP包:Time-to-live exceeded (Time to live exceeded in transit),抓包中可以根據TTL值判斷數據包是否被中間設備偽造。
在域名系統 (DNS)中的TTL存活時間,用以設定域名紀錄的最長緩存時間。