Top.Mail.Ru

WinMTR, pathping, ping, tracert | Диагностики сети

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

В общем, чтобы попытаться выяснить в чем причина подобного поведения предлагаю рассмотреть инструменты, позволяющие диагностировать проблемы с сетью. А конкретно поговорить об утилите pathping и программе WinMTR.

Запись видеоурока на RuTuBe

Запись видеоурока во ВКонтакте

Запись видеоурока на YouTuBe



Начнем с утилиты pathping – это встроенная утилита операционных систем Windows и суть её работы заключается в объединении функций утилиты ping и tracert.

Утилита ping отправляет на нужный нам адрес в сети пакеты для проверки его доступности

C:\Users\IT-Skills>ping it-skills.online
Обмен пакетами с it-skills.online [45.130.41.88] с 32 байтами данных:
Ответ от 45.130.41.88: число байт=32 время=60мс TTL=55
Ответ от 45.130.41.88: число байт=32 время=57мс TTL=55
Ответ от 45.130.41.88: число байт=32 время=58мс TTL=55
Ответ от 45.130.41.88: число байт=32 время=58мс TTL=55

Статистика Ping для 45.130.41.88:
   Пакетов: отправлено = 4, получено = 4, потеряно = 0
   (0% потерь)
Приблизительное время приема-передачи в мс:
   Минимальное = 57мсек, Максимальное = 60 мсек, Среднее = 58 мсек

По умолчанию, отправляется 4 пакета, но при использовании дополнительных ключей, мы можем увеличить их количество.

C:\Users\IT-Skills>ping -n 10 it-skills.online
Обмен пакетами с it-skills.online [45.130.41.88] с 32 байтами данных:
Ответ от 45.130.41.88: число байт=32 время=58мс TTL=55
Ответ от 45.130.41.88: число байт=32 время=58мс TTL=55
Ответ от 45.130.41.88: число байт=32 время=58мс TTL=55
Ответ от 45.130.41.88: число байт=32 время=58мс TTL=55
Ответ от 45.130.41.88: число байт=32 время=58мс TTL=55
Ответ от 45.130.41.88: число байт=32 время=59мс TTL=55
Ответ от 45.130.41.88: число байт=32 время=58мс TTL=55
Ответ от 45.130.41.88: число байт=32 время=57мс TTL=55
Ответ от 45.130.41.88: число байт=32 время=58мс TTL=55
Ответ от 45.130.41.88: число байт=32 время=58мс TTL=56

Статистика Ping для 45.130.41.88:
   Пакетов: отправлено = 10, получено = 10, потеряно = 0
   (0% потерь)
Приблизительное время приема-передачи в мс:
   Минимальное = 57мсек, Максимальное = 59 мсек, Среднее = 58 мсек

Либо, можно указать бесконечное количество отправляемых пакетов

C:\Users\IT-Skills>ping -t it-skills.online
Обмен пакетами с it-skills.online [45.130.41.88] с 32 байтами данных:
Ответ от 45.130.41.88: число байт=32 время=58мс TTL=55
Ответ от 45.130.41.88: число байт=32 время=58мс TTL=55
Ответ от 45.130.41.88: число байт=32 время=58мс TTL=55
Ответ от 45.130.41.88: число байт=32 время=58мс TTL=55
Ответ от 45.130.41.88: число байт=32 время=58мс TTL=55
Ответ от 45.130.41.88: число байт=32 время=58мс TTL=55
Ответ от 45.130.41.88: число байт=32 время=58мс TTL=55
Ответ от 45.130.41.88: число байт=32 время=58мс TTL=55
Ответ от 45.130.41.88: число байт=32 время=58мс TTL=55
Ответ от 45.130.41.88: число байт=32 время=57мс TTL=56
Ответ от 45.130.41.88: число байт=32 время=58мс TTL=56
Ответ от 45.130.41.88: число байт=32 время=58мс TTL=56
Ответ от 45.130.41.88: число байт=32 время=57мс TTL=56
Ответ от 45.130.41.88: число байт=32 время=58мс TTL=56
Ответ от 45.130.41.88: число байт=32 время=57мс TTL=56
Ответ от 45.130.41.88: число байт=32 время=57мс TTL=56
Ответ от 45.130.41.88: число байт=32 время=57мс TTL=56
Ответ от 45.130.41.88: число байт=32 время=57мс TTL=56
Ответ от 45.130.41.88: число байт=32 время=57мс TTL=56
Ответ от 45.130.41.88: число байт=32 время=57мс TTL=56
Ответ от 45.130.41.88: число байт=32 время=57мс TTL=56
Ответ от 45.130.41.88: число байт=32 время=57мс TTL=56
Ответ от 45.130.41.88: число байт=32 время=58мс TTL=56
Ответ от 45.130.41.88: число байт=32 время=57мс TTL=56
Ответ от 45.130.41.88: число байт=32 время=58мс TTL=56

