我使用的 isp 無法 ping 通 google 或任何其他網站,但只有名稱解析有效。
我在某個網站上讀到,traceroute 與 ping 相反。這是真的 ?
另外,如果我在網路上封鎖 ping(可能是在路由器層級/第 4 層),那麼 Traceroute 是否也會失敗?
答案1
Traceroute 的工作原理是明確設置TTL將出站資料包的欄位設定為不同的值,並觀察哪些路由器發送該資料包超出 ICMP TTL不同的錯誤返回TTL價值觀。
如果所有被阻止的是ICMP 回顯請求/回复(“ping”),這本質上不會阻止追蹤路由。然而,traceroute 的一種可能實作是發送特定的 ICMP Echo Request 封包。
檢查追蹤路由程式的文檔,了解它發送的內容。某些實作可以選擇發送 UDP 封包或 ICMP 回顯請求封包。
答案2
預設情況下,traceroute 發送 UDP 封包來追蹤到給定主機的路由,而 ping 使用 ICMP。但是traceroute可以處理路由中的路由器回到目標主機的ICMP封包。
這意味著,如果您僅阻止傳出 ICMP 封包,則 ping 將不起作用,但追蹤路由將起作用。
但是,如果您封鎖傳入的 ICMP 封包,traceroute 將無法接收來自路由中的路由器的 ICMP 回應,然後它將無法運作。