Использование mtr для диагностики сети
Надёжность, доступная каждому

Использование mtr для диагностики сети

В глобальной сети IP пакеты проходят множество транзитных узлов, каждый из которых может служить причиной нестабильной работы сети. Для диагностики сетевых проблем удобно использовать утилиту mtr (Winmtr для Windows), которая сочетает в себе функции программ ping и traceroute. Поскольку маршрутизация может быть асимметричная, трассировку желательно проводить в обоих направлениях.

#Установка mtr в CentOS
yum install mtr

#Установка mtr в Debian/Ubuntu
apt-get install mtr-tiny

#Установка mtr в Fedora
dnf install mtr

#Установка mtr в OpenSUSE
zypper install mtr

#Установочные пакеты для Windows
http://winmtr.net/download-winmtr/

Рассмотрим вывод mtr -r -c 100 google.com:

HOST: vm204399.local              Loss%   Snt   Last   Avg  Best  Wrst StDev
 1.|-- 172.20.10.7                0.0%   100    0.2   0.2   0.2   2.6   0.2
 2.|-- ???                       100.0   100    0.0   0.0   0.0   0.0   0.0
 3.|-- ???                       100.0   100    0.0   0.0   0.0   0.0   0.0
 4.|-- 209.85.251.34              0.0%   100    1.4   9.6   1.3 102.2  24.5                                                                                                                    
 5.|-- 209.85.243.149             0.0%   100   23.4  23.5  23.2  30.4   0.7                                                                                                                    
 6.|-- 209.85.246.98              0.0%   100   32.1  30.1  27.4  48.6   4.8                                                                                    
 7.|-- 209.85.251.206             0.0%   100   41.6  41.9  41.5  53.3   1.1                                                                                                                    
 8.|-- 66.249.94.138              0.0%   100   41.4  42.6  41.4  57.8   3.9
 9.|-- 209.85.240.161             0.0%   100   76.1  75.8  75.2  93.3   2.2
10.|-- 72.14.235.7                0.0%   100   75.1  75.2  75.1  78.1   0.4
11.|-- 64.233.175.249             0.0%   100   75.1  75.1  75.0  77.6   0.2
12.|-- sof02s21-in-f14.1e100.net  0.0%   100   75.2  75.1  75.0  75.9   0.0

HOST — имя хоста;
Loss% — процент потерь пакетов;
Snt — количество отправленных пакетов;
Last — время задержки последнего отправленного пакета в миллисекундах;
Avg — среднее время задержки;
Best — минимальное время задержки;
Wrst — максимальное время задержки;
StDev — среднеквадратичное отклонение времени задержки;

Из вывода видно, что cеть функционирует в нормальном режиме, а узлы 2 и 3 не принимают ICMP запросы или фильтруют пакеты по TTL.

Также возможно использование TCP SYN вместо ICMP ECHO, для этого необходимо указать ключ tcp, например:

mtr --tcp --port 80 -r -c 100 google.com