Page tree
Skip to end of metadata
Go to start of metadata

Успешно сдайте бесплатный сертификационный экзамен в Академии "Инфинет" и получите статус сертифицированного инженера Инфинет.

Пройти сертификационный экзамен

Содержание

Термины

  • ABR - маршрутизатор, находящийся на границе областей OSPF.
  • ASBR - маршрутизатор, находящийся на границе автономной системы и имеющий подключение к внешним сетям.
  • DR - назначенный маршрутизатор.
  • BDR - резервный назначенный маршрутизатор.
  • LSA - анонс о состоянии каналов связи.
  • LSDB - база данных анонсов о состоянии каналов связи.
  • DBD - краткое описание LSDB.
  • LSR - запрос на анонс о состоянии каналов связи.
  • LSU - обновление состояния каналов связи, ответ на LSR.
  • LSAck - подтверждение о получении LSU.

Протокол OSPF

OSPF (Open Short Path First - открытый протокол выбора кратчайшего пути) - протокол динамической маршрутизации, базирующийся на алгоритме построения дерева кратчайших путей. Протокол OSPF обладает следующими характеристиками:

  • Протокол OSPF разработан сообществом IETF в 1988 году. Поскольку протокол является открытым, то он может использоваться в гетерогенных сетях, построенных с использованием оборудования разных производителей.
  • На текущий момент актуальны две версии протокола OSPF: версия 2 для IPv4-сетей, описанная в RFC 2328, и версия 3 для IPv6-сетей, описанная в RFC 2740. Устройства Инфинет поддерживают работу протокола IPv4, поэтому далее в статье будет рассматриваться OSPF версии 2.
  • OSPF - протокол динамической маршрутизации, который относят к протоколам состояния канала связи.
  • OSPF является внутренним протоколом маршрутизации, т.е. используется для обмена маршрутной информации внутри автономной системы (АС).
  • Служебные сообщения протокола OSPF инкапсулируются в IP-пакеты. Поле "Протокол верхнего уровня" устанавливается равным 89.
  • За протоколом OSPF зарезервированы два адреса группового вещания 224.0.0.5 и 224.0.0.6. Их назначение описано ниже (см. этапы установки отношений соседства и алгоритм выбора DR и BDR).
  • Значение Distance в таблице маршрутизации для протокола OSPF равно 110.

Области OSPF

Число маршрутизаторов автономной системы, использующих протокол OSPF для обмена маршрутной информацией может быть велико. Следствием этого является высокая загрузка каналов связи из-за большого объёма служебных сообщений OSPF. Для снижения объёма передаваемой служебной информации, в протоколе OSPF предусмотрено деление автономной системы на области (аrea).

Каждая из областей имеет 32-битный идентификатор, который принято записывать в двух форматах:

  • формат четырёх октетов: используется в конфигурации устройств. Так, например области 0 и 2 (рис. 1а) в конфигурации устройств будут записаны как 0.0.0.0 и 0.0.0.2 соответственно;
  • формат числа: используется на схемах (рис. 1а-б) для того, чтобы упростить понимание и проще запоминать.

Не обязательно использовать последовательные идентификаторы для областей. Так, например, сеть может включать в себя области с идентификаторами 0,2 и 7 (рис. 1а).

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

За областью с идентификатором 0.0.0.0 зарезервирована специальная роль - такую область называют магистральной. Наличие магистральной области является обязательным условием для работы протокола OSPF. Каждая из областей должна быть непосредственно подключена к магистральной области, т.е. схема, в которой одна из областей подключена к другой, не имея соединения с магистральной, запрещена (рис. 1б).

Рисунок 1а - Разрешённая схема сети с использованием нескольких областей OSPF

Рисунок 1б - Запрещённая схема сети с использованием нескольких областей OSPF

Типы маршрутизаторов

