70840

Traceroute - утилита трассировки маршрутов

Лабораторная работа

Информатика, кибернетика и программирование

Тraceroute позволяет узнать маршрут движения пакетов от хоста-источника до хоста-назначения. Однако, как и ранее рассмотренная ping, утилита traceroute полезна не только в качестве отладочно-диагностирующего средства, но и как инструмент для изучения реальной работы протоколов ICMP, IP, UDP и принципов маршрутизации.

Русский

2014-10-28

104.3 KB

0 чел.

Тема 11: Traceroute - утилита трассировки маршрутов

Введение в тему

Общие сведения

Тraceroute позволяет узнать маршрут движения пакетов от хоста-источника до хоста-назначения. Однако, как и ранее расмотренная ping, утилита traceroute полезна не только в качестве отладочно-диагностирующего средства, но и как инструмент для изучения реальной работы протоколов ICMP, IP, UDP и принципов маршрутизации. Ее создатель - Van Jacobson (Вэн Джекобсон, он же в просторечии - Ван Якобсон).

Принцип действия Traceroute 

1) Утилита формирует пакет UDP, в котором задает заведомо неиспользуемый порт назначения (берется начальный номер 33434, а во всех последующих UDP-пакетах этот номер инкрементируется на 1), вместо порта источника  указывает фиктивный номер (равный PID + 32768, то есть PID + 1 в старшем разряде), а в поле данных помещает 12 байтов: порядковый номер отсылаемого пакета, его "срок жизни" и момент его отправки. Пакет UDP отсылается в IP-дейтаграмме, в заголовке которой traceroute (пользуясь системными  привилегиями) принудительно записывает для теста ближайшего на трассе узла TTL=1 (для следующих узлов TTL монотонно возрастает  до TTLmax, причем по умолчанию обычно TTLmax=30, но может быть задано и иным при запуске утилиты).

2) IP-дейтаграмма с TTL=1 отбрасывается уже первым маршрутизатором (т.к. TTL=TTL-1=0), который возвращает ядру ОС источника ICMP-сообщение об ошибке "срок жизни истек" (time exceeded: type=11, code=0 или code=1). В теле ICMP-сообщения (см. рис.) возвращаются IP-header и следующие за ним 8 байтов UDP-заголовка из отброшенной IP-дейтаграммы (заметим, что записанные traceroute в теле исходной дейтаграммы данные не возвращаются!):

 |    IP-header    |ICMP-headr|    IP-header     |UDP-header|

     (20 байтов)    (8 байтов)    (20 байтов)     (8 байтов) 

Заголовок ICMP-заголовка сообщения об ошибке "time exceeded" (8 байтов):

 |  тип   |  код   | контр.сумма |          нули            |

  (1 байт) (1 байт)   (2 байта)          (4 байта)

3) Среди поступающих на хост источника всевозможных ICMP-сообщений утилита traceroute выделяет предназначенный ей ICMP-отклик по "фиктивному" номеру "своего UDP-порта" (см. п.1).

а) Если истек таймаут (по умолчанию обычно 5 сек)на получение отклика, то в строке вывода для текущего значения TTL печатается звездочка.

б) Если пришло сообщение об ошибке "time exceeded" (type=11,code=0 или 1), от промежуточного маршрутизатора - traceroute вычисляет RTT и печатает его в строке вывода для текущего значения  TTL.

в) Если пришло сообщение об ошибке "port unreacheable" (type=3, code=3), то это - сообщение от конечного адресата: traceroute вычисляет RTT и печатает его в строке вывода для текущего (в этом случае последнего) значения  TTL.

4) Завершив серию из трех зондов с неизменным текущим значением TTL, traceroute в случае 3б) увеличивает TTL на 1 и все повторяется вновь, пока не наступит случай 3в), после чего работа утилиты заканчивается.

 Дополнительные возможности.

Дополнительные возможности зависят от реализации traceroute и определяются соответствующими ключами. В разных реализациях они обозначаются либо как options утилиты буквами (например, -w, -m, -q, -g и т.д. для traceroute в Unix или tracert в MS Windows), либо как qualifiers (VAX/VMS).

Использование SR-опции IP-заголовка:

гибкая маршрутизация от источника с записью маршрута: LSRR - Loose Source Routing Record (code 83) (ключ -g traceroute);

жесткая маршрутизация от источника с записью маршрута: SSRR - Strict Source Routing Record (code 89).

