Часть 4. Underlay. BGP
Цель
Настроить BGP для Underlay сети
Ожидаемый результат
Настроен BGP в Underlay сети и IP-связанность между всему сетевыми устройствами.
В документации зафиксирован план работ, адресное пространство, схема сети и конфигурация устройств.
Подтверждена IP-связанность между устройствами.
Планирование AS
Под катом планирование номеров AS
Disclaimer
После сложной рабочей недели планирование AS пришлось делать с помощью чат-бота
Предлагается следующая схема использования нумерации AS:
Используем 32-битную нумерацию.
Используем 32-битные частные ASNs из диапазона 4200000000–4294967294.
Первые 16 бит отводятся для обозначения страны, остальные для использования внутри страны.
Кодируем каждую страну символом:
Базовый AS номер для каждой страны вычисляется по формуле:
Базовый AS = 4200000000 + (Код страны × 65536)Пример для Норвегии:
AS = 4200000000 + (2 × 65536) = 4200131072Структура внутри страны:
[Код города (8 бит)][Код региона/ДЦ (8 бит)]Пример для Норвегии (NO)
Базовый AS для города вычисляется следующим образом:
Базовый AS города = Базовый AS страны + (Код города × 256)Пример для Осло (OSL)
AS = 4200131072 + (1 × 256) = 4200131328Расчет распределения AS внутри города по датацентрам.
Для DC1 ("Мидгард")
AS = 4200131328 + 1 = 4200131329Spine-коммутаторы: AS 4200131329
Leaf-коммутаторы: диапазон 4200131331–4200131583 для уникальных ASNs.
Заметка.
Распределение AS нужно пересмотреть в пределах Города-ДЦ. Пока используем так.
Для Spine-коммутаторов внутри DC1 ("Мидгард") используем следующую AS: 4200131329
Для каждого Leaf-коммутатора используем уникальный номер AS:
no-osl-dc1-f1-r03k01-lf01 - 4200131331
no-osl-dc1-f1-r03k02-lf01 - 4200131332
no-osl-dc1-f1-r03k03-lf01 - 4200131333
То же самое, но табличкой:
no-osl-dc1-f1-r01k01-spn01
Spine01
4200131329
no-osl-dc1-f1-r02k01-spn01
Spine02
4200131329
no-osl-dc1-f1-r03k01-lf01
Leaf01
4200131331
no-osl-dc1-f1-r03k02-lf01
Leaf02
4200131332
no-osl-dc1-f1-r03k03-lf01
Leaf03
4200131333
На картинке выглядит так:

Достижение результата
В результате поисков путей реализации лабораторный Netbox был дополнен двумя, на мой взгляд, полезными плагинами:
NetBox BGP Plugin https://github.com/netbox-community/netbox-bgp/ - документирование BGP.
NextBox UI Plugin https://github.com/iDebugAll/nextbox-ui-plugin - визуализация топологий.
Итак, мы имеем установленный и настроенный Netbox с плагином "NetBox BGP Plugin". Далее, нам нужно заполнить информацию о BGP, а именно:
Создать в разделе
IPAM -> Aggregates -> RIRsхотя бы один RIR

Создать в разделе
IPAM -> ASNS -> ASNsавтономные системы согласно таблички выше и соотнести их к RIR:

Заполнить информацию о BGP сессиях в разделе
Plugins ->BGP -> Sessions:

Примечание
Для массового добавления нужно использовать импорт.
Высокий риск допустить ошибку при ручном заполнении.
Применяем новый шаблон для генерации конфигурации устройств и BGP netbox_bgp_template.
Применяем Rendered Config к устройствам (все еще вручную)
Результат настройки BGP
Проверяем доступность loopback интерфейсов
Last updated