В зависимости от места маршрутизатора в схеме сети выделяют следующие типы устройств (рис. 2):

  • Внутренний маршрутизатор (IR - internal router): маршрутизатор, все интерфейсы которого ассоциированы с одной областью. Маршрутизаторы R2 и R4 являются внутренними.
  • Магистральный маршрутизатор (BR - backbone router): маршрутизатор, обладающий интерфейсом, подключенным к магистральной области. Маршрутизаторы R1, R2 и R3 являются магистральными.
  • Пограничный маршрутизатор области (ABR - area border router): маршрутизатор, интерфейсы которого ассоциированы с разными областями OSPF. Маршрутизатор R3 является ABR, т.к. находится на стыке областей 0 и 2.
  • Пограничный маршрутизатор автономной системы (ASBR - autonomous system border router): маршрутизатор, имеющий подключение к внешней сети. Маршрутизатор R1 является ASBR, т.к. имеет подключение к сети LAN, которая находится под управлением сторонних лиц.

Рисунок 2 - Схема сети с маршрутизаторами различных типов

Алгоритм работы OSPF

Рассмотрим этапы работы протокола OSPF. Некоторые из этапов потребуют подробного объяснения - оно приведено в соответствующих разделах ниже.

  • Этап 1: Запуск протокола OSPF. Устройство определяет список интерфейсов, которые будут участвовать в работе протокола OSPF, и идентификаторы областей, к которым эти интерфейсы подключены.
  • Этап 2: Установка отношений соседства. Через список интерфейсов, определённых на этапе 1, предпринимается попытка найти другие маршрутизаторы и установить с ними соседские отношения.
  • Этап 3: Распределение ролей. Для снижения объёма служебных сообщений в широковещательных сегментах сети выбирается назначенный маршрутизатор (DR), являющийся центральной точкой обмена обмена маршрутной информацией в сегменте.
  • Этап 4: Синхронизация базы данных о состоянии каналов связи (LSDB). В соответствии с протоколом OSPF каждый из маршрутизаторов должен обладать одинаковым набором маршрутной информации, что требует синхронизации базы данных о состоянии каналов связи.
  • Этап 5: Построение дерева кратчайших связей (SPT). К маршрутной информации, полученной на этапе 4, применяется алгоритм Дейкстры, позволяющий получить дерево кратчайших связей. Корнем этого дерева является устройство, запустившее алгоритм, а ветками - известные сети назначения, информация о которых получена от других маршрутизаторов. Таким образом, каждое из устройств обладает набором путей к каждой из сетей, оптимизированных по критерию метрики.
  • Этап 6: Экспорт маршрутов в FIB. Набор маршрутов, полученный на этапе 5 хранится в RIB, поэтому устройство проводит дополнительную оптимизацию, сравнивая значения Distance для маршрутной информации, полученной из разных источников. Лучшие маршруты, полученные в ходе сравнения, помещаются в FIB и используются для передачи пользовательских и служебных данных.
  • Этап 7: Непрерывный контроль за состоянием сети. Протоколы динамической маршрутизации выполняют постоянный контроль за состоянием каналов связи, т.к. таблица маршрутизации всех устройств должна поддерживаться в актуальном состоянии.
Запуск протокола OSPF

Начало работы службы OSPF сопровождается двумя процессами: выбором идентификатора маршрутизатора (router-id) и определением списка интерфейсов, участвующих в работе OSPF.

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

При автоматическом выборе идентификатора, устройство Инфинет генерирует специальный адрес из подсети группового вещания 224.*.*.*, связанный с серийным номером маршрутизатора. Это позволяет избежать переопределения идентификатора при удалении IP-адреса или сетевого интерфейса.

Набор интерфейсов, участвующих в работе протокола OSPF, определяется в соответствии со следующей логикой:

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

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

Рассмотрим примеры выполнения различных команд при запуске службы OSPF на маршрутизаторе R1 (рис. 3). В таблице ниже представлены примеры команд и соответствие интерфейсов маршрутизатора данной команде: в случае соответствия на интерфейсе будет выполнен поиск соседей, а в случае несоответствия - нет.

КомандаСоответствие eth1Соответствие eth2Комментарий
network 0.0.0.0/0 area 0дада

Сеть 0.0.0.0/0 включает в себя все IP-адреса, поэтому сети, ассоциированные с интерфейсами eth1 и eth2, входят в этот диапазон.

Такая конфигурация обладает скрытым поведением: если в конфигурации устройства появится новый IP-адрес, то на интерфейсе, ассоциированным с ним, будет запущен протокол OSPF. Это происходит потому что сеть 0.0.0.0/0 включает в себя все сети.

