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

Команда TRACERT: что это, отличие от PING, как пользоваться?

Утилита командной строки Traceroute – это инструмент, который используется для определения точного маршрута, по которому пакет данных проходит в сети Интернет от отправителя до места назначения.

При помощи команды tracert (Windows) или traceroute (Linux и Mac OS) вы легко и быстро можете определить где находится проблема, узкое место в передаче данных, задержка соединения с сервером. Также вы можете использовать утилиту, если вам просто интересно узнать какой путь проделывает пакет данных до места назначения.

Чем Tracert отличается от Ping?

Широкоизвестная команда PING используется для проверки связи с сервером. Ваш компьютер отправляет четыре пакета данных в пункт назначения, и как только они прибудут туда, пакеты вернутся обратно на ваш компьютер.

Команда TRACERT: что это, отличие от PING, как пользоваться?

Если вы получили все или только часть пакетов данных на свой компьютер, это говорит о наличии общего соединения между вашим ПК и конечным пунктом. Кроме этого, вы получите данные о том, сколько по времени (в миллисекундах) заняло путешествие пакетов данных туда-обратно.

Traceroute даст нам больше информации – утилита не только проверит наличие связи с конечным пунктом назначения, но и с каждым маршрутизатором на этом пути. Она измерит время приема-передачи пакетов данных от каждого встреченного на пути маршрутизатора.

Как пользоваться Tracert?

Для примера проследим путь от моего ПК до сайта Google. В командной строке ввожу:

  • tracert google.com – для систем на базе Windows
  • traceroute google.com – для систем на базе Linux и Mac OS

Вместо доменного имени вы можете также ввести ip-адрес удаленного сервера.

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

Команда TRACERT: что это, отличие от PING, как пользоваться?

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

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

Команда TRACERT: что это, отличие от PING, как пользоваться?

Как видим, на первом этапе передача пакетов произошла менее чем за 1 ms. Первой точкой перехода был мой домашний модем-роутер (маршрутизатор). Этот маршрут самый короткий и быстрый, поскольку он проходит в пределах моей локальной сети. Но как только данные попадают в Интернет (второй прыжок), время приема-передачи значительно увеличивается. И чем дальше пакеты данных должны пройти к каждому маршрутизатору, тем больше времени будет затрачено на это.

Достижение конечного пункта назначения будет самым длительным этапом. Его значение будет соответствовать результату, полученному при помощи команды Ping. Потому что, как вы помните, ping отображает только время достижения конечного пункта на пути следования пакетов данных.

Команда TRACERT: что это, отличие от PING, как пользоваться?

Последний столбец отчета traceroute сообщает IP-адрес или доменное имя каждого встреченного маршрутизатора.

Как установить проблему при помощи трассировки?

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

Предположим, что сайт google плохо открывается на нашем ПК. Запустив команду Ping мы обнаружим, что время прохождения туда-обратно очень высокое, в среднем около 210 миллисекунд.

Команда TRACERT: что это, отличие от PING, как пользоваться?

Проблема есть, но на каком именно этапе прохождения пакетов данных она возникает команда Ping не показывает.

Утилита Tracert поможет определить корень проблемы. Проанализируем отчет трассировки:

Команда TRACERT: что это, отличие от PING, как пользоваться?

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

Что означают звездочки в отчете?

Иногда в отчете трассировки вы можете заметить звездочки, исходящие от маршрутизатора.

Команда TRACERT: что это, отличие от PING, как пользоваться?

Это может означать как наличие проблемы с данным маршрутизатором, так и то, что он работает нормально, но не был настроен для возврата ответов tracert. Узел принял и передал пакеты в штатном режиме, но просто не сообщил затраченное на это время.

Что такое TTL?

После запуска tracert в окне командной строки можно прочесть такую фразу: «с максимальным числом прыжков 30» (на русском или английском).

Команда TRACERT: что это, отличие от PING, как пользоваться?

Количество таких прыжков (hops) определяет параметр TTL (Time To Live), или время жизни. Он задает то, как долго переданные пакеты данных могут жить прежде чем будут отброшены. По умолчанию задаётся 30 прыжков. Если пакеты не достигают цели через 30 переходов, они автоматически отбрасываются.

Вы можете задать произвольное число прыжков при помощи записи –h. К примеру:

tracert –h 4 google.com

Вышеуказанная запись означает, что когда данные достигают четвертого прыжка (узла), они отбрасываются и не передаются далее.

Команда TRACERT: что это, отличие от PING, как пользоваться?

Для чего вообще нужен TTL? TTL способен предотвратить бесконечное перемещение пакета данных по сети Интернет в попытках найти пункт назначения. Такое может случиться, если некоторые маршрутизаторы в Интернет были неправильно настроены, и данные могут попасть в бесконечный цикл между этими маршрутизаторами без перспективы «прорваться» на следующий узел на своем пути до цели.

Получается так, что эти «неправильные» маршрутизаторы заняты постоянной обработкой присланных однажды пакетов, что мешает обработке последующих.

Источник