Настройка сетевого моста vmbr0 в Proxmox VE
Пошаговая настройка сетевого моста vmbr0 в Proxmox VE: статический IP, шлюз, физический интерфейс, проверка конфигурации и безопасное применение.
Сетевой мост vmbr0 связывает виртуальные машины и LXC-контейнеры с физической сетью. Через него гости получают доступ к локальной сети, интернету и другим узлам.
В этой инструкции рассматривается только базовая настройка vmbr0 с одним физическим интерфейсом и статическим IP-адресом самого узла Proxmox VE.
Подходит для: Proxmox VE 8 и 9
Уровень сложности: средний
Время выполнения: около 20 минут
Требуемый доступ: root-доступ к узлу и доступ к локальной консоли или IPMI
Важное предупреждение
Ошибка в сетевой конфигурации может полностью отключить удалённый доступ к Proxmox VE.
Перед изменениями необходимо иметь хотя бы один резервный способ доступа:
- физическая консоль;
- IPMI;
- iDRAC;
- iLO;
- KVM over IP;
- консоль гипервизора у провайдера.
Не применяйте сетевые изменения удалённо без возможности восстановить доступ.
Что будет настроено
После выполнения инструкции:
- физический интерфейс будет подключён к
vmbr0; - IP-адрес узла будет назначен мосту;
- будет задан шлюз;
- виртуальные машины смогут использовать
vmbr0; - конфигурация будет проверена до перезапуска сети.
Определение физического интерфейса
Покажите интерфейсы:
ip -br link
Пример:
lo UNKNOWN
eno1 UP
vmbr0 UP
Покажите адреса:
ip -br addr
Физический интерфейс может называться:
eno1
ens18
enp3s0
eth0
В примерах используется:
eno1
Замените его на фактическое имя.
Проверка текущего маршрута
ip route
Пример:
default via 192.0.2.1 dev vmbr0
192.0.2.0/24 dev vmbr0 proto kernel scope link src 192.0.2.10
Запишите:
- IP-адрес узла;
- маску;
- шлюз;
- имя физического интерфейса;
- текущий bridge.
Проверка текущей конфигурации
Откройте:
cat /etc/network/interfaces
Типичная конфигурация Proxmox VE выглядит так:
auto lo
iface lo inet loopback
iface eno1 inet manual
auto vmbr0
iface vmbr0 inet static
address 192.0.2.10/24
gateway 192.0.2.1
bridge-ports eno1
bridge-stp off
bridge-fd 0
source /etc/network/interfaces.d/*
Почему IP назначается мосту
IP-адрес узла Proxmox должен быть назначен:
vmbr0
а не физическому интерфейсу:
eno1
Физический интерфейс переводится в режим:
manual
и становится портом моста.
Схема:
Физическая сеть
│
eno1
│
vmbr0
├── Proxmox VE
├── VM
└── LXC
Создание резервной копии
Перед изменением:
cp /etc/network/interfaces /etc/network/interfaces.backup-$(date +%F-%H%M%S)
Проверьте:
ls -l /etc/network/interfaces*
Базовая статическая конфигурация
Откройте файл:
nano /etc/network/interfaces
Пример:
auto lo
iface lo inet loopback
iface eno1 inet manual
auto vmbr0
iface vmbr0 inet static
address 192.0.2.10/24
gateway 192.0.2.1
bridge-ports eno1
bridge-stp off
bridge-fd 0
source /etc/network/interfaces.d/*
Замените:
eno1
192.0.2.10/24
192.0.2.1
на параметры своей сети.
Параметр bridge-ports
Строка:
bridge-ports eno1
подключает физический интерфейс к мосту.
Если указать:
bridge-ports none
будет создан изолированный внутренний bridge без физического выхода в сеть.
Параметр bridge-stp
bridge-stp off
отключает Spanning Tree Protocol.
Для простого узла с одним uplink это обычная конфигурация.
Если строится сложная схема с несколькими физическими линками и возможными петлями, STP следует проектировать отдельно.
Параметр bridge-fd
bridge-fd 0
задаёт нулевую задержку forwarding delay.
Для обычного single-uplink bridge это типичная настройка.
Проверка синтаксиса
Proxmox VE использует ifupdown2.
Проверьте конфигурацию:
ifquery --check vmbr0
Покажите рассчитанную конфигурацию:
ifquery vmbr0
Проверьте все интерфейсы:
ifquery --list
Проверка bridge через ip
ip link show vmbr0
Проверьте физический порт:
bridge link
Пример:
2: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> master vmbr0 state forwarding
Применение через веб-интерфейс
Откройте:
Node → System → Network
После изменения нажмите:
Apply Configuration
Proxmox применит конфигурацию через ifreload.
Перед нажатием убедитесь, что есть резервный доступ к консоли.
Применение через CLI
Предпочтительный способ:
ifreload -a
Не рекомендуется без необходимости выполнять:
systemctl restart networking
на удалённом узле, поскольку это может привести к потере соединения.
Проверка после применения
Проверьте адрес:
ip addr show vmbr0
Проверьте маршрут:
ip route
Проверьте шлюз:
ping -c 3 192.0.2.1
Проверьте внешний IP:
ping -c 3 1.1.1.1
Проверьте DNS:
getent hosts example.com
Проверка веб-интерфейса
Откройте:
https://PROXMOX_IP:8006
Проверьте:
- доступность GUI;
- SSH;
- кластерную связь, если узел состоит в кластере;
- доступность хранилищ;
- работу VM и LXC.
Подключение VM к vmbr0
В настройках VM:
VM → Hardware → Network Device
Параметр Bridge:
vmbr0
Рекомендуемая модель:
VirtIO
После запуска VM она будет подключена к той же L2-сети, что и физический интерфейс узла.
Подключение LXC к vmbr0
В настройках контейнера:
CT → Network
Укажите:
Bridge: vmbr0
Для DHCP:
IPv4: DHCP
Для статического адреса задайте IP и gateway.
Проверка tap- и veth-интерфейсов
После запуска VM:
ip -br link |
grep tap
После запуска LXC:
ip -br link |
grep veth
Проверьте участников моста:
bridge link
Добавление второго bridge без физического uplink
Для изолированной внутренней сети:
auto vmbr1
iface vmbr1 inet manual
bridge-ports none
bridge-stp off
bridge-fd 0
Такой bridge можно использовать для связи между VM без выхода в физическую сеть.
Маршрутизация и NAT для него настраиваются отдельно.
DHCP на самом узле Proxmox
Для production-узла рекомендуется статический IP.
Технически можно использовать:
iface vmbr0 inet dhcp
Но это может привести к изменению адреса после перезагрузки или истечения DHCP lease.
Для Proxmox VE безопаснее использовать фиксированный адрес.
DNS узла
Проверьте:
cat /etc/resolv.conf
В Proxmox VE DNS также можно настроить через:
Node → System → DNS
Проверьте hostname:
hostnamectl
Проверьте разрешение собственного имени:
getent hosts "$(hostname -f)"
Корректное разрешение hostname важно для работы Proxmox VE и кластера.
Проверка /etc/hosts
cat /etc/hosts
Пример:
127.0.0.1 localhost
192.0.2.10 pve01.example.com pve01
Основное имя узла должно разрешаться в его management IP, а не только в 127.0.1.1.
Изменение IP-адреса узла
Для смены IP требуется обновить как минимум:
/etc/network/interfaces
/etc/hosts
Также могут потребоваться изменения:
- DNS;
- firewall;
- мониторинг;
- backup-система;
- cluster configuration;
- external storage;
- scripts;
- SSH known_hosts.
Смена IP кластерного узла требует отдельной инструкции.
VLAN-aware bridge
Если VM должны получать VLAN Tag, bridge можно сделать VLAN-aware:
auto vmbr0
iface vmbr0 inet static
address 192.0.2.10/24
gateway 192.0.2.1
bridge-ports eno1
bridge-stp off
bridge-fd 0
bridge-vlan-aware yes
bridge-vids 2-4094
В веб-интерфейсе включается:
VLAN aware
Не включайте VLAN без согласования с конфигурацией коммутатора.
Типичные проблемы
После применения пропал доступ
Используйте локальную консоль.
Проверьте:
cat /etc/network/interfaces
ip -br addr
ip route
Восстановите резервную копию:
cp /etc/network/interfaces.backup-DATE /etc/network/interfaces
Примените:
ifreload -a
IP назначен физическому интерфейсу и vmbr0 одновременно
Адрес должен быть только на vmbr0.
Физический интерфейс должен иметь:
iface eno1 inet manual
Нет маршрута по умолчанию
Проверьте строку:
gateway 192.0.2.1
В одной таблице маршрутизации обычно должен быть только один default gateway.
VM не получает DHCP
Проверьте:
- bridge в настройках VM;
- наличие DHCP-сервера;
- VLAN;
- firewall;
- состояние физического интерфейса;
- настройки коммутатора.
Узел доступен, а VM — нет
Проверьте:
bridge link
Убедитесь, что:
- VM подключена к
vmbr0; - модель адаптера корректна;
- VLAN Tag соответствует сети;
- гостевой интерфейс поднят;
- в госте настроен IP.
После перезагрузки bridge не поднялся
Проверьте:
systemctl status networking --no-pager
journalctl -u networking -b --no-pager
Проверьте синтаксис:
ifquery --check vmbr0
Безопасный порядок изменения
- Получить доступ к локальной консоли.
- Записать текущие IP, gateway и интерфейс.
- Сделать резервную копию файла.
- Изменить только необходимые строки.
- Проверить конфигурацию через
ifquery. - Применить через
ifreload -a. - Проверить IP, route, gateway и DNS.
- Проверить GUI, SSH, VM и LXC.
- Только после проверки закрыть консоль.
Быстрый набор команд
Показать интерфейсы:
ip -br addr
Показать маршрут:
ip route
Проверить bridge:
bridge link
Проверить конфигурацию:
ifquery --check vmbr0
Применить:
ifreload -a
Проверить доступ:
ping -c 3 GATEWAY_IP
Итог
После выполнения инструкции:
- физический интерфейс подключён к
vmbr0; - IP-адрес и gateway назначены мосту;
- конфигурация проверена через
ifquery; - изменения применены через
ifreload; - проверено подключение VM и LXC;
- рассмотрены внутренний bridge и VLAN-aware режим.
Любое изменение management-сети Proxmox VE следует выполнять только при наличии резервного доступа к консоли.