что такое трассировка сети

Утилиты Traceroute и Tracert

Traceroute — это утилита, которая позволяет проследить маршрут следования данных до удалённого адресата в сетях TCP/IP. В Linux используется команда Traceroute, а в Windows — Tracert. При помощи этих команд можно увидеть путь пакета данных от вашего компьютера до целевого сервера или сайта.

Как работают Tracert и Traceroute

Когда вы пытаетесь открыть сайт, браузер отправляет сообщение (запрос) серверу, на котором этот сайт находится. Сообщение на своём пути проходит через маршрутизаторы. Они решают, куда дальше передать сообщение, чтобы гарантированно его доставить адресату. В трассировке маршрутизаторы ещё называют хопами (хоп — прыжок) или узлами. Количество узлов, через которые на своём пути пройдёт запрос, можно узнать при помощи утилит Tracert и Traceroute. Узлы, которые не являются целевыми для запроса, называют транзитными.

Утилита Traceroute формирует UDP-датаграмму (сообщение, которое нужно доставить целевому серверу), упаковывает её в IP-пакет и передаёт первому транзитному узлу. В заголовке такого IP-пакета есть поле TTL (Time To Live) — время жизни пакета. Оно определяет количество хопов, через которые пакет может пройти. На каждом узле TTL уменьшается на единицу. Если на пути к удалённому адресату время жизни пакета станет равно 0, маршрутизатор отбросит пакет и отправит источнику ICMP-сообщение об ошибке «Time Exceeded» (время истекло).

Этот принцип лежит в основе работы утилит Tracert и Traceroute, однако между ними есть отличия. Рассмотрим каждую утилиту отдельно.

Tracert отправляет на хост назначения ICPM-запрос «Echo Request» с TTL=1. Первый маршрутизатор, который получит запрос, проверяет, кому он предназначен. Если маршрутизатор не является целевым хостом, он уменьшает TTL на 1, отбрасывает пакет и отправляет ICMP-сообщение источнику, так как время жизни теперь равно 0. В этом сообщении маршрутизатор указывает информацию о себе и причину дропа пакета. Получив сообщение, Tracert запоминает этот маршрутизатор как первый хоп (прыжок) и отправляет следующий пакет, но уже с TTL=2. Первый хоп успешно обрабатывает новый пакет, уменьшает время его жизни на 1 и передаёт дальше. Следующий маршрутизатор тоже выполняет проверку хоста назначения и, если пакет предназначен не ему, уменьшает TTL, отбрасывает пакет и отправляет ICMP-сообщение источнику. Tracert запоминает второй хоп, снова увеличивает TTL на 1 и отправляет следующий пакет. Эти действия будут повторяться до тех пор, пока пакет не достигнет целевого хоста. Когда запрос попадёт к целевому хосту, этот хост в ответ направит ICMP «Echo Reply». Источник воспримет это как завершение трассировки.

Утилита Traceroute вместо ICMP-запроса отправляет 3 UDP-пакета на определенный порт целевого хоста и ожидает ответа о недоступности этого порта. Первый пакет отправляется с TTL=1, второй с TTL=2 и так далее, пока запрос не попадёт адресату. Отличие от Tracert в том, как Traceroute понимает, что трассировка завершена. Так как вместо ICMP-запроса он отправляет UDP-запрос, в каждом запросе есть порт отправителя (Sourсe) и порт получателя (Destination). По умолчанию запрос отправляется на закрытый порт 34434. Когда запрос попадёт на хост назначения, этот хост отправит ответ о недоступности порта «Destination port unreachable» (порт назначения недоступен). Это значит, что адресат получил запрос. Traceroute воспримет этот ответ как завершение трассировки.

Если Tracert работает по протоколу ICMP, то какой протокол используется командой Traceroute? По умолчанию используется протокол UDP, но traceroute может отправить и ICMP-запрос «Echo Request», как Tracert. Такой способ пригодится, если хоп не отвечает на UDP-пакет.

Источник

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

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

Определение

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

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

Windows

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

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

ПРИМЕЧАНИЕ! Также можно открыть через + 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 – это время жизни пакета.

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

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

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

