Гид по технологиям

MTR — объединённый инструмент ping и traceroute для Linux

• 5 min read • Сеть • Обновлено 29 Nov 2025
MTR: объединённый ping и traceroute для Linux
MTR: объединённый ping и traceroute для Linux

Что такое MTR

MTR (Matt’s Traceroute) — утилита для диагностики сетевых подключений, которая комбинирует поведение ping и traceroute в реальном времени. Идея простая: MTR отправляет последовательность ICMP-пакетов (или UDP/TCP в зависимости от настроек), увеличивая TTL (Time To Live) на каждом шаге, чтобы определить последовательность маршрутизаторов (хопов) между вашим компьютером и целью. Результаты обновляются непрерывно, пока работает утилита.

Коротко:

  • TTL — число «прыжков», которое пакет может сделать; MTR использует это, чтобы открыть путь по шагам.
  • ICMP — тип сообщений, используемых по умолчанию для проверки доступности и измерения задержек.

Важно: некоторые роутеры и провайдеры могут ограничивать или приоритизировать ICMP, поэтому интерпретация результатов требует осторожности.

Анимация MTR с последовательными хопами сети и изменяющимися задержками

Установка

Команды зависят от дистрибутива. Ниже — часто используемые варианты.

Debian / Ubuntu:

sudo apt update
sudo apt install mtr

Минимальная версия (меньше зависимостей):

sudo apt install mtr-tiny

Fedora / CentOS / RHEL:

sudo dnf install mtr

или для старых CentOS:

sudo yum install mtr

Arch Linux:

sudo pacman -S mtr

Компиляция из исходников (если в репозитории нет пакета):

./configure
make
sudo make install

Примечание: на некоторых системах mtr требует повышенных привилегий для корректной отправки ICMP-пакетов; пакет может устанавливать бит setuid root. Если этого нет, запускайте через sudo.

Запуск и основные опции

Базовый пример:

mtr google.com

Варианты интерфейса:

mtr --curses google.com     # текстовый интерфейс в терминале
mtr --gtk google.com        # графический интерфейс (если установлен)

Режим отчёта (полезно для логов):

mtr -r -c 100 google.com    # -r — report, -c — число пакетов

Другие полезные опции:

  • -n — не пытаться резолвить имена (показывает IP)
  • -4 / -6 — принудительно IPv4 или IPv6
  • -i X — интервал между пакетами в секундах
  • -s SIZE — размер отправляемых пакетов
  • –address ADDRESS — принудительно тестировать конкретный IP

Пример для теста локального IP:

mtr --address 127.0.0.1

Пример вывода и разбор столбцов

Ниже — упрощённый пример вывода mtr (формат без резолвинга имён):

Start: 2025-11-29 12:00:00
HOST: myhost                  Loss%   Snt   Last   Avg  Best  Wrst StDev
  1. 10.0.0.1                 0.0%    100   0.3   0.5   0.2   1.2   0.1
  2. 192.0.2.1                0.0%    100   1.5   1.7   1.2   3.0   0.2
  3. 203.0.113.5              5.0%    100  12.3  14.1  10.9  50.2   6.8
  4. 8.8.8.8                  0.0%    100  15.0  14.8  11.5  20.1   2.1

Объяснение столбцов:

  • Loss% — процент потерянных пакетов на данном хопе.
  • Snt — отправлено пакетов к этому хопу.
  • Last / Avg / Best / Wrst / StDev — последнее значение RTT, среднее, лучшее, худшее и стандартное отклонение.

Как читать: если потеря пакетов появляется на промежуточном хопе и затем сохраняется на последующих — вероятно, реальная проблема на этом узле. Если же потеря видна только на промежуточном хопе, но не на конечной цели, часто это означает приоритизацию ICMP или ограничение ответов на нагрузку — не обязательно проблемы с доставкой трафика.

