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)
Непрерывность региона
OSPF Virtual Link
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