что такое трассировка сети. Смотреть фото что такое трассировка сети. Смотреть картинку что такое трассировка сети. Картинка про что такое трассировка сети. Фото что такое трассировка сети

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

Linux

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

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

что такое трассировка сети. Смотреть фото что такое трассировка сети. Смотреть картинку что такое трассировка сети. Картинка про что такое трассировка сети. Фото что такое трассировка сети

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

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

что такое трассировка сети. Смотреть фото что такое трассировка сети. Смотреть картинку что такое трассировка сети. Картинка про что такое трассировка сети. Фото что такое трассировка сети

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

что такое трассировка сети. Смотреть фото что такое трассировка сети. Смотреть картинку что такое трассировка сети. Картинка про что такое трассировка сети. Фото что такое трассировка сети

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

Источник

Что такое трассировка (tracert)

В это теме мы подробно расскажем как это и зачем это нужно. Рассказывать будем все это для пользователей Windows. Предполагается, что пользователи других ОС достаточно продвинуты, что бы и так знать как им сделать аналогичные манипуляции, либо могут найти инструкции в Интернет сети без моей помощи. Сначала немного теории:

Зачем нужна трассировка? Иногда тот или иной сайт (как правило, вас волнует ваш сайт) вам недоступен. У этого могут быть разные причины:

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

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

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

Так же, в качестве аналога обращения к знакомым, можем порекомендовать воспользоваться специализированными сервисами мониторинга доступности сайтов. Например: http://host-tracker.com/

Зайдя по указанной ссылке, вводите адрес сайта и нажимаете кнопку «check». Спустя некоторое время сервис покажет статусы доступности проверяемого сайта из разных точек мира. Если выдается результат «Ok», значит, опять же, речь идет о вашей локальной проблеме.

Как же сделать трассировку? Нажимаем «Пуск» далее нажимаем «Выполнить». Там латинскими буквами без кавычек пишем «cmd» и нажимаем «Ок» (либо «Enter»):

В появившемся командной строке опять же без кавычек пишем «tracert адрес интересующего сайта». Например, если трассеруем ucoz.ru, пишем «tracert ucoz.ru» и нажимаем ввод («Enter»).

что такое трассировка сети. Смотреть фото что такое трассировка сети. Смотреть картинку что такое трассировка сети. Картинка про что такое трассировка сети. Фото что такое трассировка сети

Источник

Как проверить ping и трассировку через командную строку

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

Но что такое пинг и что такое трассировка? Пинг (ping) – это инструмент (утилита) для проверки целостности соединения в сетях на основе TCP/IP. Трассировка (traceroute или tracert команда) – это программа для определения маршрутов следования данных в сетях TCP/IP.

Однако не всегда можно встретить информацию о том, как именно выполняется эта проверка: как пинговать или как сделать трассу.

Содержание

Проверка пинга

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

что такое трассировка сети. Смотреть фото что такое трассировка сети. Смотреть картинку что такое трассировка сети. Картинка про что такое трассировка сети. Фото что такое трассировка сети

В данной ОС существует множество терминалов, поэтому для этих целей можно использовать любой из установленных на ПК. Обычно стандартный терминал можно запустить сочетанием клавиш CTRL+ALT+T.

что такое трассировка сети. Смотреть фото что такое трассировка сети. Смотреть картинку что такое трассировка сети. Картинка про что такое трассировка сети. Фото что такое трассировка сети

Итак, чтобы пропинговать определенный сервер, необходимо выполнить команду:

Например, для пинга адреса 11.222.33.44 необходимо выполнить команду:

Ниже приведён пример результатов выполнения пинга одного из IP адресов.

что такое трассировка сети. Смотреть фото что такое трассировка сети. Смотреть картинку что такое трассировка сети. Картинка про что такое трассировка сети. Фото что такое трассировка сети

Как видно из результатов, было передано и получено 4 пакета размером 32 байта. Время обмена одним пакетом составило 47 милисекунд.

Стоит отметить, что в Windows по умолчанию выполняется отправка только 4 пакетов. В Linux обмен пакетами продолжается до тех пор, пока пользователь самостоятельно не остановит процесс сочетанием клавиш CTRL+C. Чтобы запустить ping аналогичным образом в Windows, необходимо использовать параметр -t. Например:

