Введение
Терминальные программы tracepath и traceroute имеют важное значение для диагностики сети.
Обе команды создают карту сети и отображают возможные маршруты пакетов и транзитные задержки от источника к месту назначения.
Однако существует разница между доступными опциями и тем, какие пользователи могут использовать каждую команду.
В этой статье описывается разница между traceroute и tracepath и показываются примеры использования.
Различия между Tracepath и Traceroute
Основное различие между tracepath и traceroute заключается в доступных опциях и привилегиях пользователя.
С опциями по умолчанию эти две команды похожи.
Tracepath отслеживает путь к указанному пункту назначения с помощью UDP-пакетов.
Без каких-либо опций команда выводит:
- TTL (Time To Live) время прохождения пакета в оба конца.
- MTU (Maximum Transmission Units) или самый большой пакет, который tracepath может отправить по сети.
- Срезолвенное доменное имя, когда это возможно.
Traceroute отображает сетевой путь к указанному месту назначения.
Без каких-либо опций команда отправляет UDP-пакеты и выводит на терминал:
- Время TTL в оба конца для трех пакетов.
- Максимальное количество переходов и размер пакета в байтах.
- IP-адрес и срезолвенное доменное имя, если это возможно.
Однако traceroute предлагает множество дополнительных опций на выбор, например, выбор между протоколами передачи ICMP и TCP и многое другое.
Некоторые опции требуют привилегий суперпользователя (sudo), поскольку команда работает непосредственно с необработанными пакетами.
Как используется команда Tracepath?
Если инструмент не установлен:
apt install iputils-tracapath
Синтаксис команды tracepath следующий:
tracepath <options> <destination IP or domain name>
Например, проследим путь к одному из IP-адресов itsecforu для тестирования скорости:
tracepath itsecforu.ru
Программа Tracepath предлагает несколько простых опций.
Например, отобразить только IP-адрес для более быстрого вывода:
tracepath -n itsecforu.ru
В выводе не отображается доменное имя.
Для получения полного списка опций запустите руководство с помощью команды man:
man tracepath
или без опций:
В общем, используйте tracepath для простого сканирования сети.
Как используется команда Traceroute?
Синтаксис команды traceroute следующий:
traceroute <options> <destination IP or domain name>
Примечание: Traceroute не установлен? Воспользуйтесь менеджером пакетов apt и установите его с помощью:
sudo apt install traceroute
traceroute 8.8.8.8
Примером команды, требующей привилегий sudo, является указание протокола TCP:
sudo traceroute -T 8.8.8.8
Программа traceroute предлагает множество других опций для настройки размера пакета, количества отправляемых зондов, установки максимального TTL и т.д.
Для получения подробного списка используйте:
man traceroute
Или аналогично без опций:
Заключение
После прочтения этого руководства вы знаете, как использовать traceroute и tracepath и в чем разница между этими двумя командами.
Вы можете использовать эти команды вместе с другими сетевыми командами Linux, такими как ss, netstat и ip.