(Решено) Astra - проблема с vlan

DepOfDef

New member
Сообщения
8
#1
Всем доброго времени.
Прошу помочь разобраться.
Есть сервер и на на нем поднята влан (ALSE 1.6, Update 6, NetworkManager изничтожен):
/etc/network/interfaces
Посмотреть вложение Screenshot_20230220_173020.png
Но когда перезагружаю сервер, то влан 112 не подымается:
Посмотреть вложение Screenshot_20230220_123728.png
Делаю:
Посмотреть вложение Screenshot_20230220_123857.png
И тогда влан начинает работать:
Посмотреть вложение Screenshot_20230220_124001.png
Куда копать ?
 

Вложения

oko

New member
Сообщения
1 257
#2
Primo, для понимания не хватает описания eth-интерфейсов, объединенных в bond, непосредственно...
Secundo, зачем назначать IP на bridge, а потом поверх него делать vlan-интерфейс без IP-адреса?
Tertio, вам bridge нужен для маппинга интерфейсов виртуальных машин или аналогичных нужд?
Last, модуль экстрасенсорики подсказывает, что у вас нарушена очередность подъема интерфейсов по файлу конфигурации - выгрузка и загрузка модулей ядра не при чем, важен факт рестарта службы сети...
auto lo
iface lo inet loopback

auto eth0
iface eth0 inet manual

auto eth1
iface eth1 inet manual

# Агрегация двух физических интерфейсов с учетом протокола LACP
auto bond0
iface bond0 inet manual
bond-mode 1
bond-slaves eth0 eth1
bond-miimon 100
bond-mode 802.3ad
bond-updelay 200
bond-lacp-rate 1
bond-xmit-hash-policy layer2+3

# Выделенный vlan для его использования самим сервером
auto vlan249
iface vlan249 inet manual
vlan-raw-device bond0
# Остальные vlan добавляются автоматически, но при привязке к bond0 - это исключительно для самого сервера

# Выделенный bridge с автоматическим тэгом vlan249 для маппинга на виртуальные машины
# IP-адрес можно будет назначать на уровне каждой виртуальной машины
auto br0
iface br0 inet manual
bridge-ports vlan249
bridge-stp off
bridge-fd 0

# Можно вначале делать bridge над bond, а поверх bridge нарезать vlan:
# - тогда к bridge маппятся интерфейсы виртуальных машин;
# - IP-адрес и тэг vlan придется назначать на уровне каждой виртуальной машины
# - vlan, нарезанные поверх bridge, должны иметь IP-адрес и использоваться самим сервером
 

DepOfDef

New member
Сообщения
8
#3
Primo - на сервере 2 интерфейса - они бондятся, и подключение к 2-м коммутаторам.
Secundo - делал по инструкции. Native - в общей сети (там жесткий адрес), br0.112 для ВМ.
Tertio - да, 112 влан для ВМ.
Last -вот тут хотелось бы по подробнее.
 
Последнее редактирование:

oko

New member
Сообщения
1 257
#6
Имел в виду, что в приложенном скрине настроек не хватает вашего описания eth0 и eth1. Возможно, они у вас вообще не инициализированы и не выставлены. Смотрите, как у меня в спойлере указано...
У вас br0.112, который потом юзается виртуальными машинами, почему-то указан в "manual". С таким параметром этот интерфейс не поднимется. Более того, в чем сакральный смысл и bond назначать 112 vlan, и bridge, поверх bond, тоже назначать 112 vlan? В этом может быть проблема: 112-bond инициализируется раньше 112-bridge и не дает второму назначить тот же самый тэг...
Ориентируйтесь на мой спойлер, посмотрите xgu.ru на предмет bond, bridge, vlan в Debian. AstraLinux в этом отношении вообще ничем не отличается...
После перехода на systemd в Debian давно уже есть забавный баг забавная фича: рестарт networking не обнуляет примененную конфигурацию и не переписывает ее с нуля. Возможны ситуации, при которых при первом рестарте криво описанные интерфейсы не поднимаются или не успевают подняться всем скопом, а последующие рестарты исправляют ситуацию...

ЗЫ Вообще, это же слоеный пирог: "eth -> bond -> bridge -> vlan" или "eth -> bond -> vlan -> bridge"...
 

DepOfDef

New member
Сообщения
8
#7
Возможно, они у вас вообще не инициализированы и не выставлены.
Принял. Завтра проведу эксперимент.
Ориентируйтесь на мой спойлер
- попробую согласно вашего конфига.
Спасибо за оказанное внимание.;)

ЗЫ Делал исходя из конфига предыдущей системы (ред хат), возможно из-за этого и траблы
 
Последнее редактирование:

DepOfDef

New member
Сообщения
8
#8
To oko
Спасибо за направление движения. Получилось.
source /etc/network/interfaces.d/*

auto lo
iface lo inet loopback

auto bond0
iface bond0 inet static
slaves eth0 eth1
bond-mode 802.3ad
bond-miimon 100
bond-downdelay 200
bond-updelay 200
address 192.168.100.2
netmask 255.255.255.0
gateway 192.168.100.1

auto bond0.112
iface bond0.112 inet manual
vlan-raw-device bond0

auto br0.112
iface br0.112 inet manual
bridge_ports bond0.112
bridge_stp off
bridge_fd 0
bridge_waitport 0
bridge_maxwait 0
 

oko

New member
Сообщения
1 257
#9
Не за что...
Хотя, imho, я бы убрал "лишний" bond0.112 и маппил бы бриджи сразу на первичный bond0. Причем вначале br0 (со static IP, если сам гипервизор в "сырой" сети будет выходить без vlan), а поверх br0 нарезал бы vlan: br0.111, br0.112 с использованием manual - их бы пробрасывал в нужные виртуальные машины, исходя из нужной конфигурации изолированной сети для этих машин. А при необходимости связи вирт.машины с самим гипервизором - можно было бы легко маппить интерфейс вирт.машины на br0, а не на br0.vlan...