Остановка обмена пакетами выполняется тем же сочетанием клавиш – CTRL+C.

Установка количества отправляемых пакетов

Чтобы задать максимальное количество отправляемых пакетов, необходимо использовать команду следующего вида:

Изменение размера отправляемых пакетов

Чтобы выполнить ping с использованием пакетов определенного размера (в байтах), необходимо использовать следующую команду:

В данном случае производилась отправка пакетов размером в 64 байта.

Проверка трассировки

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

что такое трассировка сети. Смотреть фото что такое трассировка сети. Смотреть картинку что такое трассировка сети. Картинка про что такое трассировка сети. Фото что такое трассировка сети

Для выполнения трассировки используется следующая команда:

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

Чтобы активировать эту опцию необходимо использовать следующий вид команды:

Источник

Как использовать трассировку для выявления сетевых проблем

Traceroute — это инструмент командной строки, входящий в состав Windows и других операционных систем. Наряду с командой ping, это важный инструмент для понимания проблем с подключением к Интернету, включая потерю пакетов и высокую задержку.

Если у вас возникли проблемы с подключением к веб-сайту, traceroute может сказать вам, в чем проблема. Она также может помочь визуализировать путь трафика между вашим компьютером и веб-сервером.

Как работает Traceroute

Когда вы подключаетесь к веб-сайту — скажем, zawindows.ru — трафик должен пройти через нескольких посредников, прежде чем попасть на сайт. Трафик проходит через ваш локальный маршрутизатор, маршрутизаторы вашего интернет-провайдера в более крупные сети и так далее.

Traceroute показывает нам путь, по которому трафик достигает веб-сайта. Она также отображает задержки, возникающие на каждой остановке. Если у вас возникают проблемы с доступом к веб-сайту, и этот веб-сайт работает правильно, возможно, проблема где-то на пути между вашим компьютером и серверами веб-сайта. Traceroute покажет вам, где эта проблема.

Мы использовали traceroute, чтобы объяснить и продемонстрировать, кто предоставляет интернет-услуги вашему интернет-провайдеру.

Говоря техническим языком, traceroute отправляет последовательность пакетов, используя протокол ICMP (тот же протокол, который используется для команды ping). Первый пакет имеет время жизни (также известное как TTL или предел скачков), равное 1, второй пакет имеет TTL 2 и так далее. Каждый раз, когда пакет передаётся новому маршрутизатору, TTL уменьшается на 1. Когда он достигает 0, пакет отбрасывается, и маршрутизатор возвращает сообщение об ошибке. Отправляя пакеты таким образом, traceroute гарантирует, что каждый маршрутизатор на пути отбрасывает пакет и отправляет ответ.

Как использовать Traceroute

Traceroute запускается из командной строки или окна терминала. В Windows нажмите клавишу Win+x и выберите Windows PowerShell.

Чтобы запустить traceroute, запустите команду tracert, после которой укажите адрес веб-сайта. Например, если вы хотите запустить трассировку на ZaWindows, вы должны выполнить команду:

что такое трассировка сети. Смотреть фото что такое трассировка сети. Смотреть картинку что такое трассировка сети. Картинка про что такое трассировка сети. Фото что такое трассировка сети

На Mac или Linux вместо этого запустите

Постепенно вы увидите, как маршрут обретает форму, по мере того как ваш компьютер будет получать ответы от маршрутизаторов по пути.

Если вы запустите трассировку для другого веб-сайта, в частности, размещённого в другом регионе мира, вы увидите, как пути различаются. Первые «переходы» совпадают с трафиком, поступающим к вашему интернет-провайдеру, в то время как более поздние переходы отличаются, поскольку пакеты идут в другое место. Например, ниже вы можете увидеть пакеты, отправляемые на сайт Baidu.com в Китае.

что такое трассировка сети. Смотреть фото что такое трассировка сети. Смотреть картинку что такое трассировка сети. Картинка про что такое трассировка сети. Фото что такое трассировка сети

Что означает вывод tracert

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

Формат каждой строки следующий:

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

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *