TTL是 Time To Live的縮寫,該欄位指定IP包被路由器丟棄之前允許通過的最大網段數量。TTL是IPv4報頭的一個8 bit欄位。 IPv4包頭中TTL是一個8 bit欄位,它位於IPv4包的第9個位元組。如下圖所示,每一行表示 32 bit(4位元組),位從0開始編號,即0~31。 TTL的 ...
TTL是 Time To Live的縮寫,該欄位指定IP包被路由器丟棄之前允許通過的最大網段數量。TTL是IPv4報頭的一個8 bit欄位。
IPv4包頭中TTL是一個8 bit欄位,它位於IPv4包的第9個位元組。如下圖所示,每一行表示 32 bit(4位元組),位從0開始編號,即0~31。
TTL的作用是限制IP數據包在電腦網路中的存在的時間。TTL的最大值是255,TTL的一個推薦值是64。
雖然TTL從字面上翻譯,是可以存活的時間,但實際上TTL是IP數據包在電腦網路中可以轉發的最大跳數。TTL欄位由IP數據包的發送者設置,在IP數據包從源到目的的整個轉發路徑上,每經過一個路由器,路由器都會修改這個TTL欄位值,具體的做法是把該TTL的值減1,然後再將IP包轉發出去。如果在IP包到達目的IP之前,TTL減少為0,路由器將會丟棄收到的TTL=0的IP包並向IP包的發送者發送 ICMP time exceeded消息。
TTL的主要作用是避免IP包在網路中的無限迴圈和收發,節省了網路資源,並能使IP包的發送者能收到告警消息。
TTL 是由發送主機設置的,以防止數據包不斷在IP互聯網路上永不終止地迴圈。轉發IP數據包時,要求路由器至少將 TTL 減小 1。
TTL值的註冊表位置HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters 其中有個DefaultTTL的DWORD值,其數據就是預設的TTL值了,我們可以修改,但不能大於十進位的255。Windows系統設置後重啟才生效。
生存時間,就是一條功能變數名稱解析記錄在DNS伺服器中的存留時間。當各地的DNS伺服器接受到解析請求時,就會向功能變數名稱指定的DNS伺服器(權威功能變數名稱伺服器)發出解析請求從而獲得解析記錄;在獲得這個記錄之後,記錄會在DNS伺服器(各地的緩存伺服器,也叫遞歸功能變數名稱伺服器)中保存一段時間,這段時間內如果再接到這個功能變數名稱的解析請求,DNS伺服器將不再向NS伺服器發出請求,而是直接返回剛纔獲得的記錄;而這個記錄在DNS伺服器上保留的時間,就是TTL值。
網上大部分都是修改註冊表再重啟,這樣很不方便。
打開cmd命令提示符,輸入下麵一行並回車:
netsh interface ipv4 set global defaultcurhoplimit=64
執行後,ttl即可修改成64
未執行前的效果如下:
執行後的效果:
本文來自博客園,作者:古道輕風,轉載請註明原文鏈接:https://www.cnblogs.com/88223100/p/windows_default_ttl.html