網站與速度
用 traceroute 找出連線在哪裡變慢
traceroute 會顯示從 Mac 到主機路徑上的每台路由器,以及每台回應所花的時間。
症狀
- 某個網站或服務很慢,其他的卻很快。
- 你想知道延遲是在你的網路內,還是在更遠的地方。
- 你的網路業者要求提供路由追蹤結果。
可能原因
- 路由某一段壅塞。如果延遲從某一跳開始出現,並一路持續到最後一跳,就表示路徑上有一段很慢。
- 路由器把探測封包的優先順序放低。某一跳很慢、但下一跳就恢復,通常不是問題。
- 不回應的路由器。man 頁面說明,星號表示在逾時前沒有收到回應。有些路由器不會送出 traceroute 需要的回應。
如何檢查
打開終端機,追蹤到該主機的路由。
traceroute example.com輸出每一跳一行,包含位址和三個回應時間。星號表示沒有收到回應。
若要略過名稱查詢、更快得到結果,請加上
-n。traceroute -n example.com如果許多跳都只顯示星號,請用
-I改用 ICMP 探測封包。traceroute -I example.com找出時間開始上升、並一路維持到最後的第一跳。
追蹤兩到三次。以所有次數共同的模式為準,而不是只看一次的結果。
如何修正
如果延遲從第一跳就開始,請檢查你的 Wi-Fi 或路由器。請參閱Mac 網路很慢:找出慢在哪一段。
如果延遲從網路業者的網路開始,請把追蹤結果傳給你的網路業者。
如果延遲在目的地附近才開始,請聯絡該服務,或稍後再試。
不要把中間某一跳很慢當成證據。也要看最後一跳。
使用 Kilobat
Kilobat 會執行有上限的 12 跳路由探測,並把結果存進路由歷史記錄。
kilobat trace example.com若要看某一跳是否持續很慢,請追蹤三次。Kilobat 會像 mtr 一樣,把對該主機的每次已儲存追蹤逐跳彙整。
kilobat trace example.com --rounds 3顯示每一跳的封包遺失、最佳、平均和最差延遲,以及持續延遲從哪裡開始。
kilobat route-history --host example.comAI 代理程式可以用
host和rounds呼叫 MCP 工具trace_route,也可以呼叫get_route_history。
常見問題
為什麼某一跳顯示 * * *?
那台路由器沒有及時回應。很多路由器不會回應探測封包。只要後面的跳有回應,路徑就是通的。
traceroute 需要管理者密碼嗎?
不需要。預設的 UDP 探測封包和 -I 任何使用者都能使用。
資料來源
- traceroute(8),macOS 27.2 內建的 man 頁面
- ping(8),macOS 27.2 內建的 man 頁面
資料來源檢查日期:2026年10月29日。man 頁面為 macOS 內建版本;在終端機中用 man <name> 開啟。