Статистика Ping для 45.130.41.88:
   Пакетов: отправлено = 25, получено = 25, потеряно = 0
   (0% потерь)
Приблизительное время приема-передачи в мс:
   Минимальное = 57мсек, Максимальное = 58 мсек, Среднее = 57 мсек

Таким образом мы можем предварительно продиагностировать доступность какого-либо ресурса и примерно понять, есть ли какие-то проблемы с сетью или нет. И если проблемы есть, нужно выяснить на каком именно этапе появляются проблемы.

Так вот утилита tracert позволяет узнать по какому маршруту или через какое именно оборудование проходит пакет.

C:\Users\IT-Skills>tracert it-skills.online
Трассировка маршрута к it-skills.online [45.130.41.88]
с максимальным числом прыжков 30:

  1     1 ms    <1 мс    <1 мс  router [192.168.88.1] – мой роутер
2     2 ms     2 ms     2 ms  192.168.0.1 – коммутатор к которому подключен мой роутер и т.д.
3     3 ms     2 ms     2 ms  100.96.0.1
4     3 ms     3 ms     3 ms  94.233.252.169
5     3 ms     3 ms     3 ms  94.233.252.168
6     *        *        *     Превышен интервал ожидания для запроса.
7    24 ms    24 ms    25 ms  pe-l.volgograd.gldn.net [79.104.207.117]
8     *        *        *     Превышен интервал ожидания для запроса.
9    51 ms    50 ms    49 ms  be10.tf01-02.moscow.gldn.net [81.211.45.63]
10     *        *        *     Превышен интервал ожидания для запроса.
11    39 ms    39 ms    39 ms  62.105.132.145
12     *        *        *     Превышен интервал ожидания для запроса.
13    58 ms    58 ms    58 ms  ssl.gimli.beget.com [45.130.41.88]

Трассировка завершена.

Маршрут мы видим, но как понять, где именно проблемы?

Строки «Превышен интервал ожидания для запроса» не говорят о наличии проблемы на данном участке, скорее всего там просто запрещена отправка ответа при запросе доступности устройства.

Получите бесплатную лабораторию с пошаговой инструкцией по установке Active Directory.

Материалы позволят разобраться в таких темах как: Active Directory, групповые политики (GPO), администрирование 1С, настройка файлового сервера, удаленное администрирование, WSUS, основы Linux и т.д.

Здесь нам и поможет утилита pathping которая совмещает функции программы ping и tracert.

Дело в том, что она может отправлять каждому узлу на маршруте то количество пакетов, которое мы укажем и вывести отчет, о потерях на каждом узле.

По умолчанию утилита pathping отправляет 100 запросов, поэтому чтобы долго не ждать, я задам 10 запросов через указание дополнительного ключе -q. Если хотите узнать более подробную информацию о каждой из этих утилит, можно воспользоваться справкой pathping /? там все подробно описано.

C:\Users\IT-Skills>pathping -q 10 it-skills.online
Трассировка маршрута к it-skills.online [45.130.41.88]
с максимальным числом переходов 30:
0  DESKTOP-2K06788 [192.168.88.254]
1  router [192.168.88.1]
2  192.168.0.1
3  100.96.0.1
4  94.233.252.169
5  94.233.252.168
6     *        *        *

Подсчет статистики за: 12 сек. ...
          Исходный узел     Маршрутный узел
Прыжок  RTT   Утер./Отпр.   %   Утер./Отпр.  %   Адрес
0                                           DESKTOP-2K06788 [192.168.88.254]
                               0/  10 =  0%   |
