Сетевая виртуализация: VXLAN, NFV и Overlay сети

Сетевая виртуализация — это технология, которая отделяет логическую сеть от физической инфраструктуры. Вместо того чтобы прокладывать кабели и настраивать VLAN на каждом коммутаторе, вы создаёте "overlay" поверх существующей IP-сети. Это позволяет строить гибкие, масштабируемые и изолированные сети для облачных провайдеров, дата-центров и крупных предприятий.

Сетевая виртуализация
v

Почему VLAN недостаточно?

VLAN имеет ограничения, которые становятся критичными в больших средах:

Решение — overlay-сети, которые инкапсулируют L2-кадры в IP-пакеты.

VXLAN — король оверлеев

VXLAN (Virtual Extensible LAN) — это протокол инкапсуляции, который помещает исходный Ethernet-кадр в UDP-пакет (порт 4789). VXLAN использует 24-битный идентификатор сети (VNI), что даёт 16 миллионов изолированных сетей.

Структура VXLAN-пакета

┌─────────────────────────────────────────────────────────┐
│ Outer Ethernet (MAC-адреса VTEP)                        │
├─────────────────────────────────────────────────────────┤
│ Outer IP (IP-адреса VTEP)                               │
├─────────────────────────────────────────────────────────┤
│ Outer UDP (src=random, dst=4789)                        │
├─────────────────────────────────────────────────────────┤
│ VXLAN Header (24-bit VNI + флаги)                       │
├─────────────────────────────────────────────────────────┤
│ Inner Ethernet Frame (оригинальный MAC + payload)       │
└─────────────────────────────────────────────────────────┘

Ключевые компоненты VXLAN

Как работает VXLAN в дата-центре

Представьте два сервера в разных стойках, соединённых через IP-сеть. На каждом сервере — гипервизор с VTEP. Виртуальная машина на Server A отправляет кадр для VM на Server B. Гипервизор узнаёт, что MAC-адрес назначения находится на удалённом VTEP (через распределённую базу). Он инкапсулирует кадр в VXLAN с VNI 5001 и отправляет по underlay. На Server B VTEP деинкапсулирует и доставляет кадр VM. VM даже не знает, что трафик шёл через туннель — для неё всё выглядит как локальная сеть.

Пример настройки VXLAN на Linux (команды iproute2)

# Создаём VXLAN-туннель на VTEP с IP 192.168.10.1
ip link add vxlan10 type vxlan id 10 remote 192.168.10.2 dstport 4789 dev eth0
ip addr add 10.0.0.1/24 dev vxlan10
ip link set vxlan10 up

# На втором VTEP (192.168.10.2)
ip link add vxlan10 type vxlan id 10 remote 192.168.10.1 dstport 4789 dev eth0
ip addr add 10.0.0.2/24 dev vxlan10
ip link set vxlan10 up

Другие протоколы оверлеев

NVGRE (Network Virtualization using Generic Routing Encapsulation)

Конкурент VXLAN от Microsoft. Использует GRE-инкапсуляцию вместо UDP. Поддерживается в Hyper-V и Azure. Недостаток — отсутствие балансировки через ECMP (GRE не всегда хэшируется).

Geneve (Generic Network Virtualization Encapsulation)

Более гибкий протокол, который позволяет добавлять произвольные метаданные (опции). Используется в Open vSwitch и проекте OpenStack. Порт 6081.

MPLS over UDP / GUE

Для провайдеров — инкапсуляция MPLS в UDP для транзита через IP-сети.

NFV — виртуализация сетевых функций

NFV (Network Functions Virtualization) — это замена физических устройств (роутеров, файрволов, балансировщиков) на виртуальные аналоги, работающие на стандартных серверах.

Примеры VNF (Virtual Network Functions):

Преимущества NFV

Контроллеры и оркестрация

Для управления overlay-сетями нужны централизованные контроллеры. Популярные решения:

Практические сценарии использования

1. Multi-tenant облако

Облачный провайдер выделяет каждому клиенту свой VNI (или несколько). Трафик клиентов полностью изолирован, даже если их виртуальные машины работают на одних физических серверах.

2. Миграция виртуальных машин (vMotion) между ЦОД

VXLAN позволяет сохранить L2-связность при миграции VM из Москвы в Санкт-Петербург. IP-адрес VM не меняется, сессии не рвутся.

3. Сегментация сети в Kubernetes

Cilium с VXLAN создаёт overlay между подами на разных нодах, обеспечивая политики безопасности.

Недостатки и проблемы

Заключение: Сетевая виртуализация с VXLAN и NFV — это стандарт для современных дата-центров и облаков. 4096 VLAN больше не ограничивают вашу архитектуру. Начните с изучения VXLAN на Linux или в среде VMware NSX — это откроет путь к проектированию действительно масштабируемых сетей.