В предыдущей статье блога я рассмотрел процесс построения простой однозональной топологии OSPFv2 с помощью вывода команды show ip ospf database. В этой статье мы повторим тот же процесс, но с использованием OPSFv3 и IPv6.

Мы будем использовать ту же топологию сети, но интерфейсы маршрутизатора были сконфигурированы с адресами IPv6:

Рисунок 1 - Топология сети.
Рисунок 1 - Топология сети.

Давайте начнем процесс реконструкции топологии с изучения Router-LSA (объявления маршрутизатора, в которых описывается состояние подключённых линий связи (к другим маршрутизаторам или сетям) маршрутизатора, которые принадлежат одной области и их метрики), сгенерированного R1:

Вывод показывает некоторые различия между форматом Router-LSA в OSPFv3 и его аналогом в OSPFv2:

  • Поле опции длиннее (24 бита);

  • Link State ID (ID состояния канала) больше не совпадает с RID маршрутизатора, создающего объявление о состоянии канала (advertising router);

  • Вся информация об адресации была удалена из Router-LSA;

  • Из Router-LSA удалена информация о состоянии канала связи для интерфейсов, подключенных к тупиковым сетям.

В OSPFv3 маршрутизатор может генерировать один или несколько Router-LSA. Помните, что кортеж LS type, Link State ID и RID маршрутизатора анонсов однозначно идентифицирует LSA в базе данных Link State Database (LSDB). Если генерируется более одного Router-LSA, их можно различать, генерируя для каждого из них свой Link State ID.

В OSPFv2 как Router, так и Network-LSA хранят некоторую информацию об адресации. В частности, в OSPFv2 Router-LSA мы можем найти такие сведения:

  • Для соединений "точка-точка": IPv4-адрес локального интерфейса.

  • Для соединений, подключенных к транзитным сетям: IPv4-адрес интерфейса DR и IPv4-адрес локального интерфейса.

  • Для соединений, подключенных к тупиковым сетям: IPv4-адрес локального интерфейса и маска сети

В OPSFv2 маска сети для транзитных сетей хранится в Network-LSA, генерируемом выделенным маршрутизатором (DR).

В отличие от этого, OSPFv3 удаляет всю информацию об адресации, изначально хранившуюся в Router и Network-LSA, и переносит ее в другие типы LSA, о чем будет рассказано далее. LSA маршрутизатора и сети OSPFv3 содержат только топологическую информацию, необходимую для построения дерева в соответствии с алгоритмом Дейкстры, также называемым алгоритмом поиска кратчайшего пути (SPF). Это означает, что Router и Network-LSA рассылаются только при топологических изменениях, а изменения префикса не вызывают никакого пересмотра SPF, что является улучшением по сравнению с OSPFv2.

Router-LSA, сгенерированный R1, описывает два соединения “точка-точка”:

Для описания прикрепленных интерфейсов используются следующие поля:

  • Метрика.

  • Идентификатор локального интерфейса (Local Interface ID).

  • Идентификатор соседнего интерфейса (Neighbour Interface ID).

  • Идентификатор соседнего маршрутизатора (Neighbour Router ID).

Метрика представляет собой исходящую стоимость, назначенную интерфейсу. На каждом маршрутизаторе стоимость для интерфейса вычисляется как 10 в степени 8, разделенное на пропускную способность в бит/с. Это известно как справочная пропускная способность.  Local Interface ID - это число, которое однозначно идентифицирует интерфейс локального маршрутизатора. Neighbour Interface ID соответствует ID интерфейса соседнего маршрутизатора, а Neighbour Router ID идентифицирует узел, подключенный на другом конце соединения.

Два соединения, описанные в R1 Router-LSA, могут быть преобразованы в следующий график:

Рисунок 2 - Два соединения, описанные в R1 Router-LSA.
Рисунок 2 - Два соединения, описанные в R1 Router-LSA.

RID соседа может использоваться локальным маршрутизатором в качестве ключа для поиска в LSDB следующего Router-LSA, чтобы разместить еще один фрагмент этого пазла. Давайте рассмотрим R2 и R3 Router-LSA.

R3 Router-LSA:

И R2 router-LSA:

Эти новые Router-LSA содержат описание соединения, которое снова указывает на R1. Это соединение соответствует последовательному каналу, который связывает R1 с R2 и R3. Эти LSA содержат еще один тип интерфейса: 'Link connected to a Transit Network (Канал подключен к транзитной сети)'. Транзитная сеть соответствует сегменту ethernet, который соединяет маршрутизаторы R2 и R3 через коммутатор SW1.

Как и OSPFv2, OSPFv3 представляет широковещательные и нешироковещательные сети с множественным доступом (NBMA) путем добавления псевдоузла к топологии SPF. Этот псевдоузел описывается Network-LSA, созданным DR (R3 в данной топологии). Link State ID в Network-LSA соответствует идентификатору интерфейса DR. Это поле в сочетании с RID DR можно использовать в качестве ключа для поиска в LSDB Network-LSA, ассоциированного с сегментом ethernet:

