Какой протокол использует TRACEROUTE? ICMP или UDP

Какой протокол использует TRACEROUTE? ICMP или UDP

Любой протокол, используемый TRACEROUTE: ICMPили UDPилиIP ?

Или использовать их все: Инкапсуляция?

решение1

Этот вопрос был рассмотренЛададададаздесь : Использует ли traceroute протокол UDP или ICMP или оба?

Тип отправляемого пакета различается в зависимости от реализации. По умолчанию 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-пакеты. Надеюсь, это поможет :)

решение2

По умолчанию Traceroute использует UDP, ICMP Echo Request или TCP SYN пакеты, которые также могут быть использованы. Если вы использовали tracroute -T, вы будете использовать TCP SYN для зондов, в то время как если вы использовали traceroute -I, вы будете использовать icmp echo пакеты для зондов.

Связанный контент