network 10.10.30.0/24 area 0

network 192.168.6.0/28 area 1

дадаВ команде явно указаны сети, ассоциированные с интерфейсами erh1 и eth2, поэтому протокол OSPF будет использовать оба этих интерфейса.

network 10.10.30.0/25 area 0

network 192.168.6.0/28 area 1

нетда

Несмотря на то, что IP-адрес маршрутизатора R1 принадлежит сети 10.10.30.0/25, протокол OSPF на этом интерфейсе запущен не будет. Это происходит потому что сеть, ассоциированная с интерфейсом eth1, содержит адреса в диапазоне 10.10.30.0-255, что не удовлетворяет команде 10.10.30.0/25 (10.10.30.0-127).

Протокол OSPF будет запущен на интерфейсе eth2.




Рисунок 3 - Схема маршрутизатора с двумя сетевыми интерфейсами

Пассивные интерфейсы

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

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

Внешние маршруты

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

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

Установка отношений соседства

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

  • адрес и маска сети на интерфейсе в сторону потенциального соседа;
  • значение MTU на интерфейсах в сторону потенциального соседа;
  • идентификатор области и тип области;
  • параметры аутентификации;
  • интервал отправки сообщений Hello и интервал Router dead (см. этап 1 установки отношений соседства).

Установка отношений соседства происходит в несколько этапов. Рассмотрим их на примере сети (рис. 4а): сеть состоит из трёх маршрутизаторов R1, R2 и R3, подключенных к коммутатору, между маршрутизаторами установлены отношения соседства, причём маршрутизатор R2 выбран назначенным маршрутизатором (DR), а R3 - резервным назначенным маршрутизатором (BDR). В схему сети будет добавлен маршрутизатор R4, причём будем считать, что выполняются условия для установления отношений соседства.

  • Этап 1: маршрутизатор R4 выполняет рассылку сообщений Hello на групповой адрес 224.0.0.5 (рис. 4б). Этот адрес поддерживается всеми устройствами, на которых запущен протокол OSPF. Cообщения Hello рассылаются со всех интерфейсов, определённых на этапе запуска OSPF, с заданной периодичностью. По умолчанию используется интервал рассылки сообщений Hello равный 10 секунд. Cообщения Hello - индикатор соединения с соседом, поэтому, если от соседа не получены сообщения Hello на протяжении интервала Router dead, то устройство считается недоступным. По умолчанию интервал Router dead равен четырём интервалам рассылки сообщений Hello.
  • Этап 2: маршрутизаторы R1, R2 и R3, получив Hello от R4 добавляют его в список соседей со статусом Init (рис. 4б).
  • Этап 3: в соответствии с внутренними таймерами, маршрутизаторы R1, R2, R3 отправляют сообщения Hello маршрутизатору R4 (рис. 4в). Поскольку сообщения Hello содержат список соседей, то сообщения, отправленные для R4 содержат его идентификатор. Это значит, что маршрутизатор R4 может добавить в список соседей все маршрутизаторы сети со статусами 2-Way, пропустив статус Init. Далее R4 сформирует сообщения Hello для маршрутизаторов, где укажет маршрутизаторы R1 и R3 в качестве соседей, что позволит R1, R2 и R3 сменить статус для R4 с Init на 2-Way (рис. 4г).
  • Этап 4: в широковещательных сегментах (Ethernet, MINT, и т.д.) должны быть выбраны маршрутизаторы, назначенные основным (DR) и резервным (BDR). Остальным маршрутизаторам будут назначены роли DROther. Этот механизм нужен для того, чтобы снизить объём служебной информации: каждый из DROther будет выполнять обмен маршрутной информацией только с DR и BDR. Алгоритм выбора DR и BDR описан ниже. Следует иметь в виду, что роли закрепляются не за устройством, а за интерфейсом, поэтому маршрутизатор, у которого есть несколько интерфейсов в разных широковещательных сегментах, может быть DR в одном и DROther в другом.
    • Этап 4а: пусть R2 будет назначен DR, а R3 - BDR, как и было до подключения R4 к сети. Маршрутизаторам R1 и R4 назначены роли DROther, поэтому статус отношений между ними останется равным 2-Way.
  • Этап 5: пары маршрутизаторов R2-R4 и R3-R4 распределяют роли master и slave между собой, статус их отношений становится равным ExStart.
  • Этап 6: устройство с ролью master первым начинает обмен служебными сообщениями с кратким описанием базы данных маршрутов DBD. Во время обмена такими сообщениями статус отношений устанавливается равным Exchange.
  • Этап 7: устройства, получив краткое описание базы данных маршрутов от соседа, формируют запросы детальной информации о неизвестных им сетях. Такие сообщения называются LSR.
    • Этап 7а: ответом на LSR является LSU. LSU содержат подробную информацию о запрашиваемых маршрутах.
    • Этап 7б: получив LSU, устройство формирует подтверждение о получении информации. Такое сообщение называется LSAck, его использование является следствием отказа от использования протоколов гарантированной доставки, например TCP.
    • Этап 7г: совокупность всей маршрутной информации называется LSDB, а процесс обмена служебными сообщениями о LSDB сопровождается изменением статуса отношений на Loading.
  • Этап 8: после синхронизации LSDB на устройствах, отношения между маршрутизаторами R4-R2 и R4-R3 устанавливаются в статус Full (рис. 4д). Следует обратить внимание, что DR и BDR устанавливают отношения Full со всеми маршрутизаторами в сегменте.

