Узнав о VXLAN, я нашел в документе:
... VTEP1 затем добавляет заголовок VXLAN который содержит VNI для кадра Ethernet, инкапсулирует кадр в пакет UDP уровня 3 и направляет пакет в VTEP2 через уровень 3 сеть.
А затем, об инкапсулированных заголовках:
Внешний заголовок MAC - содержит MAC-адрес исходного VTEP и MAC адрес маршрутизатора следующего перехода. Каждый маршрутизатор на пути пакета перезаписывает этот заголовок так, чтобы адрес источника был MAC-адресом маршрутизатора. адрес, а адрес назначения - это MAC-адрес маршрутизатора следующего перехода. адрес.
Если пакет маршрутизируется через уровень 3, почему требуется внешний MAC-адрес для следующего перехода, а не типичный IP уровня 3?
А что касается туннельных узлов VXLAN (не VTEP), это коммутатор / виртуальный коммутатор (L2), маршрутизатор (L3) или могут быть оба варианта?
[править]
VXLAN - это структура уровня 2, поэтому, когда один VTEP хочет отправить данные другому VTEP, он создаст кадр VXLAN уровня 2 (в основном кадр Ethernet). Затем этот кадр необходимо доставить на IP-адрес целевого VTEP.
Когда они говорят о «внешнем MAC-заголовке», кажется, что они говорят о кадре, который отправляется по физической сети. Представьте себе следующую конфигурацию -
VTEP Host A: 1.1.1.1 MAC AA (not going to bother with full MAC addresses)
Local Router Interface 1: 1.1.1.254 MAC BB
Local Router Interface 2: 2.2.2.254 MAC CC
VTEP Host B: 2.2.2.2 MAC DD
(IP-адреса выше являются фактическими адресами хоста (конечными точками VTEP), а не адресами самих виртуальных интерфейсов VXLAN).
[UDP PACKET 1.1.1.1-> 2.2.2.2 [VXLAN FRAME]]
[ETH FRAME AA-> BB [UDP PACKET [VXLAN FRAME]]]
[ETH FRAME CC-> DD [UDP PACKET [VXLAN FRAME]]]
. ** ** Если между VTEP были дополнительные маршрутизаторы, то этот процесс буду продолжать. Каждый маршрутизатор извлекает пакет и помещает его в новый кадр с собственным MAC-адресом src и MAC-адресом dst следующего перехода, пока он не достигнет пункта назначения.