您是否想知道資料從您的計算機傳輸到 Google 或 Facebook 等網站時會經過什麼路徑?或者為什麼即使您的網際網路連線速度很快,某個特定網站卻感覺很慢?答案就在於 路由跟蹤 命令。
Traceroute 是一款功能強大的網路診斷工具,可顯示路由(路徑)並測量資料包在 Internet 協議 (IP) 網路上的傳輸延遲。
Traceroute 的工作原理
網際網路是一個由互連路由器組成的網路。當您訪問網站時,您的請求從一個路由器跳轉到另一個路由器,直到到達目標伺服器。
Traceroute 的工作原理是傳送一系列逐漸增加的資料包(通常是 ICMP Echo Request 或 UDP 資料包) 生存時間 (TTL) 值。
- TTL=1: 第一個路由器收到資料包,將 TTL 減為 0,丟棄該資料包,併發回“ICMP 超時”訊息。這標識了第一跳。
- TTL=2: 資料包經過第一個路由器,到達第二個路由器,TTL 變為 0,第二個路由器回覆。這標識了第二跳。
- 過程繼續: 重複此過程,直到資料包到達目的地或達到最大跳數。
如何執行 Traceroute
在 Windows 上(命令提示符)
Windows 使用命令 tracert.
- 按
Win + R,輸入cmd,然後按 Enter 鍵。 - 輸入以下命令並按 Enter:
命令
tracert google.com
- 等待結果完成。
在 macOS / Linux(終端)上
Mac和Linux系統使用命令 traceroute.
- 開啟 航站樓 應用程式。
- 輸入以下命令並按 Enter:
命令
traceroute google.com
解釋結果
典型的跟蹤路由輸出如下所示:
輸出
1 192.168.1.1 (192.168.1.1) 2.543 ms 1.987 ms 2.123 ms
2 10.20.30.1 (10.20.30.1) 12.345 ms 11.456 ms 12.789 ms
3 nyc-core-router.isp.net (203.0.113.5) 25.678 ms 24.567 ms 26.789 ms
...
12 google.com (142.250.183.14) 45.123 ms 44.567 ms 45.789 ms
- 跳數(第 1 列): 路徑中路由器的順序。
- 主機名/IP(第 2 列): 路由器的地址。看見
*通常表示路由器配置為不回覆 ICMP 資料包(防火牆)。 - RTT(第 3-5 列): 往返時間。資料包到達路由器並返回所花費的時間(以毫秒為單位)。
故障排除技巧
- 高延遲: 如果您發現第 3 跳和第 4 跳之間的 RTT 突然跳躍(例如,從 20 毫秒到 200 毫秒),則問題可能出在第 4 跳處的路由器或它們之間的鏈路。
- 超時(
): 偶爾超時是正常的。但是,如果跟蹤路由完全停止對於所有後續躍點,可能存在防火牆阻塞路徑或路由環路。
📺 15 分鐘深度潛水 — 計算機愛好者(諾丁漢大學)
替代方案:線上 Traceroute
如果你不想使用命令列,你可以使用我們的 線上路由追蹤工具。它從我們的伺服器執行命令,這對於從外部角度(本地網路之外)檢查連線非常有用。
Traceroute 對於任何有抱負的網路工程師或學生來說都是一項基本技能。掌握它可以讓您對網路連線問題產生“X 射線洞察力”。