關於本文的Microsoft Windows 2000 版本,請參見 162326 。
摘要
本文說明命令列公用程式 TRACERT (Trace Route),此公用程式可用來追蹤「網際網路通訊協定」(IP) 封包傳遞到目的地所經的路徑。
本文討論下列主題:
- 如何使用 TRACERT 公用程式
- 如何使用 TRACERT 進行疑難排解
- 如何使用 TRACERT 的選項
更多資訊
如何使用 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「超過時間」訊息的中介路由器清單。 搭配使用 -d 選項與 tracert 命令,可以指示 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
命令的輸出:
追蹤路徑至 11.1.0.1,最多 30 跳
---------------------------------------------------
1 2 毫秒 3 毫秒 2 毫秒 157.54.48.1
2 75毫秒 83毫秒 88毫秒 11.1.0.67
3 73 毫秒 79 毫秒 93 毫秒 11.1.0.1
追蹤完成。
如何使用 TRACERT 進行疑難排解
您可以使用 TRACERT 找出封包在網路上停止的位置。 在下列範例中,預設閘道發現 22.110.0.1 上的主機沒有任何有效路徑。 這可能是因為路由器有設定問題,或是 22.110.0.0 網路不存在,而顯示錯誤的 IP 位址。
命令:
C:\>tracert 22.110.0.1
命令的輸出:
追蹤路徑至 22.110.0.1,最多 30 跳
-----------------------------------------------------
1 157.54.48.1 報告:目的地網路無法連通。
追蹤完成。
對於有多條路徑可以通到同一點的大型網路,或是涉及許多中介元件 (路由器或橋接器) 的大型網路,TRACERT 是很有用的疑難排解工具。
如何使用 TRACERT 的選項
您可以將 TRACERT 搭配許多命令列選項一起使用,雖然在進行標準疑難排解時通常用不到這些選項。
下列命令語法範例顯示所有可能的選項:
tracert -d -h maximum_hops -j host-list -w timeout target_host參數的作用:
-d
規定不將位址解析為主機名稱
-H maximum_hops
指定搜尋目標的最大跳數
-j 主機列表
指定沿宿主清單的鬆散來源路由
-w 暫停
等待每個 timeout 指定的毫秒數
回覆
target_host
指定目標主機的名稱或 IP 位址