Как интерпретировать результаты — практические советы

  • Высокая задержка (Avg и Wrst) на одном хопе, но нормальная на следующем: часто это признак того, что данный роутер просто не отвечает приоритетно на ICMP и не влияет на реальный проходящий трафик.
  • Постоянная потеря на последнем хопе: проблема у конечного хоста или у последнего сегмента сети.
  • Резкие скачки StDev: возможна нестабильность маршрута или временная перегрузка.
  • Ассиметричные маршруты: ответы могут идти по другому пути, поэтому отображаемая последовательность иногда не показывает «обратный» маршрут.

Важно: многие провайдеры и устройства снижают приоритет ICMP; вывод MTR нужно интерпретировать в контексте — используйте дополнительные тесты (ping, tcptraceroute) для подтверждения.

Когда MTR вводит в заблуждение

  • ICMP-лимитирование или фильтрация на промежуточных устройствах.
  • Балансировка нагрузки: разные пакеты идут разными путями, результаты становятся «шумными».
  • Брандмауэры могут блокировать или приоритизировать определённые типы пакетов.
  • NAT/прокси и MPLS могут скрывать реальные промежуточные шаги.

Если видите странные результаты, повторите тест с ключами -n, -c увеличьте число пакетов и сравните с tcp/udp трассировкой (tcptraceroute) для портов, важных для вашего сервиса.

Альтернативы и доп. инструменты

  • traceroute / tracepath — классические утилиты для одноразовой трассировки.
  • tcptraceroute / hping3 — для проверки маршрута TCP-пакетами (полезно, если ICMP блокируется).
  • ping — быстрый тест доступности и базовой стабильности.
  • smokeping / pingplotter — длительный мониторинг и графики.

Быстрый чеклист для диагностики (SOP)

  1. Запустите mtr с ключом -n и большим количеством пакетов: mtr -r -c 200 -n target
  2. Сохраните вывод в файл: mtr -r -c 200 -n target > mtr-report.txt
  3. Проверьте, где начинается потеря пакетов и остаётся ли она на последующих хопах.
  4. Если потеря видна только на промежуточных хопах, выполните tcptraceroute к нужному порту.
  5. Запустите тесты с удалённого хоста (если доступно), чтобы исключить локальную проблему.
  6. Соберите дату/время, описание проблемы и конфигурацию сети перед обращением в техподдержку.

Роль-based чеклист (кратко):

  • Helpdesk: соберите mtr -r -c 100 -n и снимок экрана/файл.
  • Системный администратор: сравните mtr с tcptraceroute, посмотрите логи сетевых устройств.
  • Инженер сети: проверьте QoS, таблицы маршрутизации и интерфейсные статистики на устройствах.

Безопасность и приватность

  • В выводе могут быть приватные IP (RFC1918). Перед отправкой отчёта вне организации обрежьте внутренние адреса или укажите только публичные маршруты.
  • Сбор данных сдвоенными командами (mtr и tcptraceroute) помогает определить, блокирует ли сеть ICMP.
  • При публикации логов учитывайте политику конфиденциальности и GDPR, если в отчётах присутствуют персональные данные.

Краткая справка: команды под рукой

mtr -r -c 200 -n example.com     # отчёт 200 пакетов, без резолвинга имён
mtr --address 203.0.113.10        # тест конкретного IP
mtr -4 google.com                 # принудительный IPv4
mtr -6 ipv6.google.com            # принудительный IPv6

Мини-словарь (одной строкой)

  • TTL — ограничение числа хопов пакета; помогает выявлять отдельные узлы маршрута.
  • ICMP — протокол сообщений, часто используется для ping/MTR.
  • Хоп — промежуточное устройство (роутер) на пути пакета.
  • RTT — round-trip time, время туда-обратно пакета.

Резюме

MTR — простой и мощный инструмент для быстрой диагностики сетевых путей: он показывает последовательные хопы и статистику задержек/потерь в режиме реального времени. При его использовании учитывайте особенности обработки ICMP устройствами сети, сравнивайте результаты с tcp-трассировкой при необходимости и сохраняйте отчёты перед обращением в поддержку.

Image credit: Medical Instrument With Computer by BigStockPhoto

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро