巧用TTL值保護內網機器

TTL(生存時間)
  TTL是IP協議包中的一個值,它告訴網絡,數據包(例如ICMP包)在網絡中的時間是否太長而應被丟棄。有很多原因使包在一定時間內不能被傳遞到目的地。例如,不正確的路由表可能導致包的無限循環。一個解決方法就是在一段時間後丟棄這個包,然後給發送者一個報文,由發送者決定是否要重發。TTL的初值通常是系統缺省值,是包頭中的8位的域。TTL的最初設想是確定一個時間範圍,超過此時間就把包丟棄。由於每個路由器都至少要把TTL域減一,TTL通常表示包在被丟棄前最多能經過的路由器個數。當記數到0時,路由器決定丟棄該包,併發送一個ICMP報文給最初的發送者。
  TTL:(Time To Live ) 生存時間
  指定數據包被路由器丟棄之前允許通過的網段數量。
  TTL 是由發送主機設置的,以防止數據包不斷在 IP 互聯網絡上永不終止地循環。轉發 IP 數據包時,要求路由器至少將 TTL 減小 1。
  使用PING時涉及到的 ICMP 報文類型
  一個爲ICMP請求回顯(ICMP Echo Request)
  一個爲ICMP回顯應答(ICMP Echo Reply)
  TTL 字段值可以幫助我們識別操作系統類型。
  UNIX 及類 UNIX 操作系統 ICMP 回顯應答的 TTL 字段值爲 255
  Compaq Tru64 5.0 ICMP 回顯應答的 TTL 字段值爲 64
  微軟 Windows NT/2K操作系統 ICMP 回顯應答的 TTL 字段值爲 128
  微軟 Windows 95 操作系統 ICMP 回顯應答的 TTL 字段值爲 32
  當然,返回的TTL值是相同的
  但有些情況下有所特殊
  LINUX Kernel 2.2.x & 2.4.x ICMP 回顯應答的 TTL 字段值爲 64
  FreeBSD 4.1, 4.0, 3.4;
  Sun Solaris 2.5.1, 2.6, 2.7, 2.8;
  OpenBSD 2.6, 2.7,
  NetBSD
  HP UX 10.20
  ICMP 回顯應答的 TTL 字段值爲 255
  Windows 95/98/98SE
  Windows ME
  ICMP 回顯應答的 TTL 字段值爲 32
  Windows NT4 WRKS
  Windows NT4 Server
  Windows 2000
  Windows XP
  ICMP 回顯應答的 TTL 字段值爲 128
  這樣,我們就可以通過這種方法來辨別操作系統
  TTL值的註冊表位置HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters 其中有個DefaultTTL的DWORD值,其數據就是默認的TTL值了,我們可以修改,但不能大於十進制的255
        知道了TTL的含義和用途,我們就可以通過設置TTL的值,從而在某種程度上來保護我們的內網安全
        把TTL的值設置爲1,這樣超過本地路由的信息就通通不不能到達我們的主機。相反的我們的主機也不能去訪問外部的主機    這樣就能保護內網不受外網的***
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章