Рисунок 4а - Добавление в схему сети маршрутизатора R4

Рисунок 4б - Рассылка сообщений Hello маршрутизатором R4

Рисунок 4в - Рассылка сообщений Hello маршрутизаторами R1, R2, R3

Рисунок 4г - Установление симметричных 2-Way отношений

Рисунок 4д - Установление Full-отношений маршрутизатором R4 с DR и BDR

Распределение ролей

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

  • Значение приоритета интерфейса: DR - маршрутизатор с наибольшим значением приоритета, BDR - маршрутизатор, следующий за DR по значению приоритета, DROther - остальные маршрутизаторы. Приоритет - свойства интерфейса маршрутизатора, подключенный к широковещательному сегменту. Приоритет принимает значение от 0 до 255 и определяется администратором сети вручную. По умолчанию приоритет равен 1, а, если значение приоритета интерфейса маршрутизатора установлено равным 0, то такой маршрутизатор не участвует в выборах DR и BDR.
  • Значение Router-id: DR - маршрутизатор с наибольшим значением Router-id, BDR - маршрутизатор, следующий за DR по значению Router-id, DROther - остальные маршрутизаторы. Значение Router-id является уникальным, поэтому сравнение идентификаторов маршрутизаторов используется при равенстве приоритетов, что гарантирует распределение ролей.

За устройствами DR и BDR закрепляется групповой адрес 224.0.0.6, используемый для синхронизации LSDB. Устройства с ролями DR и BDR устанавливают отношения Full с каждым из маршрутизаторов широковещательного сегмента, что предъявляет большие требования к производительности устройств по сравнению с DROther. Если аппаратная производительность устройств может стать "бутылочным горлышком", то необходимо учитывать это при планировании сети и использовать назначение приоритетов интерфейсов для предсказуемого выбора наиболее производительных устройств в качестве DR и BDR.

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

Синхронизация LSDB

Маршрутная информация в OSPF представлена в виде LSA разного типа. Совокупность LSA образует LSDB. Следует понимать, что LSA не является служебным сообщением протокола OSPF, поэтому для их передачи используются сообщения DBD, LSR, LSU, LSAck в соответствии с логикой, описанной на этапах 6-8 алгоритма установления отношений соседства.

Протокол OSPF версии 2, поддержка которого реализована в ОС WANFleX, определяет 7 типов LSA, представленных в таблице ниже. Для пояснения предназначения LSA различных типов будем использовать схему сети (рис. 5а): сеть состоит из 6 маршрутизаторов, образующих три области OSPF. При рассмотрении схемы абстрагируемся от этапов установления отношений соседства, сосредочившись на типах LSA, формируемых устройствами.

ТипНаименованиеОписаниеПример
1

LSA о маршрутизаторе

(Router LSA)

LSA данного типа распространяются всеми маршрутизаторами в пределах одной области.

LSA содежит следующую маршрутную информацию:

  • описание всех каналов связи маршрутизатора, относящихся к данной области;
  • стоимость каналов связи маршрутизатора;
  • список маршрутизаторов области, с которыми установлены отношения соседства.

LSA данного типа формируют все маршрутизаторы в сети (рис. 5б).

Обратим внимание на следующие особенности:

  • в LSA типа 1, рассылаемых в области 0, маршрутизатор R3 включит только информацию о сети 10.10.234.0/29, а в LSA типа 1, рассылаемых в области 36 - информацию о сети 192.168.36.0/24. Это поведение объясняется тем, что LSA типа 1 предназначен для обмена информацией внутри области;
  • маршрутизатор R5 не формируется LSA типа 1 с информацией о внешней сети 172.16.0.0/16;
  • LSA типа 1, сформированный маршрутизатором R4 будет получен маршрутизатором R2 и передан маршрутизатору R1 с увеличенным значением метрики. Таким образом, LSA типа 1 распространяются по всей области с приращением метрики, остальные параметры остаются неизменными.
2

LSA о сети

(Network LSA)

LSA данного типа распространяются DR в пределах одной области.

LSA содержит следующую маршрутную информацию:

  • адрес сети широковещательного сегмента;
  • маска сети широковещательного сегмента;
  • список маршрутизаторов, с которыми установлены отношения соседства.

LSA данного типа формируют только маршрутизаторы R1, R2, R3 и R4, т.к. им назначена роль DR (рис. 5в).

По аналогии с LSA типа 1, LSA типа 2 распространяются по всей области с приращением значения метрики.

3

Суммарный LSA

(Summary Network LSA)

LSA данного типа распространяются ABR и содержат маршрутную информацию о соседней области. Наличие LSA 1 и 2 типов позволяют маршрутизатору построить топологию области и рассчитать пути передачи данных. LSA типа 3 не являются источниками данных о топологии, они содержат только маршрутную информацию о соседних областях. Таким образом на стыке областей OSPF проявляет признаки дистанционно-векторного протокола.

ABR формирует один LSA типа 3 для каждой сети. Число сообщений может быть уменьшено за счёт настройки суммирования маршрутов.

LSA данного типа рассылаются маршрутизаторами R3 и R4, т.к. они являются ABR (рис. 5г).

Маршрутизатор R3 сформирует следующие LSA типа 3:

  • маршрут к сети 192.168.36.0/24 для области 0. Маршрутизатор R3 подключен к этой сети с помощью интерфейса eth1;
  • маршрут к сети 10.10.234.0/29 для области 36. Маршрутизатор R3 подключен к этой сети с помощью интерфейса eth0;
  • маршрут к сети 10.10.21.0/30 для области 36. Информация о сети взята из LSA типа 1 и 2, полученных от R1;
  • маршрут к сети 192.168.45.0/24 для области 36. Маршрут к этой сети получен через LSA типа 3 от маршрутизатора R4. Интересно, что при анонсе этой сети, маршрутизатор R3 подменяет источник LSA, устанавливая себя в качестве источника маршрута. Подмена источника является необходимым условием, т.к. маршрутизаторе области 36 не знают о местонахождении маршрутизатора R4.

Маршрутизатор R4 формирует LSA типа 3 по аналогии с R3.

4

Суммарный LSA ASBR

(ASBR Summary LSA)

LSA данного типа формируют ABR в дополнение к LSA типа 5.

LSA такого типа содержат информацию о местонахождении ASBR для соседней по отношению к ASBR области.

См. пример для LSA типа 5.
5

Внешний LSA

(External LSA)

LSA данного типа формируют ASBR для внешних маршрутов, в том числе маршрутов по-умолчанию. Такие сообщения распространяются через всю АС без изменений.

По аналогии с ABR, ASBR может выполнять суммирование внешних маршрутов, т.е. замену нескольких маршрутов одним. Это позволяет сократить таблицу маршрутизации и объём служебной информации при дальнейшем распространении этих маршрутов.

