Использование TRACERT для устранения проблем TCP/IP в Windows

Применяется к
Windows Server 2019

Версия этой статьи для Microsoft Windows 2000 см. в разделе 162326 .

Сводка

В этой статье описывается TRACERT (Trace Route) — служебная программа командной строки, которую можно использовать для трассировки пути IP-пакета к месту назначения.

В этой статье рассматриваются следующие темы:

  • Использование служебной программы TRACERT
  • Использование TRACERT для устранения неполадок
  • Использование параметров TRACERT

Дополнительные сведения

Использование служебной программы TRACERT

Диагностическая утилита TRACERT определяет маршрут к месту назначения, отправляя в него эхо-пакеты по протоколу Internet Control Message Protocol (ICMP). В этих пакетах TRACERT использует различные значения IP Time-To Live (TTL). Поскольку каждый маршрутизатор на этом пути должен уменьшить TTL пакета по крайней мере на 1 перед пересылкой пакета, TTL фактически является счетчиком переходов. Когда TTL пакета достигает нуля (0), маршрутизатор отправляет ICMP-сообщение «Time Exceeded» обратно на исходный компьютер.

TRACERT посылает первый эхо-пакет с TTL, равным 1, и увеличивает TTL на 1 при каждой последующей передаче, пока адресат не ответит или пока не будет достигнут максимальный TTL. Сообщения ICMP "Time Exceeded", отправляемые промежуточными маршрутизаторами, показывают маршрут. Обратите внимание, однако, что некоторые маршрутизаторы молча отбрасывают пакеты с истекшим сроком жизни, и эти пакеты невидимы для TRACERT.

TRACERT выводит упорядоченный список промежуточных маршрутизаторов, которые возвращают сообщения ICMP «Time Exceeded». Использование параметра -d с командой tracert указывает TRACERT не выполнять DNS-поиск для каждого IP-адреса, чтобы TRACERT сообщал IP-адрес ближнего интерфейса маршрутизаторов.

В следующем примере команды tracert и ее выводе пакет проходит через два маршрутизатора (157.54.48.1 и 11.1.0.67), чтобы добраться до узла 11.1.0.1. В этом примере шлюзом по умолчанию является 157.54.48.1, а IP-адрес маршрутизатора в сети 11.1.0.0 — 11.1.0.67.

Команда:

C:\>tracert 11.1.0.1
Выходные данные команды:

   Трассировка маршрута до версии 11.1.0.1 с максимальным числом переходов (30)
   ---------------------------------------------------
   1 2 мс 3 мс 2 мс 157.54.48.1
   2 75 мс 83 мс 88 мс 11.1.0.67
   3 73 мс 79 мс 93 мс 11.1.0.1

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

Использование TRACERT для устранения неполадок

Вы можете использовать TRACERT, чтобы узнать, где остановился пакет в сети. В следующем примере шлюз по умолчанию обнаружил, что для узла нет допустимого пути на 22.110.0.1. Вероятно, либо в роутере есть проблема с конфигурацией, либо сети 22.110.0.0 не существует, что отражает неверный IP-адрес.

Команда:

C:\>tracert 22.110.0.1
Выходные данные команды:

   Трассировка маршрута до версии 22.110.0.1 за максимум 30 переходов
   -----------------------------------------------------
   1 157.54.48.1 сообщает: Сеть назначения недоступна.

   Трассировка завершена.
 TRACERT полезен для устранения неполадок в больших сетях, где несколько путей могут вести к одной точке или где задействовано много промежуточных компонентов (маршрутизаторов или мостов).

Использование параметров TRACERT

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

Следующий пример синтаксиса команды показывает все возможные параметры:

tracert -d -h maximum_hops -j host-list -w timeout target_hostЧто делают параметры:

   -d
      Указывает, что не разрешается адреса для имен хостов

   -h maximum_hops
      Указывает максимальное количество переходов для поиска цели

   -j host-list
      Указывает свободный исходный маршрут вдоль списка хостов

   -w тайм-аут
      Ожидает количество миллисекунд, указанное временем ожидания, для каждого
      ответить

   target_host
      Указывает имя или IP-адрес целевого узла