Tracert: команда трассировки в командной строке CMD в Windows

Если с вашим каналом связи постоянно возникают проблемы, а сотрудники службы поддержки провайдера часто со слезами пожимают плечами, говоря, что не видят проблем на вашей стороне, выход есть! Утилита tracert может помочь вам определить, на каком узле может возникнуть проблема.

Назначение команды

«Tracert» — это набор функций в Windows, который позволяет отслеживать маршрут к определенному сетевому узлу (локальному и глобальному). Утилита встроена в операционную систему и может запускаться через «CMD» или «PowerShell». Исполняемый файл «tracertpt.exe» находится в системном разделе папки System32.

Tracert — команда трассировки в командной строке CMD в Windows

Команда «tracert» является довольно частым гостем при диагностике сети и устранении неполадок. С его помощью определяется путь, по которому следует пакет до выставленного узла. Преимущество программы: работа с доменными именами, IPv4 и IPv6. Помимо определения маршрута, программа обнаруживает и демонстрирует время прохождения пакетов до транзитного, промежуточного и конечного узлов.

С помощью команды можно узнать:

  • На каком уровне был заблокирован веб-ресурс: на уровне локальной сети (пакет не доходит до основного роутера), на уровне сети провайдера (коммутатор L3 больше не пропускает пакет), на уровне промежуточного сервера или конечного сервера (проблема на стороне сервера).
  • На каком этапе маршрута пакеты данных теряются и вместо нужного пункта назначения вас перенаправляют на другой (например, на сайт с рекламой).
  • Окончательный сайт именно то, что он утверждает.
  • Основные моменты работы и анализ

    Чтобы отслеживать пакеты данных с вашего собственного ПК на сервер, введите свой IP-адрес после основной команды.

    Tracert — команда трассировки в командной строке CMD в Windows

    Как видно на примере, введя команду, а затем IP-адрес, определилось, что это IP-адрес сервера Яндекса. Также были определены транзитные узлы, через которые должен пройти пакет, чтобы достичь конечного сервера «yandex.ru».

    Примечательно, что команда также понимает доменные имена, автоматически определяя их IP-адреса.

    Tracert — команда трассировки в командной строке CMD в Windows

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

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

    Таких коммутаторов в сетевой инфраструктуре провайдера могут быть десятки. Они не регистрируются «TraceRT», поскольку коммутаторы L2 не используют IP-адреса. Пакет не останавливается на них и не ремонтирует эти устройства, воспринимая их не более чем обычную витую пару или оптоволоконный кабель.

    НАКОНЕЧНИК! Буква L указывает на уровень, на котором работает коммутационное устройство. Советую почитать об уровнях модели OSI.

    При выполнении запроса утилита отправляет три запроса (TTL) на каждый шаг, получая ответы от шага. При отсутствии ответа в трех столбцах может быть указано «*». В последней колонке можно получить небольшую подсказку, по какой причине получен символ «*». Превышение интервала будет указано, если ожидание превысило 4 секунды.

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

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

    Подробнее о механизме отслеживания читайте здесь.

    Оправляемые пакеты

    Диагностика сети осуществляется благодаря отправленным пакетам. Утилита «Tracet» в Windows работает с протоколом ICMP. Тем не менее, есть команда traceroute — она включена в дистрибутивы Linux и присутствует как функции однотипных приложений, например Linux Mint. Последний использует протокол UDP для отправки на сетевые узлы.

    Кроме того, наличие библиотеки Pearl, Graphviz и настроенного скрипта позволяет после выполнения основного запроса программы отображать узлы трекинга на графической карте трекинга.

    В этом случае файл будет сохранен в «tracemap.png» и будет выглядеть как карта ниже.

    Tracert — команда трассировки в командной строке CMD в Windows

    Сообщение ICMP перед отправкой упаковывается в IP-пакет. Такое сообщение имеет свое время жизни (TTL — time to live). При каждой отправке пакета TTL увеличивается на 1. Первый пакет, отправленный по сети, равен 1. Команда отправляет 3 пакета с одинаковым TTL по умолчанию, так что 3 пакета также принимаются от хоста в качестве ответа.

    Значение TTL по умолчанию, используемое трассировкой, равно 30. Однако протокол IPv4 поддерживает максимальное значение TTL, равное 255 единицам. Опытным путем было определено, что TTL в районе 30 шагов будет достаточно для достижения конечных узлов определяемых веб-ресурсов.

    Ключи для команды

    Tracert — команда трассировки в командной строке CMD в Windows

    Чтобы полностью закрепить материал и понять, как работает плоттер и какими значениями можно оперировать, используйте специальные ключи. Запустите файл или программу tracetcp .exe через командную строку и введите tracert /? Для отображения всех ключей и их значений на экране.

    Вот основные из них:

    Гаечный ключ Цель
    Показывать только IP-адреса в столбце 4 (регулировка трассировки)
    -час Установка количества переходов на троттлинг (макс. TTL — 255, по умолчанию — 30)
    -w Установка таймаута ответа в мс
    -j Маршрут выбирается из списка сайтов, указанных после ключа (доступен в IPv4)
    Отследить маршрут IPv6
    Начать отслеживание с узла, указанного после ключа
    -4 Пропускать только протоколы IPv4
    -6 Переходы только для IPv6
    WIFIELEK.RU