Примечание. Далеко не все маршрутизаторы обрабатывают эти опции: системные администраторы обычно их считают опасными (хакерскими) и запрещают их выполнение.

Параметры утилиты ping в Unix ОС:

-m (max_ttl) –максимальное значение TTL, используемое traceroute (по умолчанию –);

-q (queries) –количество зондовых пакетов, высылаемых traceroute (по умолчанию –);

-w (wait_time) –максимальное время ожидания между отправкой зондовых пакетов (по умолчанию –секунд);

-g  (gateway) –адрес промежуточного маршрутизатора для маршрутизации, заданной источником (LSRR) (этот режим может быть недоступен в некоторых системах).

План работы

  1.  Законспектировать сообщаемые преподавателем сведения (см. введение в тему 11).
  2.  Прочесть man на traceroute, законспектировать основные установки и режимы работы утилиты.
  3.  Зафиксировать маршруты от нас до тех же ближнего (напр.хоста в библиотеке в главном здании www.unilib.neva.ru) и дальнего (например, в Антарктиде или в Новой Зеландии) хостов, которые зондировались ранее утилитой ping с опцией RR. Сопоставить время. Сопоставить маршруты, полученные с помощью traceroute, с записанными по показаниям ping, запускавшейся с опцией record route. Объяснить "различия в показаниях" traceroute и ping с опцией RR.
  4.  Попытаться оттрассировать какой-либо удаленный хост с опцией LSSR. Объяснить результат.
  5.  Просмотреть примеры аномальных трасс, данные преподавателем. Отметить особенности и попытаться дать им объяснения.


Контрольные вопросы

  1.  Зачем нужна traceroute, если в IP-заголовке предусмотрены опции RR, timestamp и SR?
  2.  Можно ли утверждать, что "клиент traceroute взаимодействует с сервером traceroute"? Обосновать ответ.
  3.  Что означают печатаемые traceroute значения времени для каждого участка трассы:

- время прохода пакета по участку (хопу)?

- или время прохода "от нас" до этого узла и обратно?

  1.  Можно ли утверждать, что поделив это значение времени пополам, мы получим время прохода в одну сторону?
  2.  Почему время, фиксируемое при большем TTL может быть (и часто бывает) меньше, чем при меньших значениях TTL?
  3.  Сформулировать различия в методах подсчета RTT у ping и traceroute.
  4.  Сформулировать различия в идентификации "клиентов" ping и traceroute.
  5.  Если хост недостижим по traceroute, то сможем ли мы зайти на него по telnet?

Вопросы "сверх программы"

  1.  Как узнать "обратную" трассу - то есть трассу пакетов от дальнего хоста к нашему? Может быть зайти на него по telnet и запустить на нем traceroute в сторону нашего хоста?
  2.  Каким образом, запустив на нашем хосте traceroute с ключом LSSR теретически можно в распечатке получить трассу прохождения пакетов от нас до пункта назначения и обратно от него к нам?
  3.  Зачем traceroute высылает 12 байтов данных в UDP-пакете? Ведь эти данные все равно не возвращаются в ICMP-сообщениях об ошибках?
  4.  Зачем traceroute в каждой формируемой UDP-дейтаграмме увеличивает на единицу номер порта назначения?
  5.  Иногда в распечатке traceroute один и тот же узел указан его именем или адресом дважды - в двух соседних строках. Чем это можно объяснить?
  6.  Как ответить на предыдущий вопрос, если "повторение исчезает" при втором прогоне traceroute, но "вновь временно возникает", при трассировании другого хоста (см. примеры аномальных трасс).
  7.  Как меняется ответ на вопрос №1 (см. “контрольные вопросы”), если иметь в виду опции IPv6?
  8.  Если задаться целью создать приложение "geotrace" (то есть такое, чтобы можно было в GUI увидеть на карте мира всю трассу прохождения пакетов до зондируемого хоста), то какой принцип географической привязки Вы могли бы предложить?

 

А также другие работы, которые могут Вас заинтересовать

35147. Информационные системы. Общие сведения 10.58 MB
  К средствам извлечения информации относятся: штатные средства ручного ввода клавиатура мышь; средства автоматизированного ввода с твердых копий сканеры; специализированные средства ручного ввода дигитайзеры световые перья сенсорные экраны; средства ввода речевой информации; средства ввода данных с аппаратуры датчики измерительные устройства аппаратура связи. Это программное обеспечение может быть как достаточно простым и предполагать только передачу операционной системе данных от аппаратных компонентов так и сложным...
35148. редства удалённого выполнения заданий в Windows 38 KB
  Планировщик заданий Windows осуществляет настройку как для локального компьютера так и для удаленной системы. На удаленных системах эта возможность обеспечивается совместной работой нескольких служб и программ: Планировщик заданий это стандартная служба Windows управляющая планировщиком заданий. Создание заданий на локальном компьютере осуществляется через: ПускВсе программыСтандартныеНазначенные задания Создание заданий на удаленном компьютере осуществляется через: Сетевое окружениеОтобразить компьютеры рабочей группывыбираем...
35149. Средства удалённого доступа к сети в Windows 40 KB
  в ОС Windows XP имеются встроенные инструменты для организации таких подключений : Remote Desktop Удаленный рабочий стол Remote ssistnce Удаленный помощник. Remote ssistnce Remote ssistnce позволяет пригласить другого пользователя друга знакомого специалиста для оказания помощи. При этом приглашенный участник в отличие от использования Remote Desktop может наблюдать за действиями пользователя. При этом Remote ssistnt самостоятельно управляет настройками соединения подстраивая объем передаваемых данных под возможности канала...
35150. Виртуальные частные сети. Архитектура и протоколы 42.5 KB
  VPN англ. В зависимости от применяемых протоколов и назначения VPN может обеспечивать соединения трёх видов: узелузел узелсеть и сетьсеть. Уровни реализации Обычно VPN развёртывают на уровнях не выше сетевого так как применение криптографии на этих уровнях позволяет использовать в неизменном виде транспортные протоколы такие как TCP UDP. Пользователи Microsoft Windows обозначают термином VPN одну из реализаций виртуальной сети PPTP причём используемую зачастую не для создания частных сетей.
35151. Методы повышения надёжности хранения данных. Технология RAID 50.5 KB
  Технология RID Одна из причин ведущих к утрате информации аппаратные сбои и поломки. RID это акроним от Redundnt rry of Independent Disks. Этим набором устройств управляет специальный RIDконтроллер контроллер массива который инкапсулирует в себе функции размещения данных по массиву; а для всей остальной системы позволяет представлять весь массив как одно логическое устройство ввода вывода. В зависимости от уровня RID проводится или зеркалирование или распределение данных по дискам.
35152. Цели и задачи администрирования 25 KB
  чтобы предоставить пользователям ИС наилучшее возможности по эффективному использованию ресурсов ИС при объективных ограничениях. 3 квалифицируемая помощь пользователям. Здесь задача состоит в том чтобы реализовать в ИС выбранную стратегию ИБ на базе 1 или нескольких политик безопасности обеспечить использование ИС только санкционированным пользователям предусмотреть резервное копирование и восстановления отдельных ресурсов или всей ИС.
35153. Сетевое администрирование. Основные понятия. Сетевые ОС 26.5 KB
  Компьютерные сети это совокупность компьютеров связанных коммуникационной системой необходимым программным обеспечением позволяющей пользователям и приложениям получить доступ к ресурсам компьютеров сети. клиентская часть средство запроса на доступ к удаленным серверам транспортные средства сетевой ОС обеспечивающие передачу доступных между компьютерами Среди компонентов сети выделяют сетевые службы это программные модули работающие в установленном режиме которые предоставляют доступ к конкретным ресурсам компа через сеть....
35154. Модели управления доступом к ресурсам 27 KB
  Основными компонентами ролевой модели разрешения права пользователя Разрешение определяет тип доступа к объекту или его свойству дается пользователям или группам . разрешения применяются к защищенным объектам Рекомендуется назначать разрешения группам. Существуют группы разрешений которые являются основными или обязательными чтение разрешения смена разрешения смена владельца удаление разрешения Существует специальный вид разрешения владения которое назначается при создании объектов. Какие бы разрешения не были установлены для...
35155. Администрирование сетей Microsoft. Средства анализа состояния сети в Windows 29 KB
  Средства анализа состояния сети в Windows. Базовые принципы: 1 необходимо иметь точную схему и документацию сети: текущая топологическая схема подробная информация обо всем его сетевом оборудовании его конфигурации и использующихся протоколах IPадресах каналах связи WU сервера и сегментах пользовательских локальных сетей. 2 перед изменениями в сети а так же после этих изменений необходимо оценивать работу в сети для того чтобы делать выводы об отрицательном или положительном влиянии внешних изменений . В Windows отдается приоритет...