Урок 7. Сеть — мост vmbr0 и VLAN
Машины и контейнеры из прошлых уроков получили адреса от роутера и видны в сети как отдельные компьютеры. Так работает мост — главная деталь сети Proxmox. В этом уроке — как он устроен, где настраивается и как разделить машины на отдельные сети.
Мост как коммутатор
Мост (bridge) — программный сетевой коммутатор внутри сервера. К нему подключены физическая сетевая карта и виртуальные карты машин. Машины получают свои MAC-адреса (аппаратные адреса сетевых карт) и общаются с роутером напрямую, как будто воткнуты в тот же коммутатор, что и сервер.
Установщик создаёт один мост vmbr0 и подключает к нему первую сетевую карту. Адрес самого сервера назначен мосту, а не карте — это частая причина путаницы при ручной правке.
Имена сетевых карт в Proxmox начинаются с en: eno1 — первая карта на материнской плате, enp3s0 — карта в слоте PCI. Свои карты и адреса покажет команда:
ip -br addrФайл настроек
Сеть описана в файле /etc/network/interfaces. После установки он выглядит примерно так:
auto lo
iface lo inet loopback
iface eno1 inet manual
auto vmbr0
iface vmbr0 inet static
address 192.168.10.2/24
gateway 192.168.10.1
bridge-ports eno1
bridge-stp off
bridge-fd 0Здесь eno1 — физическая карта без своего адреса (manual), vmbr0 — мост с адресом сервера и шлюзом, bridge-ports eno1 — карта, подключённая к мосту.
Как менять настройки
В интерфейсе: узел → System → Network. Изменения сначала записываются в черновик /etc/network/interfaces.new и не действуют, пока вы не нажмёте Apply Configuration — тогда они применяются сразу, без перезагрузки.
Если правили файл вручную, примените его командой:
ifreload -aОшибка в настройках моста vmbr0 отрезает сервер от сети — и веб-интерфейс, и SSH. Перед изменением убедитесь, что есть доступ к экрану и клавиатуре сервера (или к его удалённой консоли у хостинга), и сохраните копию файла: cp /etc/network/interfaces /root/interfaces.bak.
Старые команды Debian ifdown и ifup для мостов не используйте: после ifdown vmbr0 гостевые машины отключаются от моста и сами обратно не подключаются.
Внутренняя сеть для машин
Иногда машинам нужна своя сеть, недоступная снаружи: например, сайт и база данных общаются между собой, а база в общую сеть не выходит. Для этого создайте второй мост без физической карты: Create → Linux Bridge, имя vmbr1, поле Bridge ports оставьте пустым, адрес можно не задавать. Примените изменения.
Подключите к vmbr1 вторую сетевую карту машины (Hardware → Add → Network Device) и задайте внутри машин адреса из своей сети, например 10.10.10.1/24 и 10.10.10.2/24. Роутера и DHCP в такой сети нет.
VLAN
VLAN — способ разделить одну физическую сеть на несколько независимых. Каждый пакет помечается номером (тегом) от 1 до 4094, и коммутатор доставляет его только в порты своего VLAN. Так в одном кабеле идут, например, сеть офиса, сеть камер и гостевой Wi‑Fi.
Проще всего научить понимать теги сам мост:
- Узел → System → Network →
vmbr0→ Edit → отметьте VLAN aware → Apply Configuration. - В сетевом устройстве машины (Hardware → Network Device → Edit) укажите VLAN Tag, например
20.
В файле настроек у моста появятся строки:
bridge-vlan-aware yes
bridge-vids 2-4094Порт коммутатора, к которому подключён сервер, должен быть настроен как trunk (пропускать помеченные пакеты нужных VLAN). Машины без тега остаются в основной сети, как раньше.
Тег работает и без флажка VLAN aware: тогда Proxmox сам создаёт для каждого VLAN отдельный мост (например, vmbr0v20). Флажок нагляднее: всё остаётся на одном мосту vmbr0. Подробнее про VLAN и маски — в теме Компьютерные сети.
Если хостинг не пускает чужие MAC
В домашней и офисной сети мост работает сразу. А многие хостинги отключают порт, если видят на нём несколько MAC-адресов, — и машины на мосту, подключённом к внешней карте, ломают сеть сервера. Для такого случая в документации Proxmox есть схемы с маршрутизацией и NAT (машины выходят наружу под адресом сервера; раздел Network Configuration руководства администратора). Перед настройкой уточните у хостинга, разрешены ли дополнительные MAC-адреса.
Коротко
- Мост
vmbr0— программный коммутатор: к нему подключены сетевая карта сервера и карты гостей. - Адрес сервера назначен мосту, а не физической карте.
- Настройки —
/etc/network/interfaces; из интерфейса изменения применяет Apply Configuration, после ручной правки —ifreload -a. - Мост без физической карты (
vmbr1) — внутренняя сеть для машин. - VLAN: флажок VLAN aware у моста и VLAN Tag в сетевом устройстве машины; порт коммутатора — trunk.