14. OSPF. Манипуляции

Инъекция внешних маршрутов

  • OSPF позволяет распространять внешнюю маршрутную информацию

    • Статические маршруты

    • Динамические маршруты, полученные в другом протоколе маршрутизации

    • Подключенные префиксы на интерфейсах, не включенных в OSPF

  • Для распространения таких маршрутов используется LSA5

  • Типичные сценарии использования внешних маршрутов:

    • Маршрут по умолчанию

    • Пользовательские маршруты

Агрегация и фильтрация LSA3

  • Выпущенная однажды LSA в неизменном виде хранится в LSDB каждого роутера в пределах ее области распространения

    • Все роутеры в пределах региона из LSA1 точно знают все подключенные сети

    • За пределами региона роутеры получают только LSA3

  • ABR, генерирующий LSA3 (и только он), имеет возможность модифицировать маршрутную информацию

    • Выполнить агрегацию маршрутов

      • RFC 1583: метрика агрегатного маршрута - минимальная метрика его компонентов

      • RFC 2328: метрика агрегатного маршрута - максимальная метрика его компонентов

    • Выполнить фильтрацию маршрутов

  • Фильтрацию и агрегацию необходимо настраивать однотипно на всех ABR региона

Агрегация и фильтрация LSA5

  • Аналогично, выпущенная однажды LSA5 в неизменном виде хранится в LSDB каждого роутера в автономной системе

  • ASBR, генерирующий LSA5 (и только он), имеет возможность модифицировать маршрутную информацию

    • Выполнить агрегацию маршрутов

    • Выполнить фильтрацию маршрутов

  • Фильтрацию и агрегацию необходимо однотипно настраивать на всех ASBR в автономной системе

Регионы в OSPF

  • Изначально появилась в OSPF для уменьшения нагрузки на ЦП

    • Смена топологии в другом регионе не вызывает запуска SPF

  • ABR может формировать LSA3 по своему усмотрению

    • Фильтровать маршруты можно только на границах регионов

    • Агрегировать маршруты можно только на границах регионов

  • Регионы бывают четырех типов:

    • Транзитный регион (backbone area)

    • Нормальные регионы (regular area)

    • Тупиковые регионы (stub area)

    • Полностью тупиковые регионы (tottaly stub area)

    • Частично тупиковые (Not-so-stubby area)

    • Полностью частично тупиковые (Totally Not-so-stubby area)

Backbone Area

  • Маршрутизатор становится ABR только если имеет копию LSDB area 0

    • Иметь несколько интерфейсов в разные регионы недостаточно

  • ABR занимается генерацией LSA3 в транзитном регионе

    • Создает LSA3 на изученные в обычном регионе intra-area маршруты

  • ABR копирует LSA5 в транзитный регион и выпускает LSA4

  • ABR транслирует LSA7 в LSA5 транзитного региона, но об этом позже

Regular Area

  • ABR занимается генерацией LSA3 в нормальном регионе

    • Создает LSA3 на изученные в остальных регионах intra-area маршруты

    • Создает LSA3 на изученные в транзитном регионе inter-area маршруты

      • Именно выпускает новую LSA3, а не копирует имеющуюся

  • ABR копирует LSA5 из транзитного региона и выпускает LSA4

Stub Area

  • В LSDB тупиковых регионов запрещаются LSA5

  • ABR занимается генерацией LSA3 в тупиковом регионе

    • Создает LSA3 на изученные в остальных регионах intra-area маршруты

    • Создает LSA3 на изученные в транзитном регионе inter-area маршруты

  • ABR не копирует LSA5 из транзитного региона и не создает LSA4

    • Вместо всех существующих LSA5 создается LSA3 за сеть 0.0.0.0/0

Totally Stub Area

  • ABR не копирует LSA5 из транзитного региона, не создает LSA4 и не генерирует LSA3 в тупиковом регионе по обычным правилам

    • Вместо всех внешних маршрутов ABR выпускает LSA3 за сеть 0.0.0.0/0

  • Поведение Totally Stub ABR не описано в RFC

    • Однако схожи образом реaлизуется многими вендорами

