Трассировка маршрута в Windows 10: Овладение отслеживанием сетевого маршрута

Сети строятся путем маршрутизации пакетов от точки A до точки B и до точки C. Каждый пакет проходит маршрут от источника к месту назначения. В операционной системе Windows 10 вы можете использовать удобную утилиту трассировки под названием tracert, чтобы отследить, что происходит.

В этой статье вы узнаете все о команде (tracert) или Traceroute в Windows 10. Вы узнаете о её назначении, различных параметрах и о том, как интерпретировать предоставленную информацию. К концу этой статьи у вас будет знание, чтобы использовать этот инструмент в полной мере!

Связано: Как использовать Traceroute в Linux

Как работает Traceroute в Windows 10?

В Windows 10 (и во всех других ОС), основная цель traceroute – определить маршрут, который проходит пакет при пересечении сети. Он делает это, используя сообщения об ошибках для сбора информации о различных маршрутизаторах, с которыми пакет сталкивается по пути.

Tracert использует поле Time-to-Live (TTL) в заголовках IP-пакетов. TTL ограничивает срок жизни пакета, предотвращая их задержку в сети. Это важно, если происходит сбой пути или существует цикл маршрутизации.

Когда пакет достигает маршрутизатора, его значение TTL уменьшается до 0. Когда значение TTL пакета достигает 0, маршрутизатор отбрасывает пакет и возвращает сообщение ICMP_TIME_EXCEEDED обратно к пакету, откуда он отправлен.

Tracert, в отличие от своего Linux-родственника traceroute, использует UDP для отправки пакетов-запросов вместо ICMP-запросов на эхо.

Когда команда traceroute в Windows 10 отправляет пакет для определения пути, она изменяет поле TTL пакета. Используя информацию из полученных сообщений об ошибках, traceroute может затем собрать и выяснить путь, по которому пакет проходит через сеть.

Терминология Traceroute

Мы уже упомянули несколько терминов, но вы узнаете еще несколько, читая эту статью. Давайте сначала рассмотрим еще несколько важных терминов.

  • Хост – это компьютер или устройство, с которого вы запускаете инструмент Traceroute в Windows 10. Это может быть ПК под управлением Windows или Linux, или устройство Cisco IOS.
  • Маршрутизатор – это устройство, которое пересылает или маршрутизирует пакеты от сети к сети через различные интерфейсы.
  • Хоп – это маршрутизатор вдоль сетевого пути. Представьте себе, что маршрутизированный пакет “перепрыгивает” с одного интерфейса маршрутизатора на другой, проходя через сеть.
  • Маршрут – это путь между хостом и каждым интерфейсом маршрутизатора. Маршрут может быть каждый раз разным при использовании инструмента traceroute. Это происходит из-за протоколов маршрутизации и правил, которые могут направлять трафик на разные интерфейсы.
  • Путь – это маршрут, который пройден пакетом при перемещении от одного хоста к другому.

A Demo of Traceroute in Windows 10

Возможно, вы оказались в ситуации устранения неполадок сети для приложения, которое вы управляете. После анализа некоторых файлов журнала вы замечаете, что запросы, которые приложение отправляет с удаленного сервера, занимают больше времени, чем обычно, или вообще теряют пакеты. Это идеальный случай для использования утилиты трассировки маршрута в Windows 10, tracert.

Откройте командную строку (cmd.exe) или консоль Windows PowerShell. Все примеры, которые вы увидите в этом разделе, будут использовать Windows PowerShell v5.1.

Поиск справки

Давайте сначала познакомимся и узнаем, как работает эта утилита трассировки маршрута в Windows 10. Эта утилита командной строки предоставляет удобный способ увидеть все варианты ее использования, запустив tracert -?.

В следующем фрагменте кода вы можете видеть, что у tracert есть несколько различных опций для настройки своего поведения. Утилита трассировки маршрута в Windows 10, tracert, не содержит множество опций, как ее Linux-родственник.

Если вы введете tracert -?, вы увидите все опции, которые есть у этой команды.

Usage: tracert [-d] [-h maximum_hops] [-j host-list] [-w timeout]
               [-R] [-S srcaddr] [-4] [-6] target_name

