MTR – это простой кроссплатформенный инструмент диагностики сети с командной строкой, который объединяет функционал широко используемых программ traceroute и ping в одном инструменте. Подобно traceroute, mtr выводит информацию о маршруте, который пакеты проходят от хоста, на котором запущен mtr, к указанному пользователем удаленному хосту.
Читайте также: Как проверить производительность, безопасность и устранить неполадки в сети Linux
Однако mtr показывает больше информации, чем traceroute: он определяет путь к удаленному компьютеру, печатая процент ответов и время ответа каждого сетевого узла в маршруте Интернета между локальной системой и удаленными компьютерами.
Как работает MTR?
После запуска mtr он проверяет сетевое соединение между локальной системой и указанным удаленным хостом. Сначала устанавливается адрес каждого сетевого узла (мосты, маршрутизаторы и шлюзы и т. д.) между хостами, затем пингует (отправляет последовательность запросов ICMP ECHO) каждый из них, чтобы определить качество связи с каждым компьютером.
Во время этой операции mtr выводит некоторую полезную статистику о каждом компьютере – по умолчанию обновляется в реальном времени.
Этот инструмент предустановлен в большинстве дистрибутивов Linux и довольно прост в использовании после ознакомления с 10 примерами команды mtr для сетевой диагностики в Linux, описанными ниже.
Если mtr не установлен, вы можете установить его на вашем соответствующем дистрибутиве Linux, используя менеджер пакетов по умолчанию, как показано.
$ sudo apt install mtr $ sudo yum install mtr $ sudo dnf install mtr
10 примеров использования сетевого диагностического инструмента MTR
1. Самый простой пример использования mtr – указать имя домена или IP-адрес удаленной машины в качестве аргумента, например google.com или 216.58.223.78. Эта команда покажет вам отчет traceroute, обновляемый в реальном времени, пока вы не выйдете из программы (нажав q
или Ctrl + C
).
$ mtr google.com OR $ mtr 216.58.223.78 Start: Thu Jun 28 12:10:13 2018 HOST: TecMint Loss% Snt Last Avg Best Wrst StDev 1.|-- 192.168.0.1 0.0% 5 0.3 0.3 0.3 0.4 0.0 2.|-- 5.5.5.211 0.0% 5 0.7 0.9 0.7 1.3 0.0 3.|-- 209.snat-111-91-120.hns.n 80.0% 5 7.1 7.1 7.1 7.1 0.0 4.|-- 72.14.194.226 0.0% 5 1.9 2.9 1.9 4.4 1.1 5.|-- 108.170.248.161 0.0% 5 2.9 3.5 2.0 4.3 0.7 6.|-- 216.239.62.237 0.0% 5 3.0 6.2 2.9 18.3 6.7 7.|-- bom05s12-in-f14.1e100.net 0.0% 5 2.1 2.4 2.0 3.8 0.5
2. Вы можете заставить mtr отображать числовые IP-адреса вместо имен хостов (обычно FQDN – Полные доменные имена), используя флаг -n
, как показано.
$ mtr -n google.com Start: Thu Jun 28 12:12:58 2018 HOST: TecMint Loss% Snt Last Avg Best Wrst StDev 1.|-- 192.168.0.1 0.0% 5 0.3 0.3 0.3 0.4 0.0 2.|-- 5.5.5.211 0.0% 5 0.9 0.9 0.8 1.1 0.0 3.|-- ??? 100.0 5 0.0 0.0 0.0 0.0 0.0 4.|-- 72.14.194.226 0.0% 5 2.0 2.0 1.9 2.0 0.0 5.|-- 108.170.248.161 0.0% 5 2.3 2.3 2.2 2.4 0.0 6.|-- 216.239.62.237 0.0% 5 3.0 3.2 3.0 3.3 0.0 7.|-- 172.217.160.174 0.0% 5 3.7 3.6 2.0 5.3 1.4
3. Если вы хотите, чтобы mtr отображал как имена хостов, так и числовые IP-номера, используйте флаг -b
, как показано.
$ mtr -b google.com Start: Thu Jun 28 12:14:36 2018 HOST: TecMint Loss% Snt Last Avg Best Wrst StDev 1.|-- 192.168.0.1 0.0% 5 0.3 0.3 0.3 0.4 0.0 2.|-- 5.5.5.211 0.0% 5 0.7 0.8 0.6 1.0 0.0 3.|-- 209.snat-111-91-120.hns.n 0.0% 5 1.4 1.6 1.3 2.1 0.0 4.|-- 72.14.194.226 0.0% 5 1.8 2.1 1.8 2.6 0.0 5.|-- 108.170.248.209 0.0% 5 2.0 1.9 1.8 2.0 0.0 6.|-- 216.239.56.115 0.0% 5 2.4 2.7 2.4 2.9 0.0 7.|-- bom07s15-in-f14.1e100.net 0.0% 5 3.7 2.2 1.7 3.7 0.9
4. Чтобы ограничить количество ping-ов до определенного значения и выйти из mtr после этих ping-ов, используйте флаг -c
. Если вы обратите внимание на столбец Snt, после достижения указанного числа пингов обновление останавливается и программа завершается.
$ mtr -c5 google.com
5. Вы можете установить его в режим отчета, используя флаг -r
, полезную опцию для получения статистики о качестве сети. Вы можете использовать эту опцию вместе с опцией -c
, чтобы указать количество пингов. Поскольку статистика выводится в std вывод, вы можете перенаправить ее в файл для последующего анализа.
$ mtr -r -c 5 google.com >mtr-report
Флаг -w
включает широкий режим отчета для более четкого вывода.
$ mtr -rw -c 5 google.com >mtr-report
6. Вы также можете переупорядочить выходные поля по вашему желанию, это можно сделать с помощью флага -o
, как показано (см. страницу руководства mtr для значения меток полей).
$ mtr -o "LSDR NBAW JMXI" 216.58.223.78

7. Интервал по умолчанию между запросами ICMP ECHO составляет одну секунду, вы можете указать интервал между запросами ICMP ECHO, изменив значение с помощью флага -i
, как показано.
$ mtr -i 2 google.com
8. Вы можете использовать пакеты TCP SYN или UDP датаграммы вместо запросов ICMP ECHO по умолчанию, как показано.
$ mtr --tcp test.com OR $ mtr --udp test.com
9. Чтобы указать максимальное количество прыжков (по умолчанию 30), которые будут просканированы между локальной системой и удаленной машиной, используйте флаг -m
.
$ mtr -m 35 216.58.223.78
10. При исследовании качества сети вы можете установить размер пакета в байтах, используя флаг -s
, как показано.
$ mtr -r -s PACKETSIZE -c 5 google.com >mtr-report
С этими примерами вы должны быть готовы к использованию mtr, см. страницу руководства для получения дополнительных вариантов использования.
$ man mtr
Также ознакомьтесь с этими полезными руководствами по настройке и устранению неполадок в сети Linux:
- 13 Команд конфигурации и устранения неполадок в сети Linux
- Как заблокировать запросы ICMP Ping к системам Linux
Вот и все! MTR – это простой, удобный и, прежде всего, платформенно-независимый инструмент диагностики сети. В этом руководстве мы объяснили 10 примеров команды mtr в Linux. Если у вас есть вопросы или мысли, которыми вы хотели бы поделиться с нами, используйте форму комментариев ниже.
Source:
https://www.tecmint.com/mtr-a-network-diagnostic-tool-for-linux/