Академический Документы
Профессиональный Документы
Культура Документы
«Маршрутизация в IP сетях,
расширенный»
Маршрутизація в ІР мережах, розширений
IP Routing, Advanced
Цель курса
Данный курс является развитием курса ROU2 версии 5.x.x, но содержит
целый ряд отличий от версии 5.х.х:
• использует новые материалы курса CCNA – CCNA R&S v5;
• содержит ранее отсутствовавшие модули, посвященные ipv6;
• содержит ранее отсутствовавшие модули, посвященные dhcp (теперь
подробно изучается в CCNA R&S) и dns (это важно для последующего
изучения материалов CCNP);
• содержит несколько дополнительных тем для лучшей интеграции
с материалами авторизованного курса.
Данный курс включает в себя рассмотрение модулей 8, 9, 10 и 11 авто-
ризованного курса CCNA R&S Introduction to Networks.
Данный курс включает в себя рассмотрение модулей 4, 6, 7, 8, 9, 10 и 11
авторизованного курса CCNA R&S Routing and Switching Essentials (CCNA2).
Данный курс включает в себя рассмотрение модулей 5, 6, 7, 8, 9 автори-
зованного курса CCNA R&S Scaling Networks (CCNA3).
Данный курс включает в себя рассмотрение модуля 7 авторизованного
курса CCNA R&S Connecting Networks (CCNA4).
Данный курс должен опираться на реализации cisco, использование
других платформ для изучения маршрутизации недопустимо. Пред-
почтительным инструментом для реализации демонстраций и лабо-
раторных работ должен быть dynamips/gns3, разумеется допускается
использование реального оборудования. Использование PacketTracer
важно с целью обучения работе с этим инструментом, но его
использование следует свести к минимуму везде, где это возможно.
В течение данного курса студенты должны сдать финальный экзамен
по курсу CCNA1.
По завершении данного курса проводятся экзамены по ROUTE1 и ROUTE2.
Программа курса «Маршрутизация в IP сетях, расширенный»
Для групп полустационара. Версия 7.0.0 стр. 2 из 59
Тематический план
Урок 1.
Адресация в IPv6
Протокол IPv6
Урок 2.
Протокол ICMPv6
Протокол DHCP
Урок 3.
Протокол DHCP (продолжение)
Урок 4.
Протокол DNS
Урок 5.
Введение в динамическую маршрутизацию
Протоколы маршрутизации RIPv1, RIPv2 и RIPng
Урок 6.
Протокол маршрутизации EIGRP
Урок 7.
Протокол маршрутизации OSPF
Урок 8.
Основы VPN
Образы IOS и лицензирование
Урок 9.
Протокол маршрутизации BGP
Урок 10.
Оптимизация маршрутизации
Экзамен
Программа курса «Маршрутизация в IP сетях, расширенный»
Для групп полустационара. Версия 7.0.0 стр. 3 из 59
Урок 1
Адресация и продвижение пакетов в IPv6
Недостатки протокола IPv4. Главный недостаток – недостаточное адресное про-
странство, причина проблем – короткий адрес. Повторить известные студентам
методы борьбы с недостаточным количеством адресов: CIDR, использование при-
ватных адресов и NAT. Текущее положение дел со свободными IPv4 адресами,
необходимость полноценно решать проблему недостатка адресов. Краткий обзор
прочих недостатков IPv4: необходимость расчета контрольной суммы при пере-
направлении пакетов, поддержка фрагментации на маршрутизаторах.
Новый протокол третьего уровня на замену IPv4 как полноценное решение
проблем IPv4, краткие характеристики IPv6. Новый адрес, длиной 128 байт, упро-
щенный заголовок, не требующий изменения при маршрутизации пакета. Новая
стратегия присвоения публичных IPv6 адресов, позволяющая избегать трансля-
ции и использовать публичные адреса везде, где это необходимо без ограничений.
Важно подчеркнуть, что меняется только IP, протоколы tcp и udp не меняются,
хотя использование нового протокола на третьем уровне в любом случае должно
поддерживаться. Также ясно, что меняются протоколы, напрямую связанные с IP,
а именно icmp, протоколы маршрутизации и пр.
Подчеркиваем, что сегодня крайне важно изучать IPv6 не менее подробно, не-
жели IPv4, так как, с одной стороны, инфраструктура IPv4 еще будет существовать
значительное время, а с другой стороны активное использование IPv6 неизбежно.
Рассказать о том, как будет построено дальнейшее обучение: все технологии тре-
тьего уровня мы будем изучать одновременно и для IPv4 и для IPv6. Для этого нам
необходимо перед изучением протоколов маршрутизации изучить относительно
IPv6 весь круг вопросов, которые мы изучили ранее для IPv4, а именно: структура
адреса, номер узла и номер сети, продвижение пакетов в IPv6 сети, разрешение
IPv6 адресов в адреса канального уровня, заголовок протокола IPv6, протокол
ICMPv6, принципы назначения адресов, использование ACL, туннелирование.
После того, как эти темы будут изучены, мы приступим к изучению основ дина-
мической маршрутизации, при этом будем сразу изучать динамическую маршру-
тизацию как в IPv4, так и в IPv6 сетях.
Понятие об IPv6 адресе, адрес как 128-и разрядное число. Отказ от точечно-
десятичной формы записи адреса, запись адреса в 16-и разрядной форме в виде
пар байтов, разделенных двоеточием. Сокращенные формы записи IPv6 адреса:
удаление ведущих нулей в двухбайтовых блоках, использование символа :: для за-
мены одной или нескольких нескольких групп 0000. Использование префиксной
записи (/xy) для указания диапазона адресов. Самостоятельная работа, посвящен-
ная записи ipv6 адресов.
Программа курса «Маршрутизация в IP сетях, расширенный»
Для групп полустационара. Версия 7.0.0 стр. 4 из 59
Протокол IPv6
Повторяем, какие функции выполнял протокол IPv4 и какие поля в заголовке для
этого были предусмотрены. Анализ функций, которые являются лишними или
редко используемыми. Контрольная сумма как безусловно вредная функция заго-
ловка, фрагментацией как редко используемая функция. Ограничения, связанные
с недостаточной длиной поля «опции» в ряде случаев.
Программа курса «Маршрутизация в IP сетях, расширенный»
Для групп полустационара. Версия 7.0.0 стр. 9 из 59
Урок 2
Протокол ICMPv6
Общие рассуждения о необходимости ICMPv6 на примере изученного ранее
ICMPv4. Анализ сообщений icmpv4, обсуждение того, какие возможности icmpv4
должны быть обязательно реализованы в ipcmv6. Повторение общего формата
ICMPv6 заголовка, сообщения об ошибках и информационные сообщения.
Сообщения об ошибках типа 1, недостижимость получателя. Подчеркнуть,
что аналогичное сообщение есть и в icmpv4. Формат сообщения, цитирование
всего пакета, вызвавшего ошибку, если это позволяет mtu. Коды, используемые
в сообщении о недостижимости. Код 0, указывающий на отсутствие маршрута
к получателю, аналог host unreachable в ICMPv4. Код 1, указывающий на админи-
стративный запрет на коммуникации, причина – фильтрация пакетов на тран-
зитном маршрутизаторе. Код 2, выход за рамки скопа адресов. Пример ситуации,
когда узел у которого есть только Link Local адрес может обмениваться пакетами
с Global Unicast адресом в том случае, если они находятся в одной канальной сетои.
Попытка обмена с Link Local к Global Unicast адресу, при которой пакет должен
пересечь маршрутизатор, генерация сообщения об ошибке. Код 3, недостижимость,
которая не может быть описана другими кодами, например невозможно разрешить
L3 адрес следующего маршрутизатора в L2 или иные специфические проблемы
линка. Отметить, что маршрутизаторы cisco не посылают таких сообщений. Код 4,
отсутствие слушателя транспортного протокола, которые не умеет сам сообщать
о таких ошибках (типично udp). Код 5, сообщающий более детальную информа-
цию, нежели код 1, а именно запрет коммуникаций с данным source адресом. Код
6, уведомляющий, что пакеты к данному получателю на маршрутизаторе отбра-
Программа курса «Маршрутизация в IP сетях, расширенный»
Для групп полустационара. Версия 7.0.0 стр. 11 из 59
сываются. Отметить, что rfc говорит о том, что данный код уточняет сообщение
типа 1 (об административном запрете), однако в IOS этот код скорее уточняет
сообщение типа 0, данный код отправляет в случае, если маршрут к получателю
лежит через интерфейс null.
Отметить, почему нет сообщения, аналогичного Protocol Unreachable – эта
функциональность реализована в сообщении Parameter Problem, о котором речь
пойдет ниже. Отметить, почему нет сообщения о недостижимости вследствие
того, что пакет слишком велик.
Сообщение типа 2, слишком большой пакет. Подчеркнуть, что аналогичное
сообщение есть и в icmpv4. Подчеркнуть, что в IPv4 пакеты МОГЛИ не фрагмен-
тироваться маршрутизаторами при установке флага DF, и тогда соответствующее
icmp сообщение позволяло реализовать технологию path mtu discovery. В IPv6
маршрутизаторы никогда не фрагментируют пакет, поэтому данная технология
работает всегда для любых пакетов и обеспечивается рассматриваемым icmpv6
сообщением. Формат пакета, поле mtu, отметить, что такое сообщение нужно
посылать даже в ответ L2/L3 мультикаст.
Сообщение типа 3, Time Exceeded Message. Подчеркнуть, что аналогичное
сообщение есть и в icmpv4 и данное сообщение полностью повторяет его функ-
циональность. Формат сообщения. Два кода, сообщающие что время истекло при
транзите (Hop Limit достиг нуля) и при сборке (за заданное время из фрагментов
не удалось собрать пакет).
Сообщение типа 4, Parameter Problem. Подчеркнуть, что аналогичное со-
общение есть и в icmpv4. Формат сообщения, поле указатель. Сообщение с кодом
0, общая ошибка, без особой детализации, отправляется когда нельзя послать
сообщение с кодами 1 или 2. Например, если при сборке пакета из фрагментов,
фрагменты не имеют кратности 8 байт, то такой пакет должен быть уничтожен,
и отправителю послано icmpv6 сообщение типа 4 с кодом 0. Код 1, неизвестен
Next Header в IPv6 заголовке. Код 2, неизвестная опция в расширениях Hop-by-
hop/destination options. В зависимости от значения первых двух битов типа опции,
пакет может обрабатываться дальше (00), должен быть молча уничтожен (01),
должен быть уничтожен с отправкой рассматриваемого сообщения (10), должен
быть уничтожен с отправкой рассматриваемого сообщения только если пакет был
послан unicast (11).
Информационные сообщения эхо-запрос и эхо ответ, типы 128/129. Формат
сообщения, поля Identifier и Sequence Number, аналогичные таковым в ICMPv4.
Необходимость отвечать на unocast, multicast и anycast запросы, выбор адреса,
к которого посылается ответ в зависимости от того, на какой адрес был получен
запрос.
Демонстрация работы всех рассмотренных ранее сообщений. Следует начать
с сообщений типа 128/129, так как эти сообщения будут полезны для всех прочих
демонстраций.
Программа курса «Маршрутизация в IP сетях, расширенный»
Для групп полустационара. Версия 7.0.0 стр. 12 из 59
маршрутизатор отправить внеочередной RA, для этого есть сообщение RS. По-
нятие о stateless/statefull автоконфигурировании.
Помимо основной функции (автоконфигурировать узлы) сообщения RS/RA
выполняют дополнительную задачу – разрешать IPv6 адреса в MAC адреса (раз-
умеется, в сетях, где это необходимо), так как и узлы и маршрутизаторы включают
в свои RS/RA сообщения свои канальные адреса.
Теперь рассматриваем полный формат пакетов, начинаем с RS. Тип 133, формат
заголовка. Применение опции в icmpv6 пакетах с помощью TLV блоков, един-
ственная разрешенная опция для RS сообщения – Source link-layer address, формат
опции. Отмечаем, что такие пакеты отправляются с неопределенного адреса (если
никакого адреса у интерфейса пока нет) или, типично, с Link Local адреса, а полу-
чатель таких пакетов – multicast адрес FF02::2 – все маршрутизаторы линка. Со-
общение RA, тип 134. Формат сообщения. Поле Cur Hop Limit – способ маршрути-
затору порекомендовать узлу поле Hop Limit для отправляемых в будущем пакетов
(0 – нет рекомендации). Флаги M/O. Поясняем, что несмотря на то, что в IPv6 есть
описываемое сейчас автоконфигурирование (Stateless, пояснить значение термина),
так же поддерживается и привычное в IPv4 конфигурирование с помощью dhcp.
Пояснить назначение флагов, отметить, что пока нас интересуют только нулевые
значения флагов (т. е. только автоконфигурирование, выполняемое с помощью
RA/RS), при изучении dhcpv6 мы рассмотрим использование других значений
флагов и взаимодействие описываемого автоконфигурирования и dhcpv6. Поле
Router Lifetime, возможное нулевое значение поля (отключение маршрутизатора
с объявлением об этом узлам). Про два остальных поля (Reachable/Retrans Time)
пока говорим, что они не связаны с рассматриваемой функциональностью RS/
RA и будут рассмотрены ниже, при изучении технологии Neghbor Unreachability
Detection). Допустимые опции в пакете RA: Source link-layer address (только если
имеет смысл), MTU (должна включаться на линках с переменным MTU, может
включаться и на других линках), Prefix Information – сведения обо всех префиксах,
которые есть на интерфейсе. Формат новых опций, флаги L/A, поля Valid/Preferred
Lifetime (rfc4862) в опции Prefix Information.
Процесс stateless автоконфигурирования узла, необходимо обобщить то, что
было сказано выше при рассмотрении сообщений RA/RS и NA/NS.
Технология Neighbor Unreachability Detection. Для чего нужно отслеживать со-
стояние соседей. Что является достоверной информацией о достижимости соседа,
важность контроля не только принятых пакетов, но двусторонней связи, т. е. сосед
достижим, если об этом говорит протокол верхнего уровня, либо получен NA в от-
вет на NS. Состояния соседа в кеше соседей: INCOMPLETE, REACHABLE, STALE,
DELAY, PROBE, значение каждого состояния, переходы между состояниями.
Сообщения о перенаправлении (тип 137), единственный код. Принцип ра-
боты эквивалентен аналогичному сообщению типа 5 в icmpv4. Формат пакет,
Программа курса «Маршрутизация в IP сетях, расширенный»
Для групп полустационара. Версия 7.0.0 стр. 14 из 59
Прежде чем двигаться дальше, вспоминаем, что при изучении IPv4 мы из-
учили некоторое количество дополнительных технологий, помимо адресации,
маршрутизации, заголовка и icmp. Проводим краткое рассмотрение аналогичных
тем для IPv6.
Назначение нескольких адресов на интерфейсе, локальная маршрутизация.
Отметить, что данная функциональность в IPv6, а отличие от IPv4 применяется
типично, возможность использования link-local адреса шлюза по-умолчанию, во-
обще не привязанного к применяемым схемам адресации.
Подключение узла несколькими интерфейсами к одной сети – никаких от-
личий от IPv4, очень кратко, только напомнить выводы.
Настройка адресов интерфейсов из различных IPv6 сетей в одной канальной
сети с указанием себя как шлюха по-умолчанию, полная аналогия с IPv4, только
выводы.
Адресация в сетях точка-точка: подчеркиваем, что для таких линков есть осо-
бенности в настройках, которые будут продемонстрированы в следующей демон-
страции.
Провести демонстрацию: два соединенных маршрутизатора, к каждому под-
ключено по одной сети, в каждой по одному узлу. Сконфигурировать сеть в стиле
IPv4: на каждом интерфейсе маршрутизатора указан Global Unicast IPv6 адрес, на
узлах настроены статические IPv6 Global Unicast адреса и статически же настрое-
ны Global Unicast адреса шлюзов по-умолчанию. На маршрутизаторах настроены
статические маршруты к удаленным сетям через Global Unicast адрес соседних
маршрутизаторов. На этой топологии необходимо показать, какие новые возмож-
ности дает IPv6 для конфигурирования сети.
Сперва настраиваем на маршрутизаторах маршруты, проходящие через соседей
с помощью link-local адресов, это дает возможность сделать настройку маршрутов
независимой от адресации на линке между маршрутизаторам, более того, это дает
возможность вообще не использовать между маршрутизаторами, соединенными
точка-точка линком, никаких Global Unicast адресов. Удаляем с соответствующих
интерфейсов маршрутизаторов Global Unicast адреса (не забываем про ipv6 enable
на соответствующем интерфейсе, в противном случае интерфейс не сможет рабо-
тать с IPv6). Продемонстрировать, что коннективность между узлами сохранилась,
после чего обсуждаем, как теперь маршрутизатор сможет отправить destination
unreachable с интерфейса, на котором нет никакого Global Unicast адреса, перена-
страиваем соответствующие интерфейсы в качестве unnumbered, демонстрируем
коннективность и работоспособность traceroute.
Убираем маршруты по-умолчанию с хостов, соответствующие маршруты бу-
дут получены с помощью ipv6 nd, демонстрируем коннективность между узлами.
Убираем явно настроенные адреса с узлов, эти адреса тоже могут быть полу-
чены автоматически, обращаем внимание, что новые адреса будут отличаться от
ранее использованных, снова демонстрируем сохранение коннективности.
Программа курса «Маршрутизация в IP сетях, расширенный»
Для групп полустационара. Версия 7.0.0 стр. 16 из 59
Протокол DHCP
Прикладные протоколы стека tcp/ip, связанные с построением сетей: dhcp и dns,
важность изучения этих протоколов на данном этапе. Повторение модели OSI,
краткое повторение функций физического, канального и сетевого уровней. Модель
tcp/ip, краткое повторение функций уровней, сопоставление уровней моделей.
Функции транспортного уровня модели, примеры реализации транспортного
уровня в реальном мире. Методы, которыми пользуется транспортный уровень –
нумерация передаваемых данных и квитирование. Реализация транспортного
уровня (в модели tcp/ip) двумя протоколами – tcp и udp, области применения
двух протоколов. Задачи, требующие гарантирования доставки и задачи, этого
не требующие. Функции протокола tcp: нумерация передаваемых данных, пред-
варительная установка соединений, передача квитанций и адресация протокола
верхнего уровня; функции udp: адресация протокола верхнего уровня, почему
нельзя передавать данные приложений непосредственно поверх ip. Отметить, что
с точки зрения модели OSI, tcp выполняет функции транспортного и сеансового
уровня, а udp – только одну функцию: адресация протокола верхнего уровня, что
скорее следует отнести к сеансовому уровню. Функции представительского уров-
ня, интеграция функций представительского уровня в приложения стека tcp/ip.
Обзор протоколов различных уровней модели tcp/ip. Уровень межсетевых
интерфейсов, описание способа передачи ipv4/ipv6 пакетов через различные ка-
нальные сети, протокол arp и ipv6 nd (частично) как протоколы уровня межсетевых
интерфейсов. Протоколы сетевого уровня: ipv4/ipv6, icmpv4/icmpv6, протоколы
динамической маршрутизации. Протоколы транспортного уровня, ключевые
протоколы прикладного уровня: ftp, tftp, http, почтовые протоколы. Прикладные
протоколы, решающие задачи, связанные с построением сети: dhcp, dns.
Протокол udp, формат заголовка, функции полей Source Port/Destination Port,
концепции «well known ports» и динамических портов, способ расчета контроль-
ной суммы.
Протокол dhcpv4. Автоматизация конфигурирования узлов на ранних этапах
развития ip сетей, протокол rarp, icmp mask request/reply, irdp. Протокол bootp как
предтеча dhcp – краткий обзор функций. DHCP как развитие bootp, совместимость
dhcp и bootp.
Как узел начинает коммуникации с сервером dhcp: использование адресов
0.0.0.0 и 255.255.255.255 для первичных коммуникаций от клиента к серверу, ис-
пользование транспорта udp. Как сервер отвечает клиенту: использование ши-
роковещания на канальном уровне (особо отметить почему) и ограниченного
широковещания на третьем уровне. Наличие на сервере специально сконфигу-
рированного пула адресов, из которого он предлагает клиентам адреса, дополни-
тельные параметры, выдаваемые клиенту с помощью опций.
Программа курса «Маршрутизация в IP сетях, расширенный»
Для групп полустационара. Версия 7.0.0 стр. 18 из 59
Урок 3
Протокол DHCP (продолжение)
Заголовок dhcp. Поле OPCode, два значения этого поля. Особо отметить, что это
поле наследовано из bootp, в котором было всего два типа пакетов, передача на-
стоящего типа пакета dhcp с помощью опции. Поле htype, hlen. Поле hops, кратко
отметить, что поле имеет смысл только если пакеты пересекают маршрутизаторы,
сейчас не рассматривать. Поле xid, значение этого поля в коммуникациях клиент-
сервер. Поле sec, кратко о назначении данного и коммуникациях, в которых есть
главный и резервный сервер. Поле flags, флаг broadcast, использование данного
флага. Поле ciaddr, применение поля клиентом, когда клиент имеет право запол-
нять данное поле. Поле yiaddr, использование данного поля сервером. Поле siaddr,
область применения данного поля, указание дополнительного сервера для даль-
нейшей загрузки, кратко о процессе загрузки бездисковой станции. Поле giaddr,
отложить рассмотрение этого поля до момента, когда будет изучаться relay. Поле
chaddr, формат поля и способ передать аппаратный адрес серверу от клиента.
Поля sname и file, назначение полей, формат полей. Обсудить, что можно сделать
с помощью заголовка: назначить адрес и параметры для бездисковой загрузки,
остальное делается опциями.
Общий формат опций dhcp, TLV, значения в поле длина. Опции, без длины
и данных: PAD и EOF. Опция Magic Cookie как способ отличить bootp и dhcp пакет.
Классификация опций dhpc: конфигурационные опции (для настройки па-
раметров узлов) и dhcp extension. Сперва рассматриваем dhcp extension. Опция
53 – тип dhcp пакета. Опция 50 – запрашиваемый ip адрес. Опция 51 – время
аренды адреса, недостатки выдачи адреса в бессрочное пользование. Опция 52 –
перегрузка sname/file из заголовка bootp/dhcp. Опция 54 – адрес сервера. Опция
55, Parameter Request List, способ оптимизации коммуникаций между клиентом
и сервером с целью уменьшения объема передаваемой информации. Опция 56,
сообщение, передаваемое в пакете dhcp decline. Опция 57, оговаривание макси-
мального размера пакета, который готов принимать клиент. Опции 58-59, обзор
коммуникаций при продлении срока аренды адреса, выполнение операций renew/
rebind, отличие между процессами renew и rebind. Опция 60, классы вендоров,
пока не рассматриваем. Опция 61, идентификатор клиента, роль опции в комму-
никациях.
Опции, которые предназначены для конфигурирования параметров на узлах.
Классификация конфигурационных опций: первичный набор опций – bootp vendor
extension, прочие опции, сгруппированные по областям применения: L3 пара-
метры для хоста, L3 параметры для интерфейса, L2 параметры для интерфейса,
параметры для tcp, параметры для прикладных протоколов. Рассмотрение всех
конфигурационных опций следует проводить, демонстрируя соответствующие
Программа курса «Маршрутизация в IP сетях, расширенный»
Для групп полустационара. Версия 7.0.0 стр. 20 из 59
кет. Пакет Advertise как полная аналогия пакета Offer из dhcpv4. Пакет Request,
запрос клиента на получение адреса от конкретного сервера, отличия пакета
Request в dhcpv6 и dhcpv4: данный пакет не используется для операций renew/
rebind в dhcpv6. Пакет типа Reply, использование данного пакета для ответов на
Request, применимость данного пакета и для других целей, в частности для завер-
шения процедур renew/rebind (и не только, об этом ниже). Подытожить базовую
транзакцию из четырех пакетов. Пакет Release, процедура освобождения адреса,
отличия освобождения адреса в dhcpv4 и dhcpv6. Пакет Decline как полная анало-
гия такого-же пакета из dhcpv4, отличие процедуры Decline от dhcpv4, отправка
подтверждения от сервера. Пакет Information-Request как основа работы stateless
процедуры конфигурирования. Транзакция, которую проводят клиент и сервер
для получения дополнительных параметров. Важно пояснить, почему такая тран-
закция может безопасно проводиться в два пакета. Двухшаговая транзакция полу-
чения адреса в dhcpv6, возможность для сервера ответить пакетом Reply в ответ
на Solicit. Согласование такой транзакции между клиентом и сервером, почему
такая транзакция более безопасна, чем в dhcpv4.
Пакет типа Renew, выполнение процедуры renew, ответ сервера на такой пакет.
Пакет типа Rebind, выполнение процедуры rebind, ответ сервера на такой пакет.
Пакет типа Confirm, возможность для клиента проверить существующий адрес
с помощью запроса серверу, ответ на пакет Confirm. Пакет типа Reconfigure, воз-
можность для сервера уведомить клиентов об изменении настроек пула и, тем
самым, инициировать повторное получение параметров клиентами, ответ на пакет
Reconfigure. Кратко о пакетах типа Relay-Forward и Relay-Reply, более подробно о
работе релейного агента в dhcpv6 будет рассказано позже.
Как отправляются пакеты в dhcpv6, используемые серверами и клиентами
адреса и порты: использование link-local и multicast адресов.
Опции dhcpv6. Общий формат опций, структура TLV, использование поля
Lenght. Опции с кодами 1 и 2, идентификация клиента и сервера, формат опций,
способы формирования DUID для различных клиентов. Определение Identity
Assotiation, IAID. Опция 3, IA для постоянных адресов. Запрос адреса в рамках
IA, ответа в рамках IA, возможность для клиента запрашивать несколько адресов
в рамках нескольких IA. Формат опции, формат поля данных. Отметить, что в са-
мой опции нет места для непосредственно адресов, возможность включать опции
внутрь опций, передача адресов клиенту внутри опций, вложенных в опцию 3,
вложенные опции в dhcpv6. Опция 4, IA для временных адресов, отличия в фор-
мате опции. Опция 5, IA-Address, невозможность передать эту опцию в списке
опций dhcpv6 пакета, только внутри поля опций в других опциях (с кодами 3, 4
и др.). Формат опции 5. Возможность передать несколько опций 5 внутри опций
3/4. Возможность передавать опции внутри опции 5, которая сама вложена внутрь
опций 3/4. Опция 13, Status Code, механизм для уведомления клиента о результатах
проведения транзакции сервером. Формат опции. Применимость опции: в самом
Программа курса «Маршрутизация в IP сетях, расширенный»
Для групп полустационара. Версия 7.0.0 стр. 23 из 59
dhcpv6 пакете (для общего ответа), внутри опции 5, которая внутри опций 3/4
(для уведомления об операции для данной IA). Опция 6, Request Option, запрос
опций клиентом, полная аналогия с подобной опцией в dhcpv4. Опция 7, Preference,
формат опции, возможность назначать серверам приоритеты и сообщать их кли-
ентам. Опция 8, Elapsed Time, формат опции, полная аналогия с соответствующим
полем в заголовке bootp/dhcpv4. Опции 9 и 11 пока не рассматриваем, поясняем
почему. Опция 12, Server Unicast Option, формат опции, применение опции. Опция
14, Rapid Commit, формат опции, процедура согласования быстрой транзакции
между между клиентом и сервером. Опция 15, User Class, формат опции, полная
аналогия соответствующей опции из dhcpv4. Опция 16, Vendor Class, формат
опции. Отличия в реализации от dhcpv4, поле enterprise number. Опция 17, пере-
дача опций вендора клиенту, формат опции. Опция 18, InterfaceID Option, формат
опции, сравнение с опцией 82 в dhcpv4. Опция 19, уведомление от сервера о том,
с помощью какого сообщения клиент должен получить обновления от сервера.
Опция 20, формат опции. Уведомление о возможности использования Reconfigure
сообщений.
Конфигурационные опции в dhcpv6. Почему в dhcpv6 нет опций для переда-
чи маски и шлюза. Опция 23, сведения о серверах dns, формат опции. Опция 24,
Domain search list. Опции 25/26 кратко, без формата, только понятие о делегиро-
вании префиксов клиенту, более детально об этой технологии потом. Опция 39,
передача клиенту его полного доменного имени. Опции 41/42, различные способы
передать клиенту информацию о временной зоне, опция 56, передача сведений о
сервере времени. Опции 59-62, информация, необходимая для удаленно загрузки,
кратко.
Демонстрация работы dhcpv6. Настройка dhcpv6 клиента на маршрутизаторе
Cisco, команда ipv6 enable, когда необходимо давать такую команду, анализ со-
общений Solicit, анализ используемых адресов и формата пакета. Демонстрация
конфигурирования пула dhcpv6: настройка пула, указание пула на интерфейсе
сервера. Анализ базовой транзакции, формат всех пакетов транзакции, включая
все используемые опции. Демонстрация укороченной транзакции между клиентом
и сервером при поддержке rapid-commit обоими участниками. Взаимодействие
автоконфигурации и dhcpv6. Включение на клиенте автоконфигурирования без
флагом у сервера, демонстрация поведения клиента. Включение на сервере флага
Other, демонстрация поведения клиента, анализ транзакции, опция lifetime. Вы-
ключение Other, включение Managed. Демонстрация поведения клиента из ios
в данной ситуации.
Работа dhcpv6 через маршрутизаторы, сообщения типа Relay-Forward и Relay-
Reply, формат пакетов, анализ коммуникаций. Как сервер понимает, из какого
пула выдавать адреса.
Демонстрация Relay Agent в dhcpv6. Настройка сервера, настройка релейного
агента, анализ трафика до и после релейного агента.
Программа курса «Маршрутизация в IP сетях, расширенный»
Для групп полустационара. Версия 7.0.0 стр. 24 из 59
Урок 4
Протокол DNS
Напоминаем, как происходит обращение к сетевым ресурсам, напоминаем, что
типично пользователь должен указать ip адрес узла, с которым начинает взаи-
модействие (напоминаем, что номера портов запоминать не нужно), отмечаем,
что пользователям неудобно запоминать ipv4 адреса, и совершенно невозможно
запоминать ipv6 адреса, вместо этого пользователям следует запоминать некие
удобные символьные имена. Первый подход к использованию имен – файл hosts.
Способ заполнения этого файла на заре развития ip сетей, способ распространения
этого файла. Подробная критика данного подхода: поддержка файла, сложности
с распространением файла, нагрузка на сервера. Способы применения файла hosts
сегодня, включая злоумышленное ПО.
Обсудить, какие качествами должно обладать актуальное решение: вся база
имен не должна копироваться на рабочие станции, необходимость хранения базы
на специальных серверах, которые с помощью специального протокола смогут
передавать ответы на конкретные запросы клиентам. Невозможность хранения
одной централизованной базы данных, необходимость использования распреде-
ленной базы данных, т. е. подход, при котором различные части базы данных хра-
нятся и поддерживаются на различных серверах. Невозможность использования
плоских имен, особо отметить, что поиск в распределенной базе данных, у которой
данные не структурированы не возможно, использование структурированных,
иерархических имен. Привести пример поиска файла по относительному имени
на диске с помощью перебора всех файлов и поиска файла по полному имени.
Система имен, принятая в DNS. Для примера рассматриваем именование фай-
лов в файловой системе. Относительное имя файла как удобный идентификатор
файла при работе, подчеркнуть, что данное имя не уникально на диске и не позво-
ляет его найти. Папки как контейнеры для хранения файлов, полное имя файла:
Программа курса «Маршрутизация в IP сетях, расширенный»
Для групп полустационара. Версия 7.0.0 стр. 25 из 59
Обратное разрешение ipv6 адресов в доменные имена. Поясняем, как это ра-
ботает, показываем, как формируется имя в домене ip6.arpa, подчеркиваем, как
формируются имена в случае сокращенной записи ipv6 адреса.
Демонстрация обратного разрешения имен в ipv6, анализ обмена в анализа-
торе протоколов.
Лабораторная работа на разрешение адресов ipv4/ipv6 в имена. Студенты долж-
ны разрешить предложенные адреса в имена, используя сперва кеширующий
сервер, а затем самостоятельно, начиная с корневого сервера и проанализировать
трафик.
Динамический dns. Обсудить, почему создание файла зоны только вручную
сильно ограничивает применение dns, важность автоматического обновления зон,
например, при использовании dhcp сервера или автоконфигурирования для на-
стройки узлов. Возможность простого автоматического обновления зоны в случае,
когда сервисы dns и dhcp реализованы в одном программном обеспечении, немас-
штабируемость такого подхода. Расширение dns для динамического обновления
зон, новое значение кода операции в заголовке dns. Заголовок dns для пакетов типа
update, новое значение полей: отказ от флагов, новый смысл значений RCODE (пока
значения не рассказываем, пока студенты не знают коммуникаций, они не могут
понять смысла ошибок). Новые секции в заголовке вместо секций, применяемых
в пакетах обычных запросов: секция зон, секция предварительных требований,
секция обновлений, секция дополнительных сведений.
Обсуждаем, что автоматическое обновление зоны могут делать как сервера,
на основании имеющихся у него данных, так и клиент. Важно обсудить необхо-
димость секции предварительных требований, приведя пример, в котором в зоне
уже есть соответствующая запись типа а или PTR из-за предыдущего обновления.
Подводим студентов к мысли от том, что динамический dns должен иметь возмож-
ность делать предварительные проверки перед тем, как обновлять зону, а также
не только добавлять записи в зону, но и удалять записи из зоны.
Формат записей в секции зон. Формат записей в секции предварительных
требований. Отсутствие прямой возможности указать, какой тип проверки нужно
выполнить, специальное использование полей CLASS/TYPE для указания ТИПА
(одного из пяти) предварительного требования. Понятие RRSet. Формат всех пяти
типов предварительных требований, соответствующие значения полей CLASS/
TYPE. RCODE, используемые в ddns.
Формат секции обновлений. Необходимость выполнять обновления различ-
ных типов (например, создание записи/удаление записи), отсутствие прямой
возможности указать, какой тип обновления выполняется, специальное исполь-
зование полей CLASS/TYPE для указания ТИПА (одного из четырех) обновления.
Один способ добавить запись и три способа удалить запись/записи. Формат всех
четырех типов обновлений, соответствующие значения полей CLASS/TYPE. Типо-
вые сценарии коммуникаций между dhcp сервером или клиентом и dns сервером.
Программа курса «Маршрутизация в IP сетях, расширенный»
Для групп полустационара. Версия 7.0.0 стр. 30 из 59
Урок 5
Введение в динамическую маршрутизацию
Перед тем, как продолжить, необходимо создать студентам классы по CCNA2/3/4
и пояснить, что мы будем сперва изучать маршрутизацию, а затем коммутацию,
в то время как в материалах академии эти темы изучаются вперемешку. Поэтому
сперва мы в этом курсе изучим ряд глав CCNA2 и CCNA3, посвященных марш-
рутизации, а затем в следующем курсе изучим остальные главы этих же курсов,
посвященных коммутации. Также необходимо задать студентам сдачу ряда мо-
дульных экзаменов по тем темам, которые уже изучены, а именно: CCNA2, модули
4, 9, 10, 11.
Обзор недостатков статической маршрутизации, отсутствие реакции системы
на выход из строя линий связи, а также на изменение используемой топологии
связей. Задача об автоматическом построении оптимальных таблиц маршрутиза-
ции в рамках текущей топологии связей. Две основных причины использования
динамической маршрутизации: уменьшение ручного труда при конфигурировании
(и, заодно, уменьшение вероятности ошибки) и создание сети, которая сама могла
бы найти новые маршруты при выходе из строя некоторых связей или появлении
новых связей.
Общая идея, лежащая в основе динамической маршрутизации: все маршру-
тизаторы составной сети должны иметь маршруты во все сети составной сети,
однако изначально, если статические маршруты не настроены, каждый маршрут
в отдельности есть в таблице маршрутизации НЕКОТОРЫХ маршрутизаторов,
тех, к кому напрямую подключена соответствующая сеть. Таким образом вся со-
вокупность маршрутизаторов «в целом» знает маршруты во все сети, необходимо
сделать так, чтобы КАЖДЫЙ маршрутизатор составной сети знал маршруты
в КАЖДУЮ сеть, для этого маршрутизаторы составной сети должны обменяться
имеющейся у них информацией таким образом, чтобы прейти от состояния «для
каждой сети существуют один или несколько маршрутизаторов, которые знают
маршрут к этой сети» к состоянию «для каждой сети справедливо утверждение,
что каждый маршрутизатор составной сети имеет к ней маршрут». Протоколы
динамической маршрутизации как средство обмена данными о маршрутах или
о топологиях связей между маршрутизаторами с целью автоматизации постро-
ения маршрутных таблиц. Типичный способ достижения цели (про bgp сейчас
не говорим): каждый маршрутизатор имеет ограниченное количество соседей
в одной канальной сети с ним и может обмениваться с ними данными, после чего
информация каскадно распространяется по составной сети.
Невозможность организации обмена данными между всеми маршрутизато-
рами составной сети с целью построения маршрутных таблиц. Структурирова-
ние составной сети с точки зрения организации динамической маршрутизации.
Структура сложной составной сети. Понятие об автономных системах AS. Марш-
Программа курса «Маршрутизация в IP сетях, расширенный»
Для групп полустационара. Версия 7.0.0 стр. 32 из 59
полную топологию связей в сети, после чего, зная топологию, могут самостоятель-
но рассчитать все необходимые маршруты. Ввести понятие о дистанционно-век-
торных алгоритмах (первого типа, DVA) и алгоритмах состояния связей (второго
типа, LSA). Важно особо обратить внимание студентов, что термин LSA означает
обмен сведениями о топологии! (Часто студенты ошибочно полагают, что термин
Link State означает, что маршрутизаторы время от времени проверяют состояния
связей с соседями, т. е. этот термин относится к тому, как маршрутизаторы обме-
ниваются информацией (см. выше), а не к тому, чем они обмениваются).
Понятие метрики, роль метрики в работе протоколов динамической марш-
рутизации. Различные типы метрики: простое количество переходов, учет про-
пускной способности линий связи, учет задержки в линиях связи, учет других
параметров). Возможность балансирования нагрузки между равными или близ-
кими по метрике маршрутами.
Принципы работы дистанционно-векторных алгоритмов (без привязки к ка-
кому бы то ни было протоколу маршрутизации). Начальные таблицы маршрути-
зации, содержащий сведения только о подключенных сетях. Рассылка векторов
расстояний, обновление маршрутных таблиц. Понятие метрики, роль метрики
в выборе маршрута. Проблемы дистанционно-векторных алгоритмов, связанные
с потенциальным образованием маршрутных петель. Образование маршрутных
петель между соседними маршрутизаторами, расщепление горизонта и poison
reverse как средство борьбы с маршрутными петлями, образующимися между со-
седними маршрутизаторами. Маршрутные петли между удаленными маршрутиза-
торами, триггерные обновления, почему триггерные обновления не гарантируют
отсутствие петель. Концепция замораживания изменений, преимущества (защита
от петель при использовании с указанными выше решениями) и недостатки (за-
медленная реакция сети на изменения). Примеры дистанционно-векторных про-
токолов, которые будут изучаться в дальнейшем (RIP, EIGRP), классификация про-
токолов по способу обмена информацией (постоянные рассылки или hello обмен).
Принцип работы алгоритма состояния связей (без привязки к конкретному
протоколу). Чем обмениваются маршрутизаторы, какой информацией о сети об-
ладают маршрутизаторы после окончания обмена данными о топологии. Сравнить
топологическую базу, которой обладает маршрутизатор с изображенной на листе
бумаги топологией, которой обладает администратор. Принцип нахождения оп-
тимальных маршрутов с помощью алгоритма Дейкстра, независимое нахождение
всех маршрутов каждым маршрутизатором в отдельности. Важно подчеркнуть,
что алгоритм не ищет кратчайший маршрут в наперед заданную сеть, вместо этого
алгоритм последовательно перебирает все маршруты, которые могут начинать-
ся от маршрутизатора, на котором он запущен, и смотрит, куда приводят такие
маршруты, последовательно находя все возможные маршруты, среди которых
найдется кратчайший маршрут в каждую сеть. Преимущества протоколов на базе
алгоритма состояния связей: наиболее точные и актуальные маршруты, невозмож-
Программа курса «Маршрутизация в IP сетях, расширенный»
Для групп полустационара. Версия 7.0.0 стр. 34 из 59
Урок 6
Протокол маршрутизации EIGRP
Анализ ключевых недостатков протокола RIP:
• большой объем передаваемой по сети маршрутной информации;
• опасность возникновения маршрутных петель;
• невозможность быстро найти альтернативный маршрут в случае недоступ-
ности маршрута в некую сеть.
EIGRP как способ устранения перечисленных недостатков простыми и вполне
эффективными средствами. Классификация протокола EIGRP по описанным ранее
признакам: обмен апдейтами с подтверждением, с последующим обменом только
короткими hello пакетами, передача только измененной информации в случае из-
менения в таблицах маршрутизации. Обмен векторами расстояний, но не обмен
полной топологической информацией. Обобщая классификацию, сперва описыва-
ем простую модель работы EIGRP (скорее это будет похоже на IGRP): почти тот же
общий принцип, что и у RIP, т. е. обмен маршрутами из маршрутной таблицы с их
метрикой, но вместо постоянного обмена полными векторами расстояний, обмен
Программа курса «Маршрутизация в IP сетях, расширенный»
Для групп полустационара. Версия 7.0.0 стр. 42 из 59
этого есть один TLV, который переносит информацию о префиксе, включая и ин-
формацию о том, к какому протоколу она относится. Показываем, как кодируется
wide метрика, что передается в полях Delay (обращаем внимание, как передается
с помощью этого поля недоступность сети) и Bandwidth, оговариваем возможность
передавать дополнительные атрибуты, но детально об этом не рассказываем. По-
казываем, как кодируется сеть назначения, после чего показываем общий формат
TLV 0602, обращаем внимание на поле AFI, с помощью которого указывается
протокол третьего уровня, чей маршрут переносится в TLV, еще раз подчеркива-
ем, что в TLV версии 2.0 есть только один TLV (0602) для передачи как ipv4, так
и ipv6 префикса. Поведение систем, у которых есть соседи, поддерживающие TLV
1.2 и соседи, поддерживающие TLV 2.0, отправка сведений о префиксах дважды.
Демонстрация инициализирующего обмена маршрутами после установки
отношений смежности между маршрутизаторами в ipv4/ipv6. Особо отмечаем
использование флага Init и NULL Update, подтверждения с помощью hello. Де-
монстрируем подробно TLV, переносящие ipv4/ipv6 маршруты, как версии 1.2, так
и версии 2.0 (для версии 1.2 необходимо использовать старый ios). Демонстрация
передачи сведений о новом маршруте между маршрутизаторами, которые уже име-
ют отношения смежности, квитирование. Демонстрируем переход с мультикаст на
юникаст для отдельного маршрутизатора, который не присылает подтверждения
(его нужно предварительно отключить его от сети, а затем включить). Изменение
метрики маршрутов, команды delay и bandwidth, демонстрация передачи обнов-
ленных метрик. Просмотр и анализ топологической таблицы EIGRP.
Рассматриваем детальнее процедуру поиска маршрута в том случае, если
successor не доступен и для маршрута нет feasible succesor. Переход маршрута в со-
стояние Active, отправка Query мультикастом через все интерфейсы, задейство-
ванные в eigrp процессе. TLV, включаемые в Query, флаг Active в блоке с метрикой
в TLV. Особо отметить, что маршрутизатор не отправляет Update с указанием
недостижимой метрики при утрате маршрута в сеть (как это делает RIP), вместо
этого ту же самую информацию он передает соседям с помощью Query, это значит,
что даже источник маршрута, у которого отказал интерфейс в соответствующую
сеть тоже должен отправлять Query так, как описано. Поведение маршрутизатора,
получившего Query в случае, когда у него есть маршрут – отправка Reply с марш-
рутом, TLV, включаемые в пакет Reply. Поведение маршрутизатора, получившего
Query в случае, когда у него нет маршрута – перевод маршрута в состояние Active,
отправка собственных Query всем своим соседям. Каскадное распространение
Query по сети, нахождение маршрута в том случае, если это возможно, переход
сети в состояние Active на всех маршрутизаторах сети, распространение Reply
с информацией о недоступности сети если маршрут не может быть найден. Особое
внимание следует уделить тому, что Reply не может быть послан маршрутизатором
до тех пор, пока он не получил Reply в ответ на свой Query от всех своих соседей.
Гарантии доставки при отправке Query/Reply. Мультикаст для передачи Query,
Программа курса «Маршрутизация в IP сетях, расширенный»
Для групп полустационара. Версия 7.0.0 стр. 47 из 59
Урок 7
Протокол маршрутизации OSPF
Детальное описание данного модуля будет в обновленной версии программы.
Урок 8
Основы VPN
Детальное описание данного модуля будет в обновленной версии программы.
Урок 9
Протокол маршрутизации BGP
Повторение концепции автономной системы, внутренних и внешних протоколов
маршрутизации. Обсуждение, почему может одновременно применяться несколь-
ко различных igp, но только один внешний протокол, роль bgpv4 в современном
Интернете. Роль bgp для обмена маршрутной информацией в Интернет. Важно
подчеркнуть, что использование bgp ограничено только маршрутизацией с дру-
гими автономными системами, совместное использование igp и bgp.
Классификация bgp с точки зрения способа достоверного обмена данными.
Использование tcp для установки надежного соединения между пирами, отсут-
ствие необходимости подтверждать полученные данные (это делает tcp). Обмен
keepalive сообщениями (аналог hello), пояснить, что tcp хорошо работает, только
когда происходит постоянный обмен данными, если же оба участника соединения
молчат, но контроль наличия соединения в tcp реализован весьма слабо, следова-
тельно механизм, аналогичный hello все равно необходим. Отсутствие автомати-
ческого обнаружения соседей, все смежности исключительно явно настроенные.
Классификация bgp с точки зрения способа обмена маршрутной информацией.
Остановиться на том, почему протокол, работающий между огромным числом
слабо связанных автономных систем не может опираться на построение полных
топологий (полных топологий чего?), подчеркнуть, что bgp является дистанцион-
но-векторным протоколом. Однако необходимо тут же обратить внимание студен-
тов на особенности, отличающие bgp от классических дистанционно-векторных
протоколов: в таких протоколах (rip, например), задача протокола маршрутизации
состоит в том, чтобы найти наилучший маршрут с точки зрения одного единствен-
но параметра – метрики, она может плохая, как в rip, или хорошая как в eigrp,
но лучший маршрут в таких протоколах это маршрут с минимальной метрикой.
Подчеркнуть, что отличие bgp в том, что в маршрутизации между автономными
системами большое внимание уделено административному влиянию на выбор
маршрутов, иными словами очень часто вместо автоматического поиска лучшего
маршрута важно предоставить администратору системы инструменты для управ-
ления выбором лучшего маршрута на основании многих факторов. Подчеркнуть,
что каждый маршрут вместо одной метрики снабжается целым рядом атрибутов,
которые могут приниматься во внимание при выборе лучшего маршрут, отметить,
что мы будем изучать целый ряд атрибутов, которые характеризуют маршрут
и могут приниматься во внимание при выборе лучшего маршрута.
Важно обратить внимание студентов на то, что bgp, как и любой другой дис-
танционно-векторный протокол сталкивается с проблемой маршрутных петель.
Не вдаваясь на данном этапе в отличия ebgp и ibgp, следует рассказать о том, как
обеспечивается защита от петель при обмене маршрутами между автономными
системами. Поясняем, что каждой автономной системе присваивается номер AS
Программа курса «Маршрутизация в IP сетях, расширенный»
Для групп полустационара. Версия 7.0.0 стр. 50 из 59
ebgp при передаче маршрута по ibgp. Важно пояснить на примере причины такого
поведения в ibgp, отметить, что такое поведение ibgp можно отменить (next-hop-
self). Важные выводы из описанного поведения: внешние интерфейсы граничных
маршрутизаторов необходимо включать в процесс igp (например, как пассивные
интерфейсы) и маршрут, найденный с помощью bgp может потребовать допол-
нительного lookup в таблице маршрутизации, преимущества cef, позволяющие
сделать этот lookup заранее. Сравнение записей в таблице маршрутизации и cef
таблице о маршруте за пределы AS на внутреннем маршрутизаторе. Пример на-
стройки транзитной автономной системы с внутренними маршрутизаторами,
анализ обмена маршрутами.
Роль igp и bgp внутри автономной системы, маршруты, обслуживаемые про-
токолами. Передача по bgp только внешних маршрутов, обслуживание магистрали
с помощью igp, обеспечение доступности внутренних маршрутизаторов для ibgp
пиринга, обеспечение доступности next-hop для bgp. Что происходит, если неко-
торые маршруты обрабатываются и igp и bgp, административные дистанции bgp.
Альтернативное конфигурирование транзитной автономной системы: реди-
стрибьюция из bgp в igp, ограничения такого подхода, связанные с большим ко-
личеством маршрутов. Понятие о синхронизации bgp, поведение маршрутизато-
ра с синхронизацией/без синхронизации, отличия. Преимущества и недостатки
синхронизации, включение/выключение синхронизации. Области применения
редистрибьюции внешних маршрутов в igp.
Атрибуты bgp. Классификация атрибутов well known (mandatory, discretionary)
и optional (transitive, non transitive).
Well Known mandatory атрибуты. Атрибут AS-Path. Как генерируется AS-Path
в новом маршруте, как заполняется AS-Path при продвижении маршрута между
автономными системами. Роль AS-Path как инструмента защиты от петель в ebgp,
роль AS-Path как инструмента выбора лучшего маршрута (с более коротким AS-
Path) в том случае, если другие, более важные атрибуты не привели к выбору
лучшего маршрута. Подчеркнуть, что для «удаленных» сетей, для которых адми-
нистративное влияние администратора не применяется, AS-Path является атрибу-
том, который часто приводит к выбору того или иного маршрута в качестве наи-
лучшего. Фильтрация входящих маршрутов с помощью route-map на основании
AS-Path, регулярные выражения для анализа строки AS-Path, пример. Концепция
AS-Path Prepandig как инструмент управления входящим трафиком, выполнение
prepanding с помощью route-map. Атрибут Next-Hop, значение атрибута в ebgp/
ibgp, заполнение атрибута при генерации маршрута внутри AS. Манипуляции
Next-Hop, next-hop-self. Атрибут Origin, возможные значения. Использование
атрибута Origin как критерия для выбора лучшего маршрута.
Атрибут weight, подчеркиваем, что он локальный и проприетарный, в пакетах
не передается. Приводим примеры применения атрибута weight для выбора луч-
шего маршрута, подчеркиваем, что данный атрибут является первым критерием
Программа курса «Маршрутизация в IP сетях, расширенный»
Для групп полустационара. Версия 7.0.0 стр. 53 из 59
Урок 10
Оптимизация маршрутизации
До сих пор мы много говорили о том, как строятся маршрутные таблицы, и отно-
сительно мало говорили о том, как происходит обработка пакетов при маршрути-
зации, по сути мы ограничились описанием двухуровневой иерархии маршрутов
(сети/суперсети/дефолт и подсети) и говорили только о программной маршрути-
зации. Теперь рассматриваем эти вопросы более детально. Разделение функций
построения маршрутных таблиц (всегда программно) и продвижения пакетов
(программно или аппаратно), вводим понятия control plane и data plane, функции.
Три механизма продвижения пакетов в маршрутизаторах. Process switching, про-
граммная обработка каждого пакета, поступившего на маршрутизатор, этапы
обработки пакета: поиск строки в таблице маршрутизации, поиск выходного ин-
терфейса, поиск адреса канального уровня, формирование заголовка канального
уровня, анализ такого подхода, недостатки. Оптимизация продвижения пакетов,
fast switching. Обработка первого пакета потока с помощью process switching, со-
хранение результатов в fast-switching cache, включая заголовок канального уровня
для продвижения пакетов, последующая аппаратная маршрутизация без участия
центрального процесса с помощью fast-switching cache, преимущества по сравне-
нию с process switching. Cisco Express Forwarding (CEF), предварительное создание
FIB в специальной памяти и аппаратное продвижение всех пакетов без участия
центрального процессора. Глобальное включение cef, отключение/включение cef
на интерфейсах, просмотр fib и adjacency table, структура записей в таблицах.
Использование нескольких проколов маршрутизации в иерархической сети.
Причины использования нескольких протоколов маршрутизации в сети, понятие
о редистрибьюции маршрутов между различными протоколами маршрутизации.
Напомнить, что маршруты включаются в протокол маршрутизации с помощью
команды network или активации протокола маршрутизации на интерфейсе, ре-
дистрибьюция как еще один инструмент включения маршрута в протокол марш-
рутизации. Особо подчеркнуть, что в процессе редистрибьюции не происходит
взаимодействия между процессами, реализующими протоколы маршрутизации,
вместо этого протокол, который хочет включить в свою работу маршруты, доступ-
ные с помощью другого протокола, берет соответствующие маршруты из таблицы
маршрутизации, иными словами редистрибьюция всегда pull (тянет), и никогда
push (толкает). Простой пример: маршрутизатор с двумя интерфейсами, с одной
стороны ospf, с другой eigrp, редистрибьюция между протоколами маршрутизации
для обеспечения всех маршрутизаторов сети всеми маршрутами. Особо подчер-
кнуть, что редистрибьюция всегда однонаправленная, любая двунаправленная
редистрибьюция – сумма двух однонаправленных. Усложняем пример, пусть из
каждого домена маршрутизации поступают сведения об одном и то же маршруте,
как выбрать оптимальный маршрут? Подчеркнуть, что граничный маршрутизатор,
Программа курса «Маршрутизация в IP сетях, расширенный»
Для групп полустационара. Версия 7.0.0 стр. 55 из 59
Экзамен