1    1мс     0/  10 =  0%     0/  10 =  0%  router [192.168.88.1]
                               0/  10 =  0%   |
2    2мс     0/  10 =  0%     0/  10 =  0%  192.168.0.1
                               0/  10 =  0%   |
3  —      10/  10 =100%    10/  10 =100%  100.96.0.1
                               0/  10 =  0%   |
4    6мс     0/  10 =  0%     0/  10 =  0%  94.233.252.169
                               0/  10 =  0%   |
5    3мс     0/  10 =  0%     0/  10 =  0%  94.233.252.168

Трассировка завершена.

Мы видим 100% потери на узле 100.96.0.1 но это скорее всего так же запрет на отправку информации о доступности узла.

Что еще мы видим? А мы видим, что утилита пропинговала не все узлы, а лишь дошла до пятого! Почему?

Все дело в том, что утилита pathping перестает работать, когда доходит до «недоступного узла», о чем сигнализируют звездочки, и дальше по маршруту не идет.

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

Допустим из моей практики, подобным образом я определил, что на одном из коммутаторов идет потеря пакетов и оказалось, что у него был неисправен порт. Я подключил в другой порт и сеть стала стабильно работать. Как вариант, это могло быть и повреждение кабеля или нужно было переобжать коннектор.

Так вот, если вам необходимо подобным образом пропинговать все узлы на маршруте, то в этом поможет программа WinMTR скачать которую можно по ссылке - https://winmtr.ru/

Вводим в поле Host, домен сайта или IP-адрес узла \ Start и в режиме реального времени смотрим за отправкой тестовых пакетов на каждый узел который встречается на указанном маршруте.

В результате чего мы видим следующую информацию:

Hostname — доменное имя/IP-адрес узла;

Nr — порядковый номер узла в маршруте;

Loss %" — процентное потерь до выбранного узла;

Sent — кол-во отправленных запросов узлу;

Recv — число полученных ответов от этого узла;

Best – лучшее или наименьшее время ответа удаленного узла в миллисекундах.

Avrg – среднее время задержки пакетов или среднее время ответа.

Worst – наибольшее или наихудшее время ответа удаленного узла.

Last – время задержки последнего полученного пакета.

 

Тут мы видим, что на 4 этапе, у нас порядка 25% потерь, но это совершенно не означает, что именно там проблемы, так как далее, процент потерь опять становится 0. Скорее всего, это опять же настройка на ограничение отправки ответных пакетов.

Как мы видим, по сути тут нигде потерь нет и все нормально.

Данной программой часто пользуются специалисты технической поддержки провайдеров. Они могут вас попросить запустить проверку какого-то узла и отправить им отчет, который можно выгрузить в текстовый файл или html страницу.

Например, вот мой отчет в котором статистика собиралась порядка 15 часов. Как вы видите, тут есть потери равные 1% и судя по зависимостям эти проблемы пошли от моего роутера, а дальше отразились на остальной статистике. Но, это не критично, учитывая, что тест проводился в течении 15 часов. И, кстати, не факт, что это прям 1%, так как статистика в программе округляется в большую сторону. Если у вас даже один пакет будет потерян, процент потерь сразу станет 1 (единица), так что 1% это вообще не показатель.

В общем, анализируем отчет и смотрим, если процент потерь на каком-то этапе увеличился и ухудшает статистику по следующим узлам, то скорее всего в нем проблема. К примеру, если бы у меня % потерь был большой на последнем этапе, то тут явно нужно было обращаться в техподдержку моего хостера, так как на их оборудовании ухудшается связь, а значит они предоставляют некачественные услуги.

Причем, стоит учитывать, что подобную статистику как утилита pathping так и WinMTR отображает только для устройств сетевого уровня которые имеют IP адреса, такие устройства как конверторы, повторители, усилители и т.д. тут отображаться не будут. Но, как минимум, вы можете понять на каком сегменте появляются проблемы и если на нем присутствуют подобные устройства, то попробовать их продиагностировать. Опять же проблемы возможны и в физическом повреждении кабеля.

Еще одна история из личного опыта, была у меня ситуация, когда были большие потери и связь постоянно терялась при работе через WiFi, и подобный способ позволил мне выяснить, что проблема была не в WiFi сети, а в кабеле, который соединял точку доступа с коммутатором.