PATHPING — встроенная утилита командной строки Windows, которая объединяет функции TRACERT и PING. Она прокладывает маршрут до цели, а затем отправляет серию пакетов через каждый промежуточный узел и измеряет потери и задержку на каждом хопе. Результат — точное указание на проблемный участок сети, чего обычный PING не даёт.
- Синтаксис команды PATHPING
- Ключи и параметры
- Примеры использования
- Базовая диагностика маршрута до сайта
- Быстрый прогон с меньшим числом запросов
- Диагностика без DNS-разрешения
- Ограничить число хопов для диагностики локальной сети
- Задать источник для многосетевого узла
- Принудительный IPv4 при двойном стеке
- Как читать вывод PATHPING
- Частые ошибки и решения
- Когда применять, а когда нет
- FAQ
- Чем PATHPING отличается от TRACERT?
- Почему PATHPING работает так медленно?
- Нужны ли права администратора для PATHPING?
- Можно ли использовать PATHPING в скрипте?
- Что означает звёздочка (*) в выводе PATHPING?
Синтаксис команды PATHPING
pathping [-n] [-h максимум_хопов] [-g список_хостов] [-p период] [-q количество_запросов] [-w таймаут] [-i адрес] [-4] [-6] целевой_хост
Параметр целевой_хост — имя хоста или IP-адрес назначения. Все ключи необязательны.
Ключи и параметры
| Ключ | Описание | Пример |
|---|---|---|
-n | Не разрешать IP-адреса в имена хостов. Ускоряет работу — нет DNS-запросов для каждого узла. | pathping -n 8.8.8.8 |
-h <N> | Максимальное число хопов (TTL). По умолчанию 30. | pathping -h 15 google.com |
-p <мс> | Интервал между запросами в миллисекундах. По умолчанию 250 мс. | pathping -p 100 google.com |
-q <N> | Количество запросов к каждому узлу. По умолчанию 100. | pathping -q 25 google.com |
-w <мс> | Таймаут ожидания ответа в миллисекундах. По умолчанию 3000 мс. | pathping -w 1000 google.com |
-i <адрес> | Использовать указанный IP-адрес как источник (для многосетевых узлов). | pathping -i 192.168.1.50 google.com |
-g <список_хостов> | Маршрутизация с незакрытым источником (Loose Source Route) — передать список промежуточных хостов через пробел. | pathping -g 10.0.0.1 google.com |
-4 | Принудительно использовать IPv4. | pathping -4 google.com |
-6 | Принудительно использовать IPv6. | pathping -6 google.com |
Примеры использования
Базовая диагностика маршрута до сайта
Нужно выяснить, на каком участке пути до сервера происходят потери пакетов:
pathping google.com
Команда сначала покажет список хопов (как TRACERT), затем несколько минут собирает статистику по каждому узлу. В итоговой таблице колонка Lost/Sent показывает потери на каждом хопе — узел с высоким процентом потерь и есть узкое место.
Быстрый прогон с меньшим числом запросов
При ограниченном времени можно сократить число запросов до 25 вместо 100:
pathping -q 25 -p 100 192.168.1.1
Общее время измерения сократится в 4 раза за счёт меньшей статистической точности.
Диагностика без DNS-разрешения
Если DNS-серверы медленно отвечают или недоступны, ускорьте трассировку:
pathping -n 10.10.0.1
Вывод будет содержать только IP-адреса, без попыток разрешить имена узлов.
Ограничить число хопов для диагностики локальной сети
При анализе проблем внутри локальной сети нет смысла идти дальше 5-10 хопов:
pathping -h 10 192.168.0.254
Экономит время и фокусирует анализ на инфраструктуре локальной сети.
Задать источник для многосетевого узла
На сервере с несколькими сетевыми картами нужно протестировать маршрут с конкретного интерфейса:
pathping -i 10.0.0.5 -n 172.16.0.1
Пакеты будут отправлены с IP 10.0.0.5, что позволяет проверить конкретный сетевой путь.
Принудительный IPv4 при двойном стеке
Если хост доступен и по IPv4, и по IPv6, но нужно протестировать именно IPv4:
pathping -4 -n google.com
Как читать вывод PATHPING
Вывод состоит из двух частей:
- Список хопов — как в TRACERT: номер, время отклика, имя/IP узла.
- Статистическая таблица — для каждого узла показывает:
RTT— среднее время отклика в миллисекундах.Lost/Sent = Pctдля узла — потери пакетов непосредственно на данном узле (процессинг самим маршрутизатором).Lost/Sent = Pctдля канала — потери пакетов на линке между предыдущим и текущим узлом.
Если потери есть только на узле, но не на канале — маршрутизатор намеренно ограничивает ICMP-ответы (rate limiting). Если потери есть и на узле, и на всех последующих — проблема именно на этом участке.
Частые ошибки и решения
| Ошибка / симптом | Причина | Решение |
|---|---|---|
| Команда выполняется очень долго (5-10 минут) | По умолчанию PATHPING отправляет 100 запросов с интервалом 250 мс на каждый хоп. При 20 хопах это ~8 минут. | Сократите число запросов: pathping -q 25. Для быстрой проверки достаточно 25-50 запросов. |
| Все узлы показывают 100% потерь | Брандмауэр блокирует исходящие ICMP-пакеты или входящие ICMP-ответы. | Временно отключите брандмауэр Windows для теста или создайте правило, разрешающее ICMP. На корпоративных узлах — проверьте политики. |
| Первые несколько хопов показывают * (нет ответа) | Промежуточные маршрутизаторы настроены не отвечать на ICMP TTL Exceeded — это нормально для ISP-оборудования. | Смотрите на узлы, где ответы есть. Отсутствие ответа на промежуточных хопах — не признак проблемы. |
Целевой хост недостижим (Unable to resolve target) | Ошибка DNS — имя хоста не разрешается. | Проверьте DNS: nslookup имя_хоста. Если DNS не отвечает, используйте IP-адрес напрямую: pathping 8.8.8.8. |
| Высокие потери на последнем хопе, но сайт открывается нормально | Целевой сервер ограничивает скорость обработки ICMP (rate limiting) — реальный трафик проходит без потерь. | Ориентируйтесь на потери на промежуточных хопах. Потери только на последнем узле при нормальной работе сервиса — ложная тревога. |
Когда применять, а когда нет
PATHPING оптимальна для диагностики нестабильного соединения — когда PING показывает периодические потери, но непонятно где именно: на стороне провайдера, в транзитной сети или на конечном сервере. Команда требует нескольких минут на сбор статистики, поэтому для быстрой проверки достижимости используйте обычный PING. Аналог в PowerShell — командлет Test-NetConnection -TraceRoute, который выполняет трассировку, но без накопления статистики потерь; для более детального анализа в PowerShell используйте модуль PingResult или скриптовые обёртки над PATHPING.
FAQ
Чем PATHPING отличается от TRACERT?
TRACERT только показывает маршрут и время отклика для каждого хопа. PATHPING дополнительно измеряет процент потерянных пакетов на каждом узле и на каждом канале между узлами — это ключевое отличие при диагностике нестабильного соединения.
Почему PATHPING работает так медленно?
По умолчанию команда отправляет 100 ICMP-пакетов с интервалом 250 мс на каждый хоп. При 20 промежуточных узлах это ~8 минут. Используйте ключи -q 25 -p 100 для ускорения.
Нужны ли права администратора для PATHPING?
Нет. PATHPING работает от обычного пользователя. Однако если брандмауэр настроен через групповые политики, для его временного отключения потребуются права администратора.
Можно ли использовать PATHPING в скрипте?
Да. Результаты можно перенаправить в файл: pathping -n -q 25 google.com > C:\logs\pathping_result.txt. Для парсинга лучше подходит PowerShell с Select-String.
Что означает звёздочка (*) в выводе PATHPING?
Звёздочка означает, что узел не ответил на ICMP-запрос в течение таймаута. Это может быть намеренное ограничение ICMP на маршрутизаторе (rate limiting или filtering) — не обязательно признак проблемы.