NSSA

  • Not-So-Stubby Area, RFC 1587 и 3101

  • ASBR в NSSA создает LSA7, по функциям и формату совпадает с LSA5

    • Область распространения LSA7 - регион, а не автономная система

  • ABR транслирует внешние маршруты в NSSA по общим правилам

  • ABR транслирует LSA7 в LSA5 транзитного региона

    • Указывает стоимость LSA, свой RID в ASBR ID, ASBR IP в Forwarding Address

Totally NSSA

  • ABR не копирует LSA5 из транзитного региона, не создает LSA4 и не генерирует LSA3 в тупиковом регионе по обычным правилам

    • Вместо всех внешних маршрутов ABR выпускает LSA3 за сеть 0.0.0.0/0

  • ABR транслирует LSA7 в LSA5 транзитного региона

    • Указывает стоимость LSA, свой RID в ASBR ID, ASBR IP в Forwarding Address

E-bit и N-bit

  • Во всех сообщениях OSPF есть поле Options

  • Одна из опций - ExternalRoutingCapability, управляется флагом E-bit

    • 1 - в регионе поддерживается LSA5

    • 0 - не поддерживается

  • Другая опция - NSSA Capability, управляется флагом N-bit

    • 1 - в регионе поддерживаются LSA7

    • 0 - не поддерживается

  • Совпадение E-bit и N-bit проверяется при установлении соседства

    • Все маршрутизаторы в регионе должны быть настроены идентично

  • Функция Totally Stub и Totally NSSA не требуют специальных флагов

    • Настройка локальна для ABR и влияет только на его поведение

P-bit

  • Трансляцию LSA7/5 выполняет только один ABR

    • Одна LSA7 - одна LSA5 c Forwarding Address, чтобы не перегружать LSDB

    • Трансляцию выполняет ABR с наибольшим Router ID в NSSA-регионе

  • N-bit имеет двойственную природу

    • В Hello он указывает на поддержку NSSA

    • В LSA7 он указывает на возможность трансляции LSA7/5 и называется P-bit

      • Если NSSA ASBR одновременно и ABR, то другому ABR трансляцию выполнить не нужно

Предпочтения маршрутов по RFC 3101

  • LSA1: intra-area маршруты

  • LSA3: inter-area маршруты

  • LSA5/7 type 1: внешние машруты со сравнимой с OSPF стоимостью.

    • N1, P-бит=1 (ASBR в общем регионе NSSA)

    • E1 (ASBR в произвольном регионе, в том числе транслированные LSA7)

    • N1, P-бит=0 (ASBR в общем регионе NSSA, но доступный также в backbone)

  • LSA5/7 type 2: внешние маршруты с несравнимой стоимостью

    • N2, P-бит=1 (ASBR в общем регионе NSSA)

    • E2 (ASBR в произвольном регионе, в том числе транслированные LSA7)

    • N2, P-бит=0 (ASBR в общем регионе NSSA, но доступный также в backbone)

Непрерывность региона

  • ABR обязан иметь полную копию LSDB транзитного региона

  • Virtual Link - псевдоинтерфейс транзитного региона

    • Строится между участниками обычного (не тупикового) региона

    • Для построения используется RID

      • SPF вычисляет кратчайший маршрут по LSA1/2

      • Отправляются юникастовые Hello и DBD на "ближайший" IP из LSA1

      • Синхронизируется LSDB area 0

      • В LSA1 транзитного региона добавляется VL между ABR с автоматической стоимостью

Скрытие транзитных IP-сетей

  • Штатно в OSPFv2 префиксы транзитных сетей попадают в RIB

  • RFC 6860 позволяет OSPF сократить количество записей в RIB

    • На интерфейсах P2P и P2MP не анонсируются connected-сети

      • В LSA1 создается point-to-point link до RID, но не создается stub-запись для адреса

    • На broadcast и NBMA интерфейсах адреса анонсируются в LSA2

      • В LSA2 отправляется DR IP с маской /32

      • Новые роутеры не устанавливают в RIB маршруты из LSA2 с маской /32

Last updated