Если сравнить предыдущий вывод со структурой Network-LSA в OSPFv2, то можно заметить два основных отличия. Во-первых, поле Link State ID в OSPFv2 совпадает с IP-адресом DR. В OSPFv3 это значение заменяется на ID интерфейса DR, как уже упоминалось ранее. Кроме того, в OSPFv3 отсутствует поле сетевой маски. Помните, что Router и Network-LSAs не хранят никакой адресной информации.

Мы можем найти информацию о префиксах и IPv6-адресах в последних двух LSA, которые необходимо проанализировать, чтобы завершить начальную топологию сети: Link и Intra-Area-Prefix-LSA. Но прежде чем перейти к следующим LSA, давайте добавим еще один кусочек к этому пазлу, используя информацию, хранящуюся в Network-LSA, сгенерированном R3:

Рисунок 3 - Выделенный маршрутизатор установлен.
Рисунок 3 - Выделенный маршрутизатор установлен.

По сути, Network-LSA описывает список маршрутизаторов, подключенных к одному сегменту сети (R2 и R3). Связь между R2 и R3 может быть описана псевдоузлом Network-LSA, который представлен облаком на рисунке 3. Стоимость достижения этого псевдоузла может быть получена из Router-LSA.

На данном этапе вы можете заметить, что Router и Network-LSA предоставляют всю топологическую информацию, необходимую для построения SPF-дерева от любого маршрутизатора к другому. Однако, в дополнение к топологической информации, маршрутизаторам нужна информация о префиксах и соседних link-local адресах для построения своих таблиц маршрутизации.

В OSPFv2 IP-адрес следующего узла определяется из Router-LSA, полученных от соседних маршрутизаторов. Но Router-LSA имеют область лавинного распространения информации (flooding scope). Поэтому, если IP-адрес интерфейса изменяется, новое Router-LSA повторно рассылается по всей области. Но такое изменение актуально только для соседних маршрутизаторов, подключенных к тому же каналу, что и интерфейс.

Еще одним усовершенствованием OSPFv3 по сравнению с OSPFv2 является добавление link-local flooding scope. В OSPFv3 информация, специфичная для соседей, помещается в другой тип LSA: Link-LSA. Маршрутизатор создает отдельный Link-LSA для каждого прикрепленного канала, соединенного с одним или несколькими соседями. Link-LSA предоставляет следующую информацию:

  • Link-local адрес маршрутизатора;

  • Список префиксов IPv6, связанных с интерфейсом;

  • Набор битов опций (выходит за рамки данного обсуждения).

Давайте рассмотрим Link-LSA, созданное R1 для его интерфейса, подключенного к тупиковой сети, к которой прикреплен PC1:

Из этого вывода мы можем получить следующую информацию:

  • Link State ID: 4 (ID интерфейса R1).

  • Приоритет маршрутизатора: 1.

  • Локальный адрес соединения: FE80::1.

  • Префикс, связанный с интерфейсом R1: 2001:1::/64.

Link-local область Link-LSA может быть подтверждена при просмотре Link-LSA, сгенерированных R2 с точки зрения R1:

Результат показывает, что R1 получает только Link-LSA от R2, ассоциированное с соединением “точка-точка” между R1 и R2.

Наконец, давайте рассмотрим последний LSA, который мы будем обсуждать в этой статье: LSA Intra-Area-Prefix.

Intra-Area-Prefix LSA предоставляет список префиксов IPv6, которые связаны либо с Router-LSA, либо с Network-LSA. Маршрутизатор может генерировать несколько Intra-Area-Prefix LSA, для сохранения небольшого размера LSA. Различные LSA отличаются идентификатором состояния канала (Link State ID).

Рассмотрим LSA Intra-Area-Prefix, сгенерированное R1:

Этот LSA связан с Router-LSA маршрутизатора R1 полями: Referenced LSA Type, Referenced Link State ID и Referenced Advertising Router. Всего описано три префикса адресов IPv6, которые соответствуют двум каналам "точка-точка" и тупиковой сети.

Если мы рассмотрим Intra-Area-Prefix LSA, сгенерированные R3, то получим следующие результаты:

R3 генерирует два Intra-Area-Prefix LSA: одно для соединения “точка-точка” с R1 и другое для транзитной сети, соединяющей R2 и R3. Intra-Area-Prefix LSA, ассоциированное с транзитной сетью, связано с Network-LSA, сгенерированным R3.

В заключение рассмотрим вывод Intra-Area-Prefix LSA, сгенерированного R2:

Это LSA описывает только префикс IPv6, ассоциированный с соединением "точка-точка", соединяющим R1 и R2. R2 Intra-Area-Prefix LSA опускает префикс IPv6, ассоциированный с транзитной сетью, поскольку он уже описан в Intra-Area-Prefix-LSA, сгенерированном DR.

Объединив всю информацию из различных Link и Intra-Area-Prefix LSA, мы можем построить окончательную топологию:

Рисунок 4 - Реконструированная топология сети.
Рисунок 4 - Реконструированная топология сети.

Завтра в 20:00 состоится открытое занятие «Сшиваем разорванную ip сеть с помощью NAT». Определим, что такое разорванные сети и как они возникают, рассмотрим синтаксис NAT в CISCO CLI. Обеспечим доступ между сегментами разорванной сети с помощью NAT. Регистрация доступна по ссылке для всех желающих.

Комментарии (0)