Proxmox SDN для чего и как настроить

В этой статье я покажу как настроить простую виртуальную сеть SDN Simple в Proxmox VE и покажу как это работает.

Я очень часто запускаю новые виртуальные машины Windiws, Linux, LXC контейнеры и даже XPEnology для тестов или просто что бы попробовать новые функции. Каждая такая установка появляется у меня в домашней сети и роутер присылает уведомление о новом устройстве. Через какое-то время все эти временные хосты висят в роутере как не активные и приходится их чистить вручную. Меня это всегда напрягало и я хотел купить роутер и коммутатор для отдельной сети, которая не пересекалась бы с мой домашней сетью. Но как оказалось в Proxmox начиная с версии 8.1 появилась полноценная поддержка SDN, которая решает мою задачу и ничего отдельно покупать мне не нужно, а сама настройка очень простая, хотя на первый взгляд я не знал с какой стороны к этому подойти.

Proxmox SDN (Software-Defined Networking) – это решение для виртуализации сети, предоставляемое компанией Proxmox. Оно позволяет управлять сетевыми ресурсами, создавать виртуальные сети, настраивать маршрутизацию и контролировать трафик в виртуальной среде. Proxmox SDN обеспечивает гибкость и управляемость сети, что делает его полезным инструментом для организаций, работающих с виртуализированными средами.

Для начала давайте рассмотрим какие варианты настройки SDN сетей есть в Proxmox VE:

  • Simple – Изолированный мост. Простой маршрутизирующий мост 3-го уровня (NAT)
  • VLAN – Виртуальные локальные сети – это классический метод разделения локальной сети
  • QinQ – Многоуровневая VLAN (официально известная как IEEE 802.1ad)
  • VXLAN – Сеть VXLAN уровня 2 через UDP-туннель
  • EVPN (BGP EVPN) – VXLAN с поддержкой BGP для установления маршрутизации уровня 3

Как я сказал изначально буду рассматривать только Simple сеть. Для моих задач этого будет достаточно. К тому же этого будет достаточно для понимания общей концепции и дальнейшей самостоятельной настройки более сложных конфигураций при необходимости.

Для начала на хост или все ноды кластера нужно установить требуемые пакеты. Первым делом нужно обновить репозитории:

apt update

Затем, если вы обновлялись до Proxmox 8 с версии 7 нужно установить

apt install libpve-network-perl

Затем проверьте, что в файле /etc/network/interfaces есть такая строка, если ее нет, то добавьте:

source /etc/network/interfaces.d/*

Затем нужно установить dnsmasq и выключить по умолчанию

apt install dnsmasq
systemctl disable --now dnsmasq

Затем нужно установить FRRouting

apt install frr-pythontools

После этого нужно перезагрузить весь сервер или все ноды кластера

Следующим этапом после перезагрузки идем в центр пакетов, SDN, Зоны и создаем новую Simple зону

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

Затем идем на вкладку VNets и создаем новую виртуальную сеть. Даем ей название и выбираем созданную ранее зону.

Когда виртуальная сеть создана, нужно определить ее параметры. Для этого выделяем ее и в правом окошке жмем создать. Тут нужно придумать свободную, не задействованную нигде у вас в подсеть. Я решил сделать подсеть 10.16.68.0 и маску 24. Это 254 хоста с учетом маршрутизатора 10.16.68.1. Если вы не хотите настраивать маршрутизацию на вашем роутере, то поставьте галочку SNAT для маскирования этой сети IP адресом ноды Proxmox. Но в этом случаи вы не сможете попасть из вашей локальной сети в виртуальную. Все же для простоты рекомендую установить параметр SNAT.

Тут же перейдите на вкладку DHCP Ranges и укажите диапазон IP адресов, из этой виртуальной сети, которые будут задействоваться динамически DHCP сервером. В этой сети я буду назначать IP адреса вручную от 2 до 99 и от 201 до 254, а диапазон от 100 до 200 будет выделяться DHCP сервером виртуальной сети.

Должно получиться примерно так:

Теперь идем на вкладку SDN и жмем применить. Появляются созданные ранее виртуальные зоны на тех узлах кластера, которые были выбраны при создании этой самой зоны. Так как я выбирал все узлы кластера, а узлов у меня ровно две ноды, то и зоны две по одной на ноду. Самое главное, что бы их статус с pending перешел на avaleble. Последнее означает, что все в порядке.

Теперь любой виртуальной машине, можно указать эту саму виртуальную сеть в момент создания или при редактировании VM или LCX

А IP адреса внутри этой виртуальной сети будут из того диапазона, который задавался ранее, а так же будет работать интернет.

иНа кладке SDN IPAM будут отображаться все задействованные IP адреса из виртуальной сети. Да и вообще общая картина.

Если требуется доступ к узлам виртуальной сети из вашей локальной, то на вашем роутере нужно настроить маршрутизацию примерно так как показано на картинке ниже. Почему примерно? Потому что на каждом роутере это выглядит по-разному, но суть одна. Указываете сеть и ее маску, а шлюзом в эту сеть является сам Proxmox VE или его нода из локальной сети.

Это можно делать не на роутере, а на каждом ПК или узле сети, которому нужен доступ в виртуальную сеть. Например, на Windows нужно открыть командную строку или PowerShell с правами администратора и выполнить команду:

route –p add 10.16.68 mask 255.255.255.0 192.168.68.22

Ключ “p” указывает, что маршрут является постоянным. Без этого ключа добавленные маршруты будут удалены после перезагрузки. Если вы хотите сохранить маршрут после перезагрузки, используйте этот ключ. Если нужно добавить маршрут только один раз, ключ можно опустить.

Скорость внутри виртуальной сети в моем случаи равна 1Гб\с. Если честно, то я ожидал больше, но похожу мой процессор Intel N100 не выгребает более этого параметра, что не удивительно. Меня это вполне устраивает. Думаю если взять Xeon то результат будет в разы больше, но проверить мне не на чем.

Самое главное, что теперь в моей домашней сети не будет появляться временных виртуальных хостов и все узлы будут реально физические, ну или парочку виртуальных я оставлю.

Теперь вы знаете что такое Proxmox SDN для чего и как его настроить на примере простой сети Simple.

Хотелось бы дополнить очень интересным, на мой взгляд, роликом про Proxmox SDN и VxLAN с канала Alt-info

Подписаться
Уведомить о
guest
3 Комментарий
Старые
Новые
Межтекстовые Отзывы
Посмотреть все комментарии