lab04-BGP-CLOS

Задание Underlay. BGP

Цель: Настроить BGP для Underlay сети.

Описание/Пошаговая инструкция выполнения домашнего задания: В этой самостоятельной работе мы ожидаем, что вы самостоятельно:

Настроите BGP в Underlay сети, для IP связанности между всеми сетевыми устройствами. iBGP или eBGP - решать вам! Зафиксируете в документации - план работы, адресное пространство, схему сети, конфигурацию устройств Убедитесь в наличии IP связанности между устройствами в BGP домене

Схема стенда

stand-plan

Стенд делаем по принципу - хосты linux, leaf - frr, spine - eos (arista)

Распределение адресного пространства для Underlay

План составлен с учетом 10.x.y.z, где x - номер DC, y - номер spine, z - по очереди для подключения leaf Адреса для хостов - 172.16.x.z/24, где x - номер leaf, z - по порядку адрес хоста, на leaf ip .1 Адреса loopback 192.168.a.b/32, где a - 1 для spine, 2 - для leaf, b - номер spine, leaf по порядку Адресацию ipv6 делаем по прицнипу из fd00::[IPv4]

Interconnect ipv4 ipv6

Device A
Interface A
IPv4 A
IPv6 A
Device B
Interface B
IPv4 B
IPv6 B

Spine-1

Eth1

10.1.1.0/31

fd00::10:1:1:0/127

Leaf-1

Eth8

10.1.1.1/31

fd00::10:1:1:1/127

Spine-1

Eth2

10.1.1.2/31

fd00::10:1:1:2/127

Leaf-2

Eth8

10.1.1.3/31

fd00::10:1:1:3/127

Spine-1

Eth3

10.1.1.4/31

fd00::10:1:1:4/127

Leaf-3

Eth8

10.1.1.5/31

fd00::10:1:1:5/127

Spine-2

Eth2

10.1.2.0/31

fd00::10:2:1:0/127

Leaf-1

Eth9

10.1.2.1/31

fd00::10:2:1:1/127

Spine-2

Eth2

10.1.2.2/31

fd00::10:2:1:2/127

Leaf-2

Eth9

10.1.2.3/31

fd00::10:2:1:3/127

Spine-2

Eth3

10.1.2.4/31

fd00::10:2:1:4/127

Leaf-3

Eth9

10.1.2.5/31

fd00::10:2:1:5/127

Host-1

Eth1

172.16.1.2/24

fd00::172:16:1:2/116

Leaf-1

Eth1

172.16.1.1/24

fd00::172:16:1:1/116

Host-2

Eth1

172.16.2.2/24

fd00::172:16:2:2/116

Leaf-2

Eth1

172.16.2.1/24

fd00::172:16:2:1/116

Host-3

Eth1

172.16.3.2/24

fd00::172:16:3:2/116

Leaf-3

Eth1

172.16.3.1/24

fd00::172:16:3:1/116

Host-4

Eth1

172.16.4.2/24

fd00::172:16:4:2/116

Leaf-3

Eth2

172.16.4.1/24

fd00::172:16:4:1/116

loopback

Device
Loopback ipv4
loopback ipv6

Spine-1

192.168.1.1

fd00::192:168:1:1

Spine-2

192.168.1.2

fd00::192:168:1:2

Leaf-1

192.168.2.1

fd00::192:168:2:1

Leaf-2

192.168.2.2

fd00::192:168:2:2

Leaf-3

192.168.2.3

fd00::192:168:2:3

Номера AS выдаем по принципу spine 65000 leaf 6500x, где x - номер leaf Таблица net

Device
AS number

Spine-1

65000

Spine-2

65000

Leaf-1

65001

Leaf-2

65002

Leaf-3

65003

circle-info

Примечание - так как в явном виде не указано что делать с адресацией на хостовых машинах, а в качестве leaf и spine выступают роутеры, до настройки overlay адреса на хостах распределены из разных подсетей.

Когда поднимем overlay засунем все в одну подсеть чтобы эмулировать l2. Из маршрутизации интерфейсы к которым подключены хосты убираем.

Запуск лабараторной в среде netlab

Заметки по использованию netlab: Как мы знаем из более ранних попыток есть вопросы с запуском bfd из файла первичной конфигурации, поэтому пришлось:

  1. Поправить модуль /usr/local/lib/python3.10/dist-packages/netsim/modules/bgp.yml добавив в секцию node параметр bfd

chevron-rightbgp.ymlhashtag
  1. Добавить в макросы /usr/local/lib/python3.10/dist-packages/netsim/ansible/templates/bgp/eos.macro.j2 /usr/local/lib/python3.10/dist-packages/netsim/ansible/templates/bgp/frr.j2 обработчик параметров bfd

chevron-rightadd to eos.macro.j2hashtag
chevron-rightadd to frr.j2hashtag

А после всех этих манипуляций понять, что читать документацию надо внимательно и обнаружить плагин bgp.session, который не только bfd включит, но и в полной мере может управлять создаваемыми сессиями. По ходу чтения документации нашел встраиваемый инструмент edgeshark, позволяющий снифать трафик, получать маршрутную информацию, отслеживать линки с инстансов netlab. Его крутые возможности приведу в скринах ниже. Включается она 2мя строками.

Конфиг-файлarrow-up-right или под катом

chevron-righttopology.ymlhashtag

Проверка работы

chevron-rightspine-1hashtag
chevron-rightspine-2hashtag

Проверяем пинг loopback всех устройств с leaf-2.

chevron-rightleaf-2 pings 1st tryhashtag

И кроме себя никого не видим. Тут то мне и пригодился edgeshark.

Он нам не только позволяет видеть простыню подключений, но и снимать трафик

Видим что у нас соурс адрес подставляет интерфейс. Request доходит до целевого хоста, а вот reply сформироваться не может, так как leaf ничего не знает о том как другие leaf подключены к spine. Только лупбеки, можно или явно добавить в анонс сети в bgp на оборудовании. Напрямую указывать в frr соурс адрес из оболочки vtysh нельзя, поэтому делаем пинг из системы.

chevron-rightleaf-2 pings 2nd tryhashtag

Конфигурационные файлы устройств:\

Spine-1arrow-up-right Spine-2arrow-up-right Leaf-1arrow-up-right Leaf-2arrow-up-right Leaf-3arrow-up-right

Последнее обновление