Что такое трассировка маршрута. Трассировка маршрута: зачем она нужна

Представьте себе ситуацию: вы сидите в интернете, никого не трогаете, и тут ваш любимый сайт перестает грузиться. Интернет упал, думаете вы. Но оказывается, что остальные сайты грузятся нормально. Как определить, что случилось? Вам поможет трассировка маршрута .

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

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

Трассировка маршрута выполняется при помощи служебной программы Traceroute/Tracert . Эта программа входит в комплект поставки практически всех современных сетевых ОС (операционных систем, поддерживающих работу в компьютерных сетях). В ОС Microsoft Windows эта программа называется tracert, а в Linux и Mac OS X - traceroute.

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

Как производится трассировка маршрута в Windows? Программа tracert, как и программа ping, запускается из командной строки. На всякий случай напоминаем, как войти в командную строку в Windows . Есть три основных способа:

  1. Нажимаем на кнопку Пуск, выбираем пункт Выполнить, в поле Открыть пишем cmd и нажимаем на кнопку OK или клавишу Enter.
  2. Нажимаем Win+R (Win – это кнопка, на которой изображен логотип Windows), открывается такое же окно, как и в предыдущем случае, так что дальше действуем аналогично.
  3. Нажимаем на кнопку Пуск, выбираем пункт Все программы (или Программы для более ранних версий ОС), в нем - пункт Стандартные, в стандартных программах кликаем на пункт Командная строка.

В открывшемся окне набираем команду tracert имя_сайта (например, tracert yandex.ru) и нажимаем на клавишу Enter. Вместо адреса сайта можно ввести его IP адрес (если он вам, конечно, известен). Введя адрес, мы тем самым установили маршрут до конечного узла. В окне командной строки в реальном времени выводятся результаты трассировки: название и IP адрес промежуточных узлов, время отклика в миллисекундах.

Если вам не интересны имена промежуточных узлов то трассировка маршрута должна выполняться с параметром -d, который скрывает имена маршрутизаторов, например: tracert -d yandex.ru .

Как использовать эти данные для решения проблемы? Время отклика показывает загруженность канала. Но даже если время отклика большое, сайт будет грузиться - пусть и с трудом. А вот если вместо времени отклика вы видите надпись «Превышен интервал ожидания для запроса» , это значит, что на данном узле связи происходит потеря данных, а значит, проблема именно в нем.

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

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

Инструкция

Программа для трассировки маршрутов пакетов информации есть в составе практически каждой сетевой операционной системы. В ОС Windows она tracert, а в GNU/Linux и Mac OS - traceroute. Принцип действия этой программы таков:Программа отправляет пакеты информации по указанному ей адресу, ставя заведомо невыполнимые условия доставки - очень короткое время жизни пакета (TTL - Time To Live). При отправке первого пакета оно равно 1 секунде. Каждый сервер на пути от вашего компьютера до нужного адреса обязан уменьшить это значение как минимум на единицу. Поэтому время жизни пакета истечет уже на первом узле и тот не станет передавать его дальше, а пошлет уведомление отправителю о невозможности доставки. Таким способом программа трассировки получит информацию о первом промежуточном узле. Затем она увеличит время жизни пакета на единицу и повторит отправку. Этот запрос проживет до второго узла и ситуация . Таким образом программа трассировки составит список всех промежуточных узлов, а если от какого либо не получит уведомления, то это будет означать одно из двух - либо пакет все таки доставлен получателю, либо этот узел не исполняет . Чтобы выяснить пошлет запрос с другим дефектом - будет указан заведомо несуществующий номер порта. Если этот пакет вернется с указанием - значит узел нормально и он и есть получатель, а если нет - значит на этом узле имеет место обрыв цепочки доставки пакетов. В любом случае процедура трассировки на этом будет закончена.

В ОС Windows исполняемый файл этой программы (tracert.exe) хранится в папке WINDOWSsystem32 на системном диске вашего компьютера. Но чтобы запустить программу нет необходимости разыскивать файл. Эта программа управляется только из , поэтому сначала нужно командной строки. Для этого в главном меню (на кнопке «Пуск») выберите пункт «Выполнить» чтобы открыть диалоговое окно «Запуск программы». Можно его открыть и нажатием сочетания клавиш WIN + R. Затем напечатайте "cmd" (без кавычек) и нажмите кнопку «ОК» (или клавишу Enter). В открывшемся терминале напечатайте tracert и, через пробел, адрес узла в сети, до которого вам требуется провести трассировку . Это может быть как IP-адрес, так и доменное имя. Протокол http указывать не нужно. После того как будет закончена, результат можно скопировать - нажмите CTRL + A чтобы все выделить и Enter чтобы скопировать выделенное в оперативную память. Затем скопированное вы можете вставить в любой документ какого либо текстового редактора.

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

Инструкция

Осуществите трассировку с помощью команды traceroute, в Windows-tracert. Для того чтобы произвести трассировку маршрута, выполните следующее: откройте меню «Пуск» – «Выполнить». Введите cmd.exe и выберите «ОК».

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

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

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

  1. Проблемы на сервере (в том числе технические работы)
  2. Проблемы вашего провайдера доступа
  3. Проблемы на канале
  4. Проблемы с браузером
  5. Вас забанили и некоторые другие.

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

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

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

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

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

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

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

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

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

Как сделать трассировку сайта

Дальше я расскажу, как сделать трассировку маршрута в ОС Windows. Для этого нам понадобится воспользоваться служебной программой Tracert, которая, аналогично программе ping, запускается командной строкой. Чтоб в нее попасть, можно использовать один из трех предлагаемых мной способов:

2. Воспользоваться комбинацией клавиш вида Win+R, которая открывает окно как в первом способе. Дальше все действия одинаковы.

Откроется окошко с черным фоном, где нужно набрать команду в виде tracert название_сайта (в качестве примера: tracert yahoo.com) и подтверждаем ввод клавишей Enter. Если известен IP-адрес ресурса, то вместо названия домена, можно вводить его. Вводя адрес, устанавливается маршрут к конечному узлу. Окно командной строки выводит результаты сделанной трассировки в реальном времени: IP-адреса и названия промежуточных узлов, а также время отклика, отображаемое в миллисекундах.

В случае, если имена каких-либо промежуточных узлов не интересны, то трассировку маршрута необходимо выполнять с добавлением параметра –d, что позволяет скрыть имена маршрутизаторов. Вот так выглядит пример запроса: tracert -d yahoo.com.

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

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

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

Что проверяет команда tracert?

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

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

Запуск команды tracert в Windows

Попав в командную строку, необходимо ввести tracert domen.ru, где вместо domen.ru можно указать любое доменное имя или IP-адрес. Это приведет к запуску утилиты со стандартными параметрами.

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

Запущенная опытным пользователем, содержит команда tracert описание ключей. Его можно вызвать, просто набрав команду tracert с параметром -?.

Приведем краткое описание параметров, которые поддерживает команда tracert:

  • -h задает максимальное количество переходов, которое может быть выполнено при поиске конечного узла.
  • -d запрещает команде производить попытки превратить IP-адрес промежуточного шлюза в имя.
  • -j позволяет утилите производить свободный поиск маршрута по списку узлов. Максимум можно указать 9 маршрутизаторов.
  • -w служит для указания времени ожидания ответа на запрос от узла. Если ответ не получен, то будет выведена звездочка. Указывается в миллисекундах.

По умолчанию максимальное число прыжков ограничено 30-ю, а время ожидания - 4-мя секундами.

Аналог в Linux

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

Запуск трассировки с помощью ICMP осуществляет команда tracertroute с ключом -I. Стоит обратить внимание, что для выполнения этой операции потребуются права администратора. При стандартных настройках в большинстве дистрибутивов запуск команды tracertroute может быть осуществлен любым пользователем. В этом случае будут использовать UDP-пакеты, также можно утилите принудительно указать использовать именно их с помощью параметра -U.

Звездочки в выводе маршрутов

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

Что следует знать о трассировке маршрутов?

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

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

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

Утилита MTR

Программа MTR существует в версиях для большинства операционных систем. Принцип ее работы очень похож на команду tracer (traceroute). Она опрашивает заданный узел в течение определенного промежутка времени, при этом позволяя зафиксировать изменения задержек.

Версия утилиты для Windows имеет название WinMTR и распространяется бесплатно.

Пользователю предоставляется возможность работать с графическим интерфейсом, в котором необходимо указать IP-адрес или домен узла назначения, запустить сбор статистики. Как правило, для анализа необходимо отправить минимум 100 пакетов.

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

Что следует отправлять провайдеру для диагностики сетевых проблем?

Администратору сервера или провайдеру, как правило, лучше отправить выводы команд tracert (traceroute), ping и отчет утилиты MTR. Можно, конечно, постараться обойтись только последним, но чем больше информации предоставлено, тем легче специалисту найти и устранить проблему.

  • Сергей Савенков

    какой то “куцый” обзор… как будто спешили куда то