VxLAN on Cisco IOS. Part 1. Flood and Learn. Ingress Replication. Практика.

2021.11.29. Kurapov Alexey.

VxLAN on Cisco IOS. Flood and Learn. Ingress Replication.

Рассмотрим топологию:

 

               Настроим MAC и  IP адреса на клиентах.

               Клиент 1:


               Клиент 2: 


             Обеспечим ip связность между CSR1000v_1 и CSR1000v_2 со стороны опорной – underlay сети.

CSR1000v_1:


               CSR1000v_2: 


               CSR1000v_3: 


               Проверим базовую ip связность, например, на CSR100v_1:


               Все в порядке.

 

               Создадим логическую конструкцию, чтобы каждый маршрутизатор – VTEP, мог создавать растянутый L2 домен.

1.      Создадим интерфейс NVE – Network Virtualization Endpoint interface.

CSR1000v_1:


-         source-interface Lo0 – указываем с какого интерфейса будем строить туннель NVE,

member vni 132231 – используем VNID 132231 – номер VxLAN,

ingress-replication 2.2.2.2 – все multicast пакеты будет передавать unicast-ом на ip адреса всех соседних VTEP.

 

CSR1000v_2: 


2.      На интерфейсах VTEP gi2 в сторону конечных устройств создадим service instance – некая виртуальная сущность, в которую попадают фреймы определенного формата:

CSR1000v_1:


encapsulation untagged – ассоциируем service instance 1111 с фреймами без dot1Q инкапсуляции, т.е. если на int gi2 приходим фрейм без dot1Q инкапсуляции, он будет проассоциирован с виртуальной сущностью номер 1111.

CSR1000v_2: 


3.      Настроим bridge-domain на VTEP – свяжем VNID c service instance: 





               Проверим работу механизма VxLAN:

               Запустим ping с клиента 1 до клиента 2:


               Успешно.              

               Соседние VTEP, известные данному VTEP-у: 


               Какие МАС адреса известны VTEP 1:


VTEP 1 изучил два МАС адреса:

Клиента 1 – изучен на интерфейсе gi2 в рамках Ethernet service instance 1111,

Клиента 2 – изучен через интерфейс nve1 и принадлежит VNI 132231, в качестве инкапсуляции используется протокол VxLAN, int nve1 это туннель между VTEP1 и VTEP2, с ip source 1.1.1.1 и ip destination 2.2.2.2. 

Аналогично на VTEP 2: 


Посмотрим в Wireshark формат VxLAN фреймов.

Запустим ping с клиента 1 до клиента 2: 


Подробное строение VxLAN фрейма: 


               Порядок действий VTEP 1 с фреймом, полученным от клиента 1:

1.      Исходный фрейм от клиента 1 сохраняется целиком, остаются MAC source Client_1 и MAC destination Client_2;

2.      К исходному фрейм от клиента 1 добавляется VxLAN заголовок, с указанием VNID = 132231;

3.      Далее добавляется UDP заголовок, отметим значение destination порта = 4789;

4.      UDP дейтаграмма упаковывается в IP пакет, где IP source = 1.1.1.1 и IP destination = 2.2.2.2, это значения указанные при создании интерфейса nve 1;

5.      Далее IP пакет отправляет на Router 3, согласно таблице маршрутизации на VTEP 1:




Комментарии

Популярные сообщения из этого блога