Options:
    -d                 Do not resolve addresses to hostnames.
    -h maximum_hops    Maximum number of hops to search for target.
    -j host-list       Loose source route along host-list (IPv4-only).
    -w timeout         Wait timeout milliseconds for each reply.
    -R                 Trace round-trip path (IPv6-only).
    -S srcaddr         Source address to use (IPv6-only).
    -4                 Force using IPv4.
    -6                 Force using IPv6.

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

Трассировка маршрута в Windows 10: На примере

Допустим, ваше приложение должно достичь www.google.com. Чтобы отследить путь приложения к www.google.com, просто укажите адрес в качестве первого аргумента для traceroute в Windows 10 (tracert).

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

Traceroute in Windows 10 : traceroute -q example

Теперь давайте рассмотрим вывод, а затем расскажем о результатах.

Tracing route to www.google.com [172.217.8.164]
over a maximum of 30 hops:

  1     1 ms     4 ms     1 ms  www.routerlogin.com [192.168.1.1]
  2    56 ms    11 ms    12 ms  142.254.148.17
  3    65 ms   468 ms    29 ms  agg63.vnwrohbt01h.midwest.rr.com [98.30.201.210]
  4    61 ms    22 ms    21 ms  agg59.clmkohpe02r.midwest.rr.com [24.33.162.134]
  5   508 ms    23 ms    29 ms  be27.clmkohpe01r.midwest.rr.com [65.29.1.34]
  6    73 ms    41 ms    31 ms  bu-ether31-vinnva0510w-bcr00.tbone.rr.com [66.109.6.54]
  7    76 ms    33 ms    37 ms  66.109.5.136
  8   382 ms    29 ms    36 ms  66.109.7.83
  9    75 ms    32 ms    37 ms  209.85.250.189
 10     *     1320 ms    29 ms  72.14.232.153
 11    28 ms    27 ms    27 ms  ord37s08-in-f4.1e100.net [172.217.8.164]

Trace complete.

В выводе есть пять столбцов данных. Начнем слева направо:

  • Столбец 1 (количество прыжков) – В этом маршруте 11 прыжков. Имейте в виду, что вы можете выполнить ту же команду снова и получить другой вывод. Это ожидаемо, так как вы можете быть направлены на другой интерфейс маршрутизатора или совсем другой маршрутизатор.
  • Столбцы 2-4 (времена кругового маршрута пакета ICMP (ping)) – Эти времена измеряются в миллисекундах. Помните, что эти пакеты также содержат TTL, который вызывает ошибку маршрутизатора с информацией, используемой командой tracert.

Времена ответа 5-30 мс считаются хорошими временами отклика на высокоскоростные прыжки. Обычно вы увидите времена от 35 до 60 мс. Когда вы начинаете видеть времена 60 мс и более, это может свидетельствовать о задержке.

  • Столбец 5 (имя хоста или IP-адрес) – Этот элемент возвращается маршрутизатором в пути. Иногда здесь будет отображаться *, если маршрутизатор настроен не отвечать или недоступен по какой-либо причине. По умолчанию tracert пытается выполнить обратный DNS-запрос для каждого IP-адреса маршрутизатора. Именно так вы видите здесь имена DNS вместо IP-адреса.

Вы можете ускорить выполнение tracert, немного пожертвовав разрешением имен с помощью переключателя -d. Этот параметр предотвращает разрешение имен хостов и возвращает только IP-адреса.

Теперь у вас есть базовая информация, которая будет полезна при устранении задержек в сети или проблем с маршрутизацией. У вас есть измерение времени, IP-адрес(а) и/или FQDN(ы) маршрутизатора для исследования.

Заключение

Traceroute в Windows 10 – проверенная и удобная утилита командной строки для работы с сетью. В этой статье мы не рассматривали каждый параметр для каждой команды, но охватили многие из наиболее полезных.

Если вы хотите узнать больше о внутреннем устройстве traceroute в Windows 10, ознакомьтесь с документацией Microsoft по tracert.

Source:
https://adamtheautomator.com/traceoute-windows-10/