tracert (Trace Route) 是 Windows 內置的路由追蹤工具,利用 ICMP TTL 遞減機制,逐跳顯示數據包從源到目的經過的路由器節點、延遲與丟包情況。Linux/macOS 對應 traceroute (UDP 默認)。
命令語法
tracert [-d] [-h maximum_hops] [-j host-list] [-w timeout] [-R] [-S srcaddr] [-4] [-6] target_name
參數詳細說明
| 參數 | 功能 | 使用場景 |
-d | 不解析 IP 為主機名(跳過反向 DNS 查詢) | 顯著加快顯示速度,排查時首選 |
-h max_hops | 最大跳數 (默認 30) | 長鏈路/跨國追蹤增大至 50-100 |
-j host-list | 鬆散源路由 (IPv4 only),指定中繼節點列表 | 測試特定路徑、繞過故障節點 |
-w timeout | 等待回應超時毫秒數 (默認 4000ms) | 高延鏈路增大至 10000;低延環境可減小 |
-R | 追蹤往返路徑 (IPv6 only) | IPv6 環境驗證回程路徑對稱性 |
-S srcaddr | 指定源 IP 地址 (IPv6 only) | 多網卡/多 IP 選擇出口 |
-4 | 強制 IPv4 | 雙棧環境指定 v4 路徑 |
-6 | 強制 IPv6 | 雙棧環境指定 v6 路徑 |
target_name | 目標主機名或 IP | 域名會自動解析 A/AAAA 記錄 |
輸出結果解讀
C:\>tracert -d www.google.com
通過最多 30 個躍點追蹤
到 www.google.com [142.250.190.4] 的路由:
1 1 ms 1 ms 1 ms 192.168.1.1 ← 本地網關
2 5 ms 4 ms 5 ms 100.64.0.1 ← 運營商 CGNAT/接入層
3 12 ms 11 ms 12 ms 221.179.x.x ← 運營商匯聚層
4 18 ms 17 ms 18 ms 202.97.x.x ← 骨幹網/省際節點
5 28 ms 27 ms 28 ms 202.97.x.x ← 國際出口/海纜登陸點
6 45 ms 44 ms 46 ms 108.170.x.x ← Google 骨幹網
7 48 ms 47 ms 48 ms 142.250.190.4 ← 目標服務器
追蹤完成。
關鍵分析維度
- 跳數:每行開頭數字,經過幾層三層設備
- 三次延遲 (ms):發送三個探測包的往返時間,**取中位數參考**
- < 10ms:局域網/同城
- 10-50ms:省內/鄰省
- 50-100ms:跨省/骨幹網
- 100-200ms:跨國/海纜
- >300ms:衛星/極遠/擁塞
- 星號 * 請求超時:
- 中間節點 *:該路由器禁 ICMP/限速,**不代表鏈路斷**
- 連續多跳 * 後恢復:中間設備防火牆策略
- 末尾持續 *:目標防火牆封禁 ICMP、或鏈路真斷
- IP 歸屬:結合
whois IP 或在線查詢,判斷節點屬於哪家運營商/機構
實戰診斷場景
| 現象 | 可能原因 | 後續動作 |
| 第 1 跳就超時 | 本地網關故障/防火牆攔截/物理斷線 | 檢查網線/路由器/本機防火牆 |
| 第 2-3 跳高延遲/丟包 | 接入層/匯聚層擁塞、線路質量差 | 聯繫運營商報修、換線路/換運營商 |
| 中間某跳突然延遲飆升 | 該節點擁塞/故障/限流 | 多次測試確認、聯繫相關運營商 |
| 國際出口跳數多/延遲高 | 出口擁塞/繞路/海纜故障 | 嘗試換 DNS/代理/雲加速/專線 |
| 目標可達但最後幾跳 * | 目標服務器禁 Ping | 嘗試 tcping / nmap -p 80,443 驗證端口通達性 |
| 出現內網保留地址 (10.x/100.64.x/172.16-31.x) | 運營商 CGNAT/雙層 NAT | 申請公網 IP、用 IPv6、內網穿透 |
進階技巧
- 持續監控:
tracert -d target | findstr /v "完成" 循環記錄,或用 PingPlotter/MTR (Win/Linux) 圖形化持續追蹤
- 對比雙向路徑:服務器端對你做 tracert,對比去程/回程是否對稱(非對稱路由導致 TCP 重傳/性能差)
- 結合 ping/pathping:
pathping 結合 ping + tracert,統計每跳丟包率,Windows 獨有
- IPv6 追蹤:
tracert -6 -d ipv6.google.com
Linux/macOS 對應:traceroute
traceroute -n -w 2 -q 1 -m 30 target # -n 不解析域名,-w 等待秒,-q 探測包數,-m 最大跳數
# 常用變體:tracepath (無需 root), mtr (交互式持續追蹤, 強推)