Использование MTR

для раздела Блоги
MTR объединяет в себе функционал программ traceroute и ping в единый инструмент диагностики сети и позволяет постоянно опрашивать удаленный сервер и отслеживать изменения задержки и производительности в реальном времени.
Программа mtr работает по принципу трассировок команды tracert и позволяет выполнять диагностику сети в более удобном и наглядном режиме.

В большинстве операционных систем mtr не поставляется по умолчанию. Для установки программы mtr(например из entware) используется команда:

opkg install mtr

В ОС Debian или Ubuntu программу можно установить командой:

apt-get install mtr

Синтаксис команд mtr:

mtr [--help] [--version] [-4|-6] [-F FILENAME]
[--report] [--report-wide]
[--xml] [--gtk] [--curses] [--raw] [--csv] [--split]
[--no-dns] [--show-ips] [-o FIELDS] [-y IPINFO] [--aslookup]
[-i INTERVAL] [-c COUNT] [-s PACKETSIZE] [-B BITPATTERN]
[-Q TOS] [--mpls]
[-a ADDRESS] [-f FIRST-TTL] [-m MAX-TTL]
[--udp] [--tcp] [-P PORT] [-Z TIMEOUT]
[-M MARK] HOSTNAME


Основные команды mtr:

-h, –help — Вывод справки

-v, –version — Версия программы

-c <число>
–report-cycles <число> — Количество циклов проверки (количество отправленных пакетов), после которых программа завершит работу.

-r
–report
— Режим отчета. Программа выполнит указанное при помощи параметра -c количество циклов, выведет отчет и завершит свою работу. Этот режим полезен для генерации статистики о качестве сети.

-w
–report-wide
— Режим расширенного отчета. Результат такой же, как при использовании опции -r, но длинные имена хостов обрезаться не будут.

-s <количество-байт>
–psize <количество-байт> — Установить размер пакетов для отправки. Кроме этого можно указать размер пакета при помощи переменной окружения PACKETSIZE, например, такой командой: PACKETSIZE=1024 mtr <опции>

-t
–curses
— Форсированный запуск в текстовом режиме. По умолчанию MTR запускается в графическом режиме, если он доступен.

-e
–MPLS
— Отображать метки MPLS (Multiprotocol Label Switching), коммутации по меткам трафика, которые закодированы в ответе.

-n
–nodns
— Не использовать DNS для разрешения имен хостов и отображать вместо них IP-адреса.

-o <список-полей>
–order <список полей> — Отображать только указанные поля и в таком порядке, в котором они были указаны.

-g
–gtk — Форсировать работу в графическом интерфейсе, если он доступен. Эта опция работает только в том случае, если MTR собран с поддержкой графического режима (а это вполне может быть не так).

-p
–split
— Выводить информацию построчно, без перерисовки экрана, с разделением полей пробелом. Этот формат удобен если вы используете какую-то дополнительную программу-парсер или скрипт для анализа, которому передаются данные.

-l
–raw
— Использовать “сырой” формат вывода. То есть выводить неформатированные данные

-a <IP-адрес>
–address <IP-адрес> — Указать адрес интерфейса, с которого будут отправляться пакеты

-i <число>
–interval <число> — Интервал между отправляемыми запросами в секундах.

-u — Использовать протокол UDP для отправки пакетов.

-4 — Использовать только IPv4.

-6 — Использовать только IPv6.

*** Примечание.
Параметры, указанные между знаками < > в программе вводятся без таковых.
Все команды и их последовательность вводятся в консоли через пробел.

Пояснение по отправке UDP-пакетов:
На целевом хосте IP-дейтаграмма с TTL = 1 не отбрасывается и не вызывает ICMP-сообщения типа срок истёк, а должна быть отдана приложению. Достижение пункта назначения определяется следующим образом: отсылаемые traceroute дейтаграммы содержат UDP-пакет с заведомо неиспользуемым номером порта на адресуемом хосте. Номер порта будет равен 33434 + (максимальное количество хопов до узла) — 1. В пункте назначения UDP-модуль, получая подобные дейтаграммы, возвращает ICMP сообщения об ошибке «порт недоступен (Port Unreachable). Таким образом, чтобы узнать о завершении работы, программе traceroute достаточно обнаружить, что поступило ICMP-сообщение об ошибке этого типа.

Простой пример выполнения программы:

mtr -c 100 -r 83.137.216.213 (отправка 100 пакетов на хост 83.137.216.213 и по окончании вывод отчёта)



Программу можно вызвать например при помощи команды:

mtr google.com (имя хоста можно заменить ip-адресом)


Вывод данных mtr постоянно обновляется. Это позволяет собирать средние показатели, а также отслеживать изменения производительности сети в реальном времени.
mtr позволяет отслеживать подобные ситуации путем сбора данных в широком диапазоне времени.
mtr можно запустить с опцией --report, которая вернёт результаты отправки 10 пакетов на каждый хоп: mtr --report google.com


Эта функция полезна может охватить более широкий спектр данных, предоставленных traceroute, не ограничиваясь реальным временем.

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

mtr -c 100 -r google.com >> report.txt

Программа mtr помогает выявить, какой из серверов на пути к определенному хосту вызывает проблемы. Что полезно при диагностике и устранении неполадок в сети. Также это может быть полезным при необходимости предоставления информации провайдеру для решения проблем.

Сайт программы: www.bitwizard.nl

По материалам из интернета и открытых источников, а также своего личного опыта.
Telegram-канал @overclockers_news - это удобный способ следить за новыми материалами на сайте. С картинками, расширенными описаниями и без рекламы.
Оценитe материал

Теги

Возможно вас заинтересует

Популярные новости

Сейчас обсуждают