LSA типа 5 формируется маршрутизатором R5, т.к. это единственный ASBR в схеме сети (рис. 5д).

LSA типа 5, сформированный маршрутизатором R5 содержит информацию о сети 172.16.0.0/16 и распространяется через всю автономную систему без изменений. Таким образом, каждый из маршрутизаторов на схеме обладает данными о том, что сеть 172.16.0.0/16 является внешней и подключение к этой сети имеет маршрутизатор R5.

Скрытая проблема заключается в том, что маршрутизаторы R1, R2, R3 и R6 не знают местонахождения R5. LSA типа 1, в котором указан идентификатор R5, распространяется только внутри области 45.

Для решения этой проблемы, пограничные маршрутизаторы R4 и R3 дополнительно к передаваемому LSA типа 5 генерируют LSA типа 4. В LSA типа 4 маршрутизаторы сообщают о том, что весь трафик, адресованный R5 можно передать на ABR.

6

LSA членства в группе

(Group Membership LSA)

LSA такого типа используются в Multicast-сетях и содержат список групп, потребители которых есть в сегменте сети. В рамках данной статьи LSA такого типа рассматриваться не будут.

-
7

LSA типа 7

(Type 7 LSA)

LSA данного типа являются аналогом LSA типа 5, применяемых в NSSA областях. Использование LSA типа 7 является следствием соблюдения совместимости между областями типа Stub и NSSA. LSA типа 7 преобразовывается в LSA типа 5 маршрутизатором ABR при экспорте из NSSA области.Пример формирования LSA типа 7 представлен при описании NSSA областей.



Рисунок 5а - Схема сети для анализа типов LSA

Рисунок 5б - Рассылка LSA типа 1

Рисунок 5в - Рассылка LSA типа 2

Рисунок 5г - Рассылка LSA типа 3

Рисунок 5д - Рассылка LSA типов 4 и 5

Построение дерева кратчайших связей

После синхронизации LSDB каждый из маршрутизаторов выполняет расчёт дерева кратчайших путей с использованием алгоритма Дейкстры.

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

  • Intra-area маршруты: маршруты, распространяемые внутри одной области с использованием LSA типа 1 и 2.
  • Inter-area маршруты: маршруты, полученные из соседних областей с использованием LSA типа 3.
  • External маршруты типа 1: маршруты к внешним сетям, полученные от ASBR. Метрика маршрутов такого типа складывается из суммы метрик установленной ASBR при анонсировании и метрики пути до ASBR.
  • External маршруты типа 2: аналогичны External маршрутам типа 1, с другим методом вычисления метрики. Метрика равна значению, установленному ASBR при анонсировании и не учитывает метрику пути до ASBR.
  • Значение метрики маршрутов: для двух маршрутов к одной и той же сети, полученных от источников одного типа, сравнивается значение метрики. В RIB будет добавлен маршрут с меньшим значением метрики.

Типы областей

Одним из способов уменьшения объёма служебных сообщений протокола OSPF является использование областей разного типа. Протокол предусматривает следующие типы областей:

  • нормальная (Normal);
  • тупиковая область (Stub);
  • полностью тупиковая область (Totally Stub);
  • частично тупиковая область (NSSA);
  • полностью частично тупиковая область (Totally NSSA).

Основные свойства областей разного типа рассмотрим на примере следующей схемы (рис. 6): маршрутизаторы R1, R2, R3 и R4 последовательно соединены между собой, образуя три области OSPF. Маршрутизаторы R3 и R4 имеют внешние каналы связи. В каждом из последующих примеров будем менять тип области 4, анализируя типы LSA, связанные с этой областью. В рассматриваемых примерах будут опущены подробности LSA не связанных с областью 4 и LSA типа 1 и 2, т.к. они распространяются в пределах областей любого типа.

Рисунок 6 - Схема сети для рассмотрения типов областей

Normal

Области Normal не вносят изменений в логику распространения и обработки LSA, описанную выше (рис. 7а). Данный тип областей используется устройствами по умолчанию. Частным случаем области Normal является магистральная область.

Рисунок 7а - Распространение LSA в области Normal

Stub

Для области Stub характерны следующие особенности (рис. 7б):

  • Область Stub не может иметь внешних каналов связи. Как следствие, в области Stub запрещено распространение LSA типов 5 и 4.
  • Маршрутная информация о сетях области Stub распространяется в соседние области с использованием LSA типа 3.
  • LSA типа 3 о сетях в сторонних областях распространяются в области Stub по аналогии с областями Normal.
  • LSA типа 5 из сторонних областей при попадании в область Stub преобразовывается в LSA типа 3 с информацией о маршруте по умолчанию (Default).

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

Рисунок 7б - Распространение LSA в области Stub

Totally Stub

Область Totally Stub повторяет поведение области Stub с одним исключением: LSA типов 3 и 5 из соседних областей заменяются на один LSA типа 3 с маршрутом по умолчанию (рис. 7в).

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

Рисунок 7в - Распространение LSA в области Totally Stub

NSSA

Область NSSA обладает характеристиками области Stub с одним исключением: область NSSA может иметь внешний канал связи (рис. 7г). Поскольку для распространения маршрутной информации о внешних каналах связи используются LSA типа 5, запрещённые в областях Stub, то в NSSA для этого используется LSA типа 7. Этот тип LSA повторяет структуру LSA типа 5, но разрешён к распространению в NSSA областях. На стыке областей ABR преобразовывает LSA типа 7 в LSA типа 5, устанавливая себя в качестве источника. Поскольку источником указывается ABR, выполняющий преобразование LSA, то дополнительный LSA типа 4 создавать не нужно.

Как правило, применение области NSSA является следствием развития сети: подключение внешнего канала связи к области Stub требует изменение её типа на NSSA.

Рисунок 7г - Распространение LSA в области NSSA

Totally NSSA

Области Totally NSSA схожи по поведению с областями NSSA за исключением одной особенности: в область Totally NSSA экспортируется только один LSA типа 3 с маршрутом по умолчанию (рис. 7д).

Как правило, использование областей Totally NSSA является следствием развития сети: подключение внешнего канала связи к области типа Totally Stub требует изменения типа области на Totally NSSA.

Рисунок 7д - Распространение LSA в области Totally NSSA

Виртуальный канал связи

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

Виртуальный канал связи обладает следующими характеристиками (рис. 8):

  • Виртуальный канал связи является логическим соединением, настраиваемым на двух ABR, один из которых подключен к магистральной области. Маршрутизаторы R1 и R2 являются ABR, на которых создаётся виртуальный сетевой интерфейс, R2 подключен к магистральной области через интерфейс eth1.
  • Виртуальный канал связи является интерфейсом, с помощью которого маршрутизатор R2 подключен к области 4. Через виртуальный канал связи распространяются все типы LSA, как через обычный интерфейс.
  • Область, являющаяся общей для двух ABR, организующих виртуальный канал связи, называется транзитной. В рассматриваемом примере транзитной является область 7.
  • Транзитная область должна быть Normal. Организация виртуального канала связи через области Stub или NSSA невозможна.

Рисунок 8 - Схема с виртуальным каналом связи

Особенности протокола OSPF

Особенности протокола OSPF можно сформулировать следующим образом:

  • Открытая реализация: OSPF является открытым протоколом, поэтому может быть использован на оборудовании разных производителей.
  • Простота настройки: в мелких сетях протокол может быть запущен с помощью двух команд.
  • Гибкость конфигурации: широкий инструментарий протокола позволяет реализовывать множество сетевых схем.
  • Масштабируемость, отказоустойчивость, балансировка, оперативность: по аналогии с ODR, OSPF обладает преимуществами протоколов динамической маршрутизации.
  • Высокий порог вхождения: понимание терминологии и логики работы OSPF требует больших временных затрат.

Практика OSPF

Практические примеры по настройки OSPF представлены на дочерней странице документа: Настройка протокола OSPF.

Дополнительные материал

Вебинары

  1. Типовые сценарии настройки маршрутизации в устройствах Инфинет, часть 2.

Прочее

  1. Команда ifconfig (настройка интерфейсов)
  2. Команда ARDA
  3. Команда OSPF
  4. Команда arip
  5. Команда rip (модуль динамической маршрутизации)
  6. RFC 2328