Что такое трассировка маршрута windows

Трассировка маршрута сети (команда tracert)

Для диагностики и поиска проблем в сети системные администраторы часто применяют такой удобный инструмент, как трассировка маршрута. Она позволяет определить все узлы (маршрутизаторы, серверы, компьютеры), через которые проходит трафик по дороге к точке назначения. Если связь с каким-либо удалённым хостом рвётся или вообще пропадает, то трассировка маршрута сети позволит быстро найти участок, на котором появились проблемы как в локальной сети, так и в глобальной паутине Интернет.

Для выполнения этой процедуры в каждой современной операционной системе есть соответствующий инструмент.

В ОС Windows — это утилита tracert. В XP она была доступна по умолчанию, а вот во всех последующих версия вплоть до Windows 10 её надо включать дополнительно через «Программы и Компоненты».

В операционных система ОС семейства *NIX — Linux, FreeBSD, Android — программа traceroute
Смысл алгоритма трассировки маршрута в том, что посылается по три специальных запроса на каждый сетевой узел, через который идёт трафик до нужного хоста, затем для каждого из них на экране, рядом с его адресом, выдаётся время ответа. По этим результатам можно легко отследить на каком участке сети начинают появляться задержки ответа или он вообще пропадает.

Трассировка в Windows 10

Для проведения трассировки сети в Windows 10 необходимо нажать комбинацию клавиш Win+R и в окне «Выполнить» набрать команду «cmd». Этим Вы откроете командную строку Виндовс, в которой надо ввести команду:

Для примера возьмём сайт google.ru

Трассировка в Linux

В операционных системах семейства Linux — Ubuntu, Fedora, CentOS и т.п. — для запуска трассировки маршрута в надо открыть системную консоль и ввести команду:

Внимание! Использовать трассировку маршрута в сети для оценки качества последней мили (абонентской линии ADSL,FTTB или PON) нельзя, так как эта системная программа никоим образом оценить качество линии не может и не умеет.

Как сделать трассировку маршрута в Windows 7

Сейчас мы расскажем о том, как сделать трассировку маршрута применительно к операционной системе Windows 7. Итак, первоначально нажимаем кнопку «Пуск» и поисковой строке набираем «cmd». В результатах поиска, в верхней строке, отобразится необходимая нам программа, по ссылке которой необходимо перейти.

Теперь необходимо поработать с «черным окном», которое напоминает об операционной системе MS-DOS. Для дальнейшей работы, необходимо знать команду трассировка маршрута. Итак, запоминайте, команда трассировки маршрута: tracert.

В качестве примера, проведем трассировку до сайта Вконтаке. Для этого, необходимо набрать tracert vk.com и нажать на клавишу Enter. После завершения трассировки, можно ознакомиться с ее результатом.

Как видно из результатов трассировки, была проблема в переходе между 10 и 11 прыжками, о чем свидетельствует сообщение «Превышен интервал ожидания для запроса». Тем не менее, удалось достигнуть сайта Вконтаке за 12 прыжков. Обратите внимание, что IP-адрес сайта Вконтакте, на момент написания этих строк 87.240.143.246.

Если вам не удается, во время трассировки достигнуть сайта (при условии, что имя сайта указано верно), то тут могут быть две основные причины:

  1. Сайт временно недоступен;
  2. Проблемы у вашего провайдера.

Если, при трассировке неверно набрано имя сайта, то появится сообщение: «Не удается разрешить системное имя узла …»

Что такое трассировка маршрута в Windows (tracert) и Linux (traceroute): разбор Бородача

Всем привет! Как вы уже поняли, сегодня я подробно, но максимально кратко попробую рассказать про то – что же такое трассировка маршрута в локальных и глобальных сетях. Также расскажу, в чем отличие измерения трассировки в Windows и Linux. Некоторые думают, что при вводе примерно одинаковых команд инженер будет получать одну и ту же информацию, но на деле это не совсем так – об этом поподробнее чуть ниже. Если у вас будут какие-то вопросы и дополнения, то пишите в комментариях.

Читайте также:  Состав загрузочный диск windows

Определение

Трассировка – по сути это тестирование, при котором пользователь может увидеть, по какому пути проходит пакет данных до конечного сервера. То есть через какие узлы он проходит и с какой задержкой. Например, при стандартной команде «Ping» вы получите информацию о времени отклика или время отправки и приема пакета. А при трассировке вы увидите через какие IP узлов проходит этот самый пакет до конечного сервера.

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

Windows

В «окнах» данную функцию выполняет системный модуль или утилита «Tracert». Как вы понимаете она расположена в папке «System32», как и другие подобные микропрограммы. Для запуска обычно нужно использовать командную строку. Утилита спокойно работает как с доменными именами, так и с IP адресами, в том числе IPv4 и IPv6. Также плюс в том, что её не нужно устанавливать и она идет в стандартном пакете Windows на всех версиях: XP, 7, 8, 8.2 и 10.

А теперь давайте попробуем её использоваться. Для этого вам нужно запустить командную строку. В Windows 7 переходим в «Пуск» – «Все программы» – открываем папку «Стандартные», а после этого нажимаем правой кнопкой по командной строке и открываем с правами администратора.

ПРИМЕЧАНИЕ! Также можно открыть через «Win+R» и команду «CMD».

В Windows 10 достаточно нажать правой кнопкой по «Пуску» и далее выбрать консоль с админ правами.

Далее все делается достаточно просто – сначала прописываем команду «tracert», а потом через пробел выписываем IP адрес сервера. Я в качестве примера использовал один известный DNS серверов:

Плюс ещё в том, что можно использовать не только IP, но также и доменное имя, которое состоит из букв. Давайте для примера проведем тест с Яндексом:

tracert yandex.ru

Тут мы видим вид нескольких шагов. Каждый шаг – это прохождение пакета от одного узла к другому. Так же вы видите время прохождения, которое пишется в миллисекундах. Далее вы видите название узла и IP адрес, который указан в скобках. Если же узел не сможет ответить или время ожидания будет превышено, то в столбце времени вы увидите звёздочку (*).

А теперь давайте я расскажу про проблему данного тестирования. Проблема состоит в том, что команда не показывает некоторые узлы, а именно коммутаторы, которые работают со вторым уровнем модели OSI. А все из-за того, что у них нет интерфейсного представления подключенных устройств в IP виде. То есть коммутация происходит на втором уровне, где нет IP адресов, а связь идет с помощью таблицы MAC-адресов. И понятно дело, что в таблице такие узлы не отображаются.

Более подробно советую также почитать про модель OSI и про коммутаторы.

В итоге для данной команды все коммутаторы, работающие со вторым уровнем модели OSI – просто невидимы. «Tracert» использует ICMP (Internet Control Message Protocol) протокол, которые передает данные только в IP пакете, со значением TTL. TTL – это время жизни пакета.

Читайте также:  Copy the directory in linux

Изначально при отправке пакета на первый узел значение TTL равно единице. И при трассировке отправляется сразу три пакета – именно поэтому мы видим три столбца времени. Если все пакеты приходят обратно, то мы видим время по всем трем столбцам. Далее TTL увеличивается на единицу, и отправляется ещё три пакета на следующий узел. И так до победного конца, пока последний запрос не достигнет конечного узла.

ПРИМЕЧАНИЕ! Если вы видите звездочку, но пакет все равно идет через данный узел, то скорее всего на данном маршрутизаторе или сервере есть настройка, которая не обрабатывает ICMP запросы. Очень часто их используют для DDoS атак – поэтому их обработку иногда отключают.

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

Команда очень полезная не только для работы и тестирования рабочих сетей, но даже для выявления проблем с интернетом. Помню у моего друга постоянно был высокий отклик в «Counter-Strike», но он все никак не мог понять почему – ведь у меня в соседнем доме был пинг на порядок меньше. При трассировке он увидел, что на первом (провайдерском) узле есть сильный застой пакетов. В итоге он обратился к оператору, и им поменяли старый коммутатор, который стоял там, неверное ещё с эпохи Российской Империи.

Linux

Итак, в Windows мы уже разобрались, что трассировку выполняет утилита «tracert.exe». В Linux утилита имеет другое название: «traceroute», – и также выполняет данную функцию, но немного по-другому.

Вспомним немного как работает tracert на примере нижней картинки:

  1. Host отправляет узлу «Router1» запрос с TTL = 1.
  2. Запрос приходит на «Router1», и он, видя, что TTL равен всего одному, его уменьшает и отправляет ответ.
  3. Ответ приходит от первого узла и Host записывает его в таблицу трассировки.
  4. Далее идет запрос на второй узел уже с TTL увеличенным на один.
  5. Так продолжается до тех пор, пока запрос не дойдет до конечного сервера. Все это делается на основе ICMP протокола.

А проблем в том, что у «tracert» нет возможности сделать запрос с портом, что делает его немного узконаправленным. «Traceroute» работает на основе совершенно другого протокола – UDP. По сути UDP протокол делает запрос именно по портам. А окончание трассировки при достижении пакетом конечного узла происходит в том случае, когда при каждом шаге при увеличении номера порта он становится закрытым на конечном сервере.

Запускаем программу аналогично через консоль. Также у неё есть свои параметры.

Кстати, есть возможность при трассировке использовать не UDP, а ICMP протокол, для этого нужно дописать параметр «-I».

Но что делать, если надо на Windows сделать трассировку по UDP протоколу и использование портов? Для этого нужно будет использовать стороннюю микропрограмму: «tcptrace». Для трассировки маршрута по TCP (и UDP) можно использовать «tcptraceroute».

tracert tracert

Область применения: Windows Server (половина ежегодного канала), Windows Server 2019, Windows Server 2016, Windows Server 2012 R2, Windows Server 2012 Applies to: Windows Server (Semi-Annual Channel), Windows Server 2019, Windows Server 2016, Windows Server 2012 R2, Windows Server 2012

Это средство диагностики определяет путь, полученный к назначению, отправляя эхо-запрос протокола ICMP или ICMPv6 в назначение с добавочным увеличением срока жизни (TTL) значений полей. This diagnostic tool determines the path taken to a destination by sending Internet Control Message Protocol (ICMP) echo Request or ICMPv6 messages to the destination with incrementally increasing time to live (TTL) field values. Каждый маршрутизатор по пути должен уменьшить срок жизни в пакете IP по меньшей мере до 1 перед его пересылкой. Each router along the path is required to decrement the TTL in an IP packet by at least 1 before forwarding it. Фактически, TTL является максимальным счетчиком ссылок. Effectively, the TTL is a maximum link counter. Если срок жизни пакета достигнет значения 0, то ожидается, что маршрутизатор вернет сообщение об истечении времени ICMP на исходный компьютер. When the TTL on a packet reaches 0, the router is expected to return an ICMP time Exceeded message to the source computer.

Читайте также:  Восстановление папок windows server

Эта команда определяет путь путем отправки первого сообщения эхо-запроса со сроком жизни 1 и приращением TTL на 1 для каждой последующей передачи до тех пор, пока целевой объект не ответит или не будет достигнуто максимальное число прыжков. This command determines the path by sending the first echo Request message with a TTL of 1 and incrementing the TTL by 1 on each subsequent transmission until the target responds or the maximum number of hops is reached. Максимальное число прыжков равно 30 по умолчанию и может быть указано с помощью параметра /h . The maximum number of hops is 30 by default and can be specified using the /h parameter.

Путь определяется путем проверки превышения времени ICMP сообщений, возвращенных промежуточными маршрутизаторами, и сообщения эхо-ответа, возвращаемого назначением. The path is determined by examining the ICMP time Exceeded messages returned by intermediate routers and the echo Reply message returned by the destination. Однако некоторые маршрутизаторы не возвращают сообщения о превышении времени для пакетов с истекшими значениями TTL и невидимы для команды tracert . However, some routers do not return time Exceeded messages for packets with expired TTL values and are invisible to the tracert command. В этом случае * для этого прыжка отображается строка звездочек (). In this case, a row of asterisks ( * ) is displayed for that hop. Отображаемый путь — это список интерфейсов Ближнего маршрутизатора маршрутизаторов в пути между исходным узлом и назначением. The path displayed is the list of near/side router interfaces of the routers in the path between a source host and a destination. Интерфейс NEAR-Side — это интерфейс маршрутизатора, ближайший к отправляющему узлу в пути. The near/side interface is the interface of the router that is closest to the sending host in the path.

Эта команда доступна, только если протокол Internet Protocol (TCP/IP) установлен в качестве компонента в свойствах сетевого адаптера в окне Сетевые подключения. This command is available only if the Internet Protocol (TCP/IP) protocol is installed as a component in the properties of a network adapter in Network Connections.

Для трассировки пути и обеспечения сетевой задержки и потери пакетов для каждого маршрутизатора и ссылки в пути используется команда pathping . To trace a path and provide network latency and packet loss for each router and link in the path, use the pathping command command.

Оцените статью