linux的tracert命令的詳細(xì)解釋
Linux中的使用tracert命令可以跟蹤路由路徑,下面由學(xué)習(xí)啦小編為大家整理了Linux的tracert命令的詳細(xì)解釋,希望對(duì)大家有幫助!
linux的tracert命令的詳細(xì)解釋
Tracert命令詳解
該診斷實(shí)用程序?qū)煌鏁r(shí)間 (TTL) 值的 Internet 控制消息協(xié)議 (ICMP) 回顯數(shù)據(jù)包發(fā)送到目標(biāo),以決定到達(dá)目標(biāo)采用的路由。要在轉(zhuǎn)發(fā)數(shù)據(jù)包上的 TTL 之前至少遞減 1,必需路徑上的每個(gè)路由器,所以 TTL 是有效的躍點(diǎn)計(jì)數(shù)。數(shù)據(jù)包上的 TTL 到達(dá) 0 時(shí),路由器應(yīng)該將“ICMP 已超時(shí)”的消息發(fā)送回源系統(tǒng)。Tracert 先發(fā)送 TTL 為 1 的回顯數(shù)據(jù)包,并在隨后的每次發(fā)送過(guò)程將 TTL 遞增 1,直到目標(biāo)響應(yīng)或 TTL 達(dá)到最大值,從而確定路由。路由通過(guò)檢查中級(jí)路由器發(fā)送回的“ICMP 已超時(shí)”的消息來(lái)確定路由。不過(guò),有些路由器悄悄地下傳包含過(guò)期 TTL 值的數(shù)據(jù)包,而 tracert 看不到。
tracert [-d] [-h maximum_hops] [-j computer-list] [-w timeout] target_name
使用 tracert 跟蹤網(wǎng)絡(luò)連接
Tracert(跟蹤路由)是路由跟蹤實(shí)用程序,用于確定 IP 數(shù)據(jù)報(bào)訪問(wèn)目標(biāo)所采取的路徑。Tracert 命令用 IP 生存時(shí)間 (TTL) 字段和 ICMP 錯(cuò)誤消息來(lái)確定從一個(gè)主機(jī)到網(wǎng)絡(luò)上其他主機(jī)的路由。
Tracert 工作原理
通過(guò)向目標(biāo)發(fā)送不同 IP 生存時(shí)間 (TTL) 值的“Internet 控制消息協(xié)議 (ICMP)”回應(yīng)數(shù)據(jù)包,Tracert 診斷程序確定到目標(biāo)所采取的路由。要求路徑上的每個(gè)路由器在轉(zhuǎn)發(fā)數(shù)據(jù)包之前至少將數(shù)據(jù)包上的 TTL 遞減 1。數(shù)據(jù)包上的 TTL 減為 0 時(shí),路由器應(yīng)該將“ICMP 已超時(shí)”的消息發(fā)回源系統(tǒng)。
Tracert 先發(fā)送 TTL 為 1 的回應(yīng)數(shù)據(jù)包,并在隨后的每次發(fā)送過(guò)程將 TTL 遞增 1,直到目標(biāo)響應(yīng)或 TTL 達(dá)到最大值,從而確定路由。通過(guò)檢查中間路由器發(fā)回的“ICMP 已超時(shí)”的消息確定路由。某些路由器不經(jīng)詢問(wèn)直接丟棄 TTL 過(guò)期的數(shù)據(jù)包,這在 Tracert 實(shí)用程序中看不到。
Tracert 命令按順序打印出返回“ICMP 已超時(shí)”消息的路徑中的近端路由器接口列表。如果使用 -d 選項(xiàng),則 Tracert 實(shí)用程序不在每個(gè) IP 地址上查詢 DNS。
在下例中,數(shù)據(jù)包必須通過(guò)兩個(gè)路由器(10.0.0.1 和 192.168.0.1)才能到達(dá)主機(jī) 172.16.0.99。主機(jī)的默認(rèn)網(wǎng)關(guān)是 10.0.0.1,192.168.0.0 網(wǎng)絡(luò)上的路由器的 IP 地址是 192.168.0.1。
C:\Users\bob>tracert 210.14.136.66
通過(guò)最多 30 個(gè)躍點(diǎn)跟蹤到 210.14.136.66 的路由
1 1 ms 1 ms <1 毫秒 10.176.64.3
2 1 ms <1 毫秒 1 ms 10.176.255.44
3 3 ms 1 ms 5 ms 10.176.255.52
4 1 ms 1 ms 1 ms 10.190.6.100
5 2 ms 2 ms 2 ms 114.141.190.121
6 3 ms 2 ms 2 ms 114.141.128.25
7 2 ms 4 ms 2 ms 114.141.128.10
8 6 ms 3 ms 3 ms 222.73.128.137
9 8 ms 7 ms 7 ms 101.95.40.69
10 28 ms 31 ms 31 ms 202.101.63.194
11 170 ms * * 220.181.177.78
12 * * * 請(qǐng)求超時(shí)。
13 * 33 ms 27 ms 220.181.182.218
14 * * * 請(qǐng)求超時(shí)。
15 * * * 請(qǐng)求超時(shí)。
16 * * * 請(qǐng)求超時(shí)。
17 37 ms 26 ms 26 ms 210.14.136.66
跟蹤完成。
C:\Users\bob>
Trace complete.
用 tracert 解決問(wèn)題
可以使用 tracert 命令確定數(shù)據(jù)包在網(wǎng)絡(luò)上的停止位置。下例中,默認(rèn)網(wǎng)關(guān)確定 192.168.10.99 主機(jī)沒(méi)有有效路徑。這可能是路由器配置的問(wèn)題,或者是 192.168.10.0 網(wǎng)絡(luò)不存在(錯(cuò)誤的 IP 地址)。
C:\>tracert 192.168.10.99
Tracing route to 192.168.10.99 over a maximum of 30 hops
1 10.0.0.1 reports:Destination net unreachable.
Trace complete.
Tracert 實(shí)用程序?qū)τ诮鉀Q大網(wǎng)絡(luò)問(wèn)題非常有用,此時(shí)可以采取幾條路徑到達(dá)同一個(gè)點(diǎn)。
Tracert 命令行選項(xiàng)
Tracert 命令支持多種選項(xiàng),如下表所示。
tracert [-d] [-h maximum_hops] [-j host-list] [-w timeout] target_name
-d 指定不將 IP 地址解析到主機(jī)名稱。
-h maximum_hops 指定躍點(diǎn)數(shù)以跟蹤到稱為 target_name 的主機(jī)的路由。
-j host-list 指定 Tracert 實(shí)用程序數(shù)據(jù)包所采用路徑中的路由器接口列表。
-w timeout 等待 timeout 為每次回復(fù)所指定的毫秒數(shù)。
target_name 目標(biāo)主機(jī)的名稱或 IP 地址。
linux的tracert命令實(shí)例:使用 tracert 命令跟蹤路徑
打開(kāi) 命令提示符,然后鍵入:
tracert host_name
或者鍵入 tracert ip_address
其中 host_name 或 ip_address 分別是遠(yuǎn)程計(jì)算機(jī)的主機(jī)名或 IP 地址。
例如,要跟蹤從該計(jì)算機(jī)到 [url]www.microsoft.com[/url] 的連接路由,請(qǐng)?jiān)诿钐崾拘墟I入:
tracert [url]www.microsoft.com[/url]
注意
要打開(kāi)“命令提示符”,請(qǐng)單擊“開(kāi)始”,指向“程序”、“附件”,然后單擊“命令提示符”。
tracert 命令跟蹤 TCP/IP 數(shù)據(jù)包從該計(jì)算機(jī)到其他遠(yuǎn)程計(jì)算機(jī)所采用的路徑。tracert 命令使用 ICMP 響應(yīng)請(qǐng)求并答復(fù)消息(和 ping 命令類似),產(chǎn)生關(guān)于經(jīng)過(guò)的每個(gè)路由器及每個(gè)躍點(diǎn)的往返時(shí)間 (RTT) 的命令行報(bào)告輸出。
如果 tracert 失敗,可以使用命令輸出來(lái)幫助確定哪個(gè)中介路由器轉(zhuǎn)發(fā)失敗或耗時(shí)太多。
參數(shù)
/d
指定不將地址解析為計(jì)算機(jī)名。
-h maximum_hops
指定搜索目標(biāo)的最大躍點(diǎn)數(shù)。
-j computer-list
指定沿 computer-list 的稀疏源路由。
-w timeout
每次應(yīng)答等待 timeout 指定的微秒數(shù)。
target_name
目標(biāo)計(jì)算機(jī)的名稱