一、 traceroute的基本概念
traceroute是一個用於探查網路故障的命令,也可以用於了解數據包通過互聯網在哪些路由器上傳輸、經過了多長時間等信息。
traceroute通過向目標設備發送UDP數據包並在每個中間路由器上等待一段時間以獲取響應時間,進而推斷跟蹤到目標設備所經過的中間路由器
完整的traceroute命令是:「traceroute [參數] 目標地址」,其中參數常見的有如下選項:
-f TTL:起始TTL值 -m TTL:最大TTL值 -I :使用ICMP協議而非UDP -p port:UDP數據包的目的埠 -t timeout:等待時間 -w waittime:等待每一個回應之間的時間間隔 -q probes:每個TTL發送N個請求包
二、traceroute解決的問題
traceroute可以用於解決如下網路故障:
1.網路間路由故障:通常在從源端到目的端中間會經過多個路由器,當其中一個故障導致了源端和目的端之間的不可達時,可以使用 traceroute 命令來找到具體的問題所在,進而解決問題。
2.網路延遲問題:traceroute 命令的另一個應用場景是檢查網路延遲。我們使用 traceroute 命令並關注命令輸出的 delay 時間,來檢查數據傳輸丟失或延遲的問題。
三、使用traceroute診斷故障案例
下面給出兩個案例來演示如何使用 traceroute 診斷網路故障。
案例1: 連接區域網學校伺服器被卡在中間路由器上
1.直接執行 ping 操作,發現學校網路的情況不太好,掉包率很高。
ping 192.168.1.1
2.使用traceroute 不斷地嘗試從本地主機訪問學校的伺服器,發現在中間一台路由器上被攔截了:
traceroute 192.168.1.200 traceroute to 192.168.1.200 (192.168.1.200), 30 hops max, 38 byte packets 1 192.168.1.1 (192.168.1.1) 17.187 ms 10.135 ms 3.433 ms 2 192.168.10.1 (192.168.10.1) 13.201 ms 13.527 ms 11.912 ms 3 219.141.135.194 (219.141.135.194) 36.472 ms 31.182 ms 279.790 ms 4 * * * 5 61.148.249.210 (61.148.249.210) 61.892 ms 64.077 ms 65.596 ms 6 61.148.249.162 (61.148.249.162) 67.833 ms 69.629 ms 64.748 ms 7 61.148.57.106 (61.148.57.106) 67.905 ms 69.581 ms 71.183 ms 8 * * * 9 * * * 10 * * * 11 * * * 12 * * * 13 * * * 14 * * * 15 * * * 16 * * * 17 * * * 18 * * * 19 * * * 20 * * * 21 * * * 22 * * * 23 * * * 24 * * * 25 * * * 26 * * * 27 * * * 28 * * * 29 * * * 30 * * *
3.提示信息顯示,從第四台路由器首包就無法到達了,路由太遠,網路不穩定。聯繫網路管理員進行排查。
案例2:從本地主機訪問上海公安局無法連接
1.首先執行 ping 的操作,可以得到確認其 IP 地址為 211.148.8.30
ping shpd110.shsp.gov.cn
2.使用traceroute 進一步診斷,從距離該伺服器較近的計算機連不上,考慮是路由過程出現問題。
traceroute -I -n 211.148.8.30 traceroute to 211.148.8.30 (211.148.8.30), 30 hops max, 40 byte packets 1 192.168.1.1 1.788 ms 2.566 ms 3.223 ms 2 118.103.240.1 12.695 ms 13.482 ms 14.562 ms 3 210.52.143.193 12.231 ms 12.021 ms 9.479 ms 4 202.97.53.218 17.723 ms 202.97.54.82 70.103 ms 70.372 ms 5 202.97.57.146 76.354 ms 202.97.52.62 98.138 ms 119.873 m 6 219.158.22.106 87.251 ms 86.784 ms 93.242 ms 7 219.158.96.17 91.581 ms 91.494 ms 91.970 ms 8 219.158.17.77 95.553 ms 98.108 ms 98.389 ms 9 219.158.26.9 90.105 ms 91.636 ms 95.205 ms 10 * * * 11 * * * 12 * * * 13 * * * 14 * * * 15 * * * 16 * * * 17 * * * 18 * * * 19 * * * 20 * * * 21 * * * 22 * * * 23 * * * 24 * * * 25 * * * 26 * * * 27 * * * 28 * * * 29 * * * 30 * * *
3.可見一直跑到了第 10 層就停住了,原因是目標IP設置了過濾規則,被當成垃圾數據過濾掉了,無法進入上海公安伺服器集群,需要了解目標IP是否設置了過濾規則,由網路管理員進行排查。
總結
traceroute 命令是網路故障排查的重要手段,可以用於確定網路中哪個節點或設備出現故障,幫助管理員快速定位故障原因和解決問題,從而提高網路運營效率和用戶滿意度。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/186689.html