Debian
為什麼 traceroute 會為同一跳顯示多個 IP 地址?
這是從我家到的路線路徑
sina.com.cn
。traceroute -n sina.com.cn traceroute to sina.com.cn (202.108.33.60), 30 hops max, 60 byte packets 1 192.168.31.1 0.476 ms 0.587 ms 0.695 ms 2 140.0.5.1 2.557 ms 2.699 ms 3.065 ms 3 221.11.155.65 4.501 ms * 221.11.165.9 5.045 ms 4 * 221.11.156.18 26.480 ms 221.11.165.233 22.950 ms 5 219.158.9.97 14.176 ms * 219.158.19.149 21.472 ms 6 219.158.9.97 18.142 ms 219.158.8.81 44.856 ms 52.539 ms 7 124.65.194.190 53.162 ms 219.158.8.81 50.614 ms 124.65.194.190 47.266 ms 8 124.65.194.190 50.760 ms 61.148.143.26 49.351 ms 53.515 ms 9 210.74.176.138 43.056 ms 43.286 ms 61.148.143.26 53.712 ms 10 202.108.33.60 46.385 ms 210.74.176.138 42.896 ms 46.931 ms
192.168.31.1 是我家的路由器。
140.0.5.1 是 ISP 提供的我的公共 IP。
curl ifconfig.me 140.0.5.1
在第三行,它說
3 221.11.155.65 4.501 ms * 221.11.165.9 5.045 ms
為什麼有兩個ip地址
221.11.155.65
和221.11.165
?這是什麼意思?數據包是否從 140.0.5.1 跳轉到
221.11.155.65
,然後從 跳轉221.11.155.65
到221.11.165
?
這裡
traceroute
給您的資訊是,您至少有 2 條從路由器開始到達目的地的路線:IP adresses Internet operator 140.0.5.1 Firstmedia - Indonesia / \ / \ 221.11.155.65 221.11.165.9 China Unicom - China
這是一個巨大的網際網路運營商的正常情況:有很多路線來抵抗網際網路上的正常事件。
-a
選項可以幫助您辨識每個traceroute
IP 地址屬於哪個運營商。這是一個更大的路由樹範例,您甚至可以通過伺服器http://ping.eu/traceroute/之類的網路工具從手機獲取:
來自OpenBSD的
traceroute(8)
手冊:發送三個探測(可以使用
-q
選項更改確切數量),並列印一行顯示 TTL 或躍點限制、網關地址和每個探測的往返時間。如果探測答案來自不同的網關,則會列印每個響應系統的地址。Linux 手冊將有類似的措辭。
您看到的多個 IP 地址是網關以特定躍點限制響應各個探測。
在您的情況下,三個探測導致在跳數限制 3 處從 221.11.155.65 和 221.11.165.9 的網關返回給您的回复。
所以,答案是:不,數據包不會在那行列出的兩台主機之間跳轉,發送了三個探測,它們從 140.0.5.1 採用兩條不同的路由。