查詢封包路由路徑 (TRACERT)
http://support.microsoft.com/kb/314868/zh-tw
如何使用 TRACERT 公用程式
TRACERT 診斷公用程式會傳送「網際網路控制訊息通訊協定」(ICMP) 回應封包給目的地,以確定到目的地所經的路徑。在這些封包中,TRACERT 會使用各種不同的 IP 執行時間 (Time-To-Live,TTL) 值。因為路徑上的每台路由器在轉送封包之前必須至少將封包的 TTL 遞減 1,所以 TTL 其實就是一個躍點計數器。當封包的 TTL 達到零 (0) 時,路由器會將 ICMP「超過時間」訊息傳回給來源電腦。TRACERT 將 TTL 設為 1,來傳送第一個回應封包,之後每次傳輸都將 TTL 遞增 1,直到目的地回應或達到最大 TTL 為止。中介路由器傳回的 ICMP「超過時間」訊息會顯示出路徑。但是請注意,有些路由器會將 TTL 已經過期的封包悄悄丟棄,因此 TRACERT 不會察覺到這些封包。
TRACERT 會依序印出傳回 ICMP「超過時間」訊息的中介路由器清單。使用 tracert 命令時如果用 -d 選項,可以指示 TRACERT 不要對每個 IP 位址執行 DNS 查閱,使得 TRACERT 會報告路由器近端介面的 IP 位址。
在下列 tracert 命令及其輸出的範例中,封包通過 2 台路由器 (157.54.48.1 和 11.1.0.67) 後到達主機 11.1.0.1。在這個範例中,預設閘道是 157.54.48.1,而 11.1.0.0 網路上路由器的 IP 位址是 11.1.0.67。
命令:
C:\>tracert 11.1.0.1
命令的輸出:
Tracing route to 11.1.0.1 over a maximum of 30 hops --------------------------------------------------- 1 2 ms 3 ms 2 ms 157.54.48.1 2 75 ms 83 ms 88 ms 11.1.0.67 3 73 ms 79 ms 93 ms 11.1.0.1 Trace complete.
如何使用 TRACERT 進行疑難排解
您可以使用 TRACERT 找出封包在網路上停止的位置。在下列範例中,預設閘道發現 22.110.0.1 上的主機沒有任何有效路徑。這可能是因為路由器有設定問題,或是 22.110.0.0 網路不存在,而顯示錯誤的 IP 位址。命令:
C:\>tracert 22.110.0.1
命令的輸出:
Tracing route to 22.110.0.1 over a maximum of 30 hops ----------------------------------------------------- 1 157.54.48.1 reports:Destination net unreachable. Trace complete.
對於有多條路徑可以通到同一點的大型網路,或是涉及許多中介元件 (路由器或橋接器) 的大型網路,TRACERT 是很有用的疑難排解工具。
如何使用 TRACERT 的選項
您可以將 TRACERT 搭配許多命令列選項一起使用,雖然在進行標準疑難排解時通常用不到這些選項。下列命令語法範例顯示所有可能的選項:
tracert -d -hmaximum_hops -jhost-list -wtimeout target_host
參數的功能:
-d 指定不將位址解析成主機名稱 -h maximum_hops 指定用於搜尋目標的最大躍點數 -j host-list 指定沿著 host-list 的概略來源路由 -w timeout 對每個回覆,要等候 timeout 所指定的 毫秒數 target_host 指定目標主機的名稱或 IP 位址