Портал > База знаний > Администрирование > Сетевые проблемы: диагностика с помощью MTR


Сетевые проблемы: диагностика с помощью MTR




Одной из причин недоступности или "торможения" сервера может выступать потеря пакетов на промежуточных узлах маршрута (например, по причине аварии у магистрального провайдера).
Выявить это поможет утилита MTR (для ОС Windows это WinMTR), сочетающая в себе ping и traceroute, т.е. позволяющая опрашивать IP-адрес сервера как ping (icmp echo) и при этом показывать точки маршрута, по которому проходит пакет.
По умолчанию в системе не установлена данная утилита, поэтому ниже приведены способы установки на разных ОС.

CentOS:
yum install mtr
Fedora:
dnf install mtr
Debian/Ubuntu:

apt-get install mtr-tiny
MacOSX:
sudo port install mtr
Windows:
С помощью установщика отсюда - WinMTR или https://winmtr.ru.uptodown.com/windows/download

Диагностику лучше проводить в двух направлениях (комп-->сервер и сервер-->комп), если это возможно.
Опрашивать можно как IP-адрес, так и домен.

Отправлять нужно не менее 100 запросов (ключ -c) и запускать в режиме отчёта, т.е. чтобы были отправлены запросы и после этого результат вывелся на экран (ключ -r).
Также необходимо отключить разрешения имён, чтобы отображались IP-адреса вместо их PTR-записей (ключ -n).
Подробнее о ключах mtr можно узнать здесь - https://www.opennet.ru/man.shtml?topic=mtr&category=8 или по поманде man mtr.

Использование MTR в Linux:
В конечном итоге пример команды будет выглядеть так:

mtr -prnc 100 ya.ru
sudo /usr/local/sbin/mtr -prnc 100 ya.ru -
запуск в MacOSX
Разберём вывод данной команды:
mtr results

  • HOST — имя хоста;
  • Loss % — процент потерянных пакетов;
  • Snt — количество отправленных пакетов;
  • Last — время задержки последнего полученного пакета;
  • Avg — среднее время задержки;
  • Best — минимальное время задержки;
  • Wrst — максимальное время задержки;
  • StDev — среднеквадратичное отклонение времени задержки.
Толкование:
На узлах 4, 7 и 8 закрыт icmp или на них есть фильтрация пакетов по TTL.

На 2 узле виден 1% потерь.
Подобное может происходить на промежуточных узлах маршрута из-за ограничений на частоту запросов у магистральных провайдеров. Это не является проблемой.
Задержка часто относительная и зависит от качества связи между узлами, их физическим расстоянием и опять же от ограничений на частоту icmp-запросов.
Есть возможность запуска для проверки TCP-пакетами (ключ -T или --tcp).

Смотреть нужно именно на наличие потерь конечного узла. Здесь их нет - 0%.


В Windows запускать утилиту нужно с правами администратора.
Разрешение имён отключается в Options (снять галочку Resolve names).
Пример вывода:
mtr results windows
  • Hostname — IP-адрес или доменное имя узла. Значение "No response from host" может указывать на блокировку ICMP-пакетов на данном узле;
  • Nr — порядковый номер узла в маршруте;
  • Loss % — процент потерянных ответов от данного узла;
  • Sent — отправлено запросов данному узлу;
  • Recv — получено ответов от узла;
  • Best — наименьшее (наилучшее) время задержки в миллисекундах;
  • Avrg — среднее время задержки;
  • Worst — наибольшее (наихудшее) время задержки;
  • Last — время задержки последнего полученного пакета.
Если в результате выполнения опроса на последнем узле есть существенные потери (более 1%), то вы можете обратиться за помощью в техподдержку, предоставив результат в текстовом виде (не в виде скриншота).

Этот ответ был полезен?

Добавить в избранное Добавить в избранное    Распечатать статью Распечатать статью

Также читают
MacOS: FAQ (просмотров: 3614)