Networking

TRACEROUTE 使用的任何協議?ICMP 或 UDP

  • October 13, 2015

TRACEROUTE:ICMP或使用的UDP任何協議IP ?

或者全部使用它們:封裝?

Ladadadada在這裡解決了這個問題: Does traceroute use UDP or ICMP or both?

發送的數據包類型因實現而異。預設情況下,Windows tracert 使用 ICMP,Mac OS X 和 Linux traceroute 都使用 UDP。我手頭沒有 BSD 或 Solaris 機器或任何其他作業系統可供檢查,但 Mac OS X 版本的手冊頁提到它的出處是 BSD 4.3。

我擁有的 Mac 和 Linux 版本提供了選擇各種不同協議的能力,包括 ICMP、TCP、UDP 和 GRE 數據包。其他協議可以通過它們的名稱或編號來指定,但 traceroute 對其他協議的工作方式一無所知。它只是盲目地發送它們。

對於 traceroute(在 GNU/Linux 下),此處的手冊頁指示您使用參數來指定除 UDP 之外的另一個協議:

-I Use ICMP ECHO for probes
-T Use TCP SYN for probes
...

ICMP 和 UDP 都封裝在 IP 數據包中。希望能幫助到你 :)

引用自:https://serverfault.com/questions/728739