今天在百度百科中看到一個朋友問在ping一個域名時返回的TTL值大好呢 還是小好呢,自己很少去判斷這個ttl一般都是判斷 time,一時也愣那了,從網上找了找,大概得了解了這個ping值的含義,現在發給大家看看,希望對TTL不明白的,也能一塊學習學習!
TTL:生存時間
指定數據報被路由器丟棄之前允許通過的網段數量。
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
ICMP 回顯應答的 TTL 字段值為 128
這樣,我們就可以通過這種方法來辨別
操作系統 TTL
LINUX 64
WIN2K/NT 128
WINDOWS 系列 32
UNIX 系列 255
例如:現在ping www.seobye.com,得到的返回值是:
C:\Documents and Settings\Administrator>ping www.seobye.com
Pinging www.seobye.com [203.171.239.157] with 32 bytes of data:
Reply from 203.171.239.157: bytes=32 time=12ms TTL=57
Reply from 203.171.239.157: bytes=32 time=12ms TTL=57
Reply from 203.171.239.157: bytes=32 time=12ms TTL=57
Reply from 203.171.239.157: bytes=32 time=12ms TTL=57
Ping statistics for 203.171.239.157:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 12ms, Maximum = 12ms, Average = 12ms
57比較接近64 中間可能通過了7個路由,由此來判斷落水魚博客所有的操作系統是linux的!