Traceroute, Tracert и Tracepath — в чём разница и что использовать

Traceroute Tracert Tracepath

Есть ситуации, когда Вам требуется быстро определить маршрут до хоста в сети. Для этого есть специальные утилиты трассировки: traceroute, tracert и tracepath. Все эти программы работают схожим образом — отправляют пакеты с увеличивающимся TTL и фиксируют ответы от промежуточных узлов. Но есть некоторые существенные отличия, которые стоит знать и учитывать.

traceroute (Linux)

По умолчанию утилита traceroute использует UDP, но можно переключиться на ICMP. Пример использования утилиты traceroute:

traceroute set-os.ru # протокол UDP
traceroute -I set-os.ru # протокол ICMP

UDP-пакеты могут блокироваться, и вы не получите ответ. Поэтому ICMP часто предпочтительнее в реальных условиях.

tracert (Windows)

Использует только ICMP, без возможности выбора. Удобен и прост, но менее гибок.
Чтобы запустить команду, необходимо:

  • Кликнуть правой кнопкой мыши по значку «Windows» внизу экрана.
  • Выбрать пункт меню «Выполнить».
  • Ввести команду «cmd» и нажать кнопку «ОК» чтобы открить командную строку.
  • Ввести команду tracert и далее имя хоста либо его IP-адрес.
  • Нажать клавишу «Enter».

Пример:

tracert set-os.ru

Результатом будет трассировка маршрута до указанного узла сети.

tracepath (Linux)

Утилита tracepath это практически аналог traceroute. Здесь так же используется протокол UDP. Только теперь дополнительно отображается MTU на каждом участке маршрута. Это очень и очень полезно при диагностике проблем с фрагментацией, особенно в VPN или туннелях.


Пример:

tracepath set-os.ru

Что же выбрать?

В ОС Linux чаще всего нужна универсальность и потому, как правило, наиболее часто используется: traceroute -I.

А вот если требуется уже конкретно информация по MTU — тогда уже стоит использовать tracepath.

В ОС Windows особо то и выбора нет — только использовать tracert, но ICMP чаще проходит успешно. Как вариант, можно воспользоваться графической утилитой WinMTR.

Оставьте комментарий


Рейтинг@Mail.ru