traceroute簡介
- traceroute跟蹤從IP網絡獲取的路由數據包在到達給定主機的途中。它利用IP協議的生存時間(TTL)字段,並試圖從通往主機的路徑上的每個網關引出一個ICMP TIME_EXCEEDED響應。
- Traceroute6等價於traceroute -6
- 唯一需要的參數是目標主機的名稱或IP地址。可選packet_len 'gth是探測報文的總大小(IPv4默認為60字節,IPv6默認為80字節)。在某些情況下,可以忽略指定的大小,或者將大小增加到最小值。
- 這個程序試圖跟蹤一個IP包將遵循的路由,通過發射一個小ttl(生存時間)探測包,然后監聽一個ICMP“超時時間”從網關的應答。我們開始探針的ttl為1,並增加1,直到我們得到一個ICMP“端口不可達”(或TCP復位),這意味着我們到達了“主機”,或達到最大值(默認值為30跳)。
- 每個ttl設置發送三個探針(默認情況下),並打印一行顯示每個探針的ttl、網關地址和往返時間。如果需要,可以在地址后面加上附加信息。如果探測的答案來自不同的網關,則將打印出每個響應系統的地址。如果在5.0秒內(默認)沒有響應,則為該探測打印一個“*”(星號)。
- 在旅行時間之后,可以打印一些額外的注釋:!H, !N,或!P(主機、網絡或協議不可達),!S(源路由失敗),!F(需要分片),!X(管理上禁止通信),!V(主機優先級沖突),!C(優先級有效截斷),或!
(ICMP不可達碼 )。如果幾乎所有的探測都導致某種不可達的結果,traceroute將放棄並退出。 - 我們不希望目標主機處理UDP探測包,因此將目標端口設置為一個不太可能的值(可以使用-p標志更改它)。對於ICMP或TCP跟蹤路由就沒有這樣的問題(對於TCP,我們使用半開放技術,它防止我們的探測被目標主機上的應用程序看到)。
- 在現代網絡環境中,由於防火牆的廣泛使用,傳統的traceroute方法已不能完全適用。這樣的防火牆會過濾“不太可能”的UDP端口,甚至是ICMP回聲。為了解決這個問題,我們實現了一些額外的跟蹤路由方法(包括tcp),請參閱下面的可用方法列表。這類方法嘗試使用特定的協議和源/目的端口,以便繞過防火牆(被防火牆視為允許的網絡會話類型的開始)。
traceroute命令使用
下載
yum install -y traceroute
使用
1.命令格式:
traceroute[參數][主機]
2.命令功能:
traceroute指令讓你追蹤網絡數據包的路由途徑,預設數據包大小是40Bytes,用戶可另行設置。
具體參數格式:traceroute [-dFlnrvx][-f<存活數值>][-g<網關>...][-i<網絡界面>][-m<存活數值>][-p<通信端口>][-s<來源地址>][-t<服務類型>][-w<超時秒數>][主機名稱或IP地址][數據包大小]
3.命令參數:
-d 使用Socket層級的排錯功能。
-f 設置第一個檢測數據包的存活數值TTL的大小。
-F 設置勿離斷位。
-g 設置來源路由網關,最多可設置8個。
-i 使用指定的網絡界面送出數據包。
-I 使用ICMP回應取代UDP資料信息。
-m 設置檢測數據包的最大存活數值TTL的大小。
-n 直接使用IP地址而非主機名稱。
-p 設置UDP傳輸協議的通信端口。
-r 忽略普通的Routing Table,直接將數據包送到遠端主機上。
-s 設置本地主機送出數據包的IP地址。
-t 設置檢測數據包的TOS數值。
-v 詳細顯示指令的執行過程。
-w 設置等待遠端主機回報的時間。
-x 開啟或關閉數據包的正確性檢驗。
https://blog.csdn.net/liyuan_669/article/details/25362505
traceroute命令輸出
[root@ ] #traceroute 10.159.52.29
traceroute to 10.159.52.29 (10.159.52.29), 30 hops max, 60 byte packets
1 * * *
2 10.159.8.153 (10.159.8.153) 0.333 ms 10.159.8.209 (10.159.8.209) 0.336 ms 0.345 ms
3 10.159.8.22 (10.159.8.22) 0.353 ms 0.365 ms 10.159.8.18 (10.159.8.18) 0.334 ms
4 10.159.52.29 (10.159.52.29) 0.389 ms 0.390 ms 0.381 ms
說明:
1、記錄按序列號從1開始,每個紀錄就是一跳 ,每跳表示一個網關;
2、每個ttl設置發送三個探針(默認情況下),並打印一行顯示每個探針的ttl、網關地址和往返時間,
3、如果探測的答案來自不同的網關,則將打印出每個響應系統的地址
4、如果在5.0秒內(默認)沒有響應,則為該探測打印一個“*”(星號);可能是防火牆封掉了ICMP的返回信息,所以我們得不到什么相關的數據包返回數據。
5、額外的注釋:!H, !N,或!P(主機、網絡或協議不可達),!S(源路由失敗),!F(需要分片),!X(管理上禁止通信),!V(主機優先級沖突),!C(優先級有效截斷),或!