Сейчас для домашней сети есть запасной канал выхода в интернет - это usb Yota модем. Модем подключается к ноде Proxmox, на который запущена виртуальная машина с OPNsense. В Proxmox это выглядит как отдельный bridge, но он привязан к ноде, в которую воткнут модем.
Зачем
Для поддержки удобной миграции машин (в идеале автоматически, в режиме HA) нужно отказаться от физического подключения модема к ноде Proxmox и дать возможность работать сразу по сети, доступной на всех трех нодах.
Самое простое решение
Самым простым решение, как мне кажется, является покупка 4g модема с сетевым портом или роутера с лотком для SIM-карты. Но для этого нужно искать, выбирать и платить деньги. У меня же уже есть модем Yota, есть Orange Pi Zero2 c usb и ethernet портом, нужно только собраться и настроить их для работы вместе.
Сетевой план
Так как порт ethernet только одни, это будет своеобразная вариация на тему Router-on-a-Stick. Максимальные скорости для Yota были намерены плюс-минус такими:
А значит имеющегося gigabit-ного порта хватит с запасом. Можем в момент подключения будет создавать виртуальный ethernet адаптер в системе. Этот вирутальный адаптер раздает ip адреса по DHCP. Что бы не пересекаться с DHCP от ДОМ.РУ или DHCP локальной сети, нужно закинуть виртуальный интерфейс в виртуальную сеть (VLAN). Инфраструктура в виде управляемых свитчей уже есть, и “донести” интернет до кластера внутри VLAN не представляется чем-то сложным. Но и доступ из локальной сети к Zero2 нужно оставить. Итого план:
- создать
bridge
; - создать
vlan
подключение на Zero2; - добавить в
bridge
подключение от модема и подключение сvlan
.
Настройка
На Zero2 установлен Armbian 24.8.4, и есть NetworkManager (nmcli
), именно через него и
будет производиться настройка. Для начала создаем bridge
:
|
|
type bridge
- установка типа подключения какbridge
;con-name yotabr
- название подключения;ifname yotabr
- название интерфейса для привязки соединения.
Далее добавляем VLAN подключение сразу в новый bridge
yotabr
:
|
|
type vlan
- установить тип подключенияvlan
;con-name end0.10
- название подключения, обычно состоит из устройства и номераvlan
разделенных точкой;dev end0
- основное физическое устройство, на котороеvlan
будет находиться;id 10
- номерvlan
(vlan tag
);master yotabr
- указывает, к какомуbridge
интерфейсу подключиться это соединение.
Далее нужно добавить второй интерфейс в bridge
, а именно модифицировать интерфейс созданный модемом (
enxac50431aeefd
):
|
|
master yotabr
- указывает, к какомуbridge
интерфейсу подключиться это соединение.
После этого нужно перезагрузить все соединения:
|
|
Вывод списка соединений:
|
|
Итог
Теперь на свитч попадают 2 сети от Zero2:
vlan 1
- общая локальная сеть;vlan 10
- сеть с доступов в интернет Yota.
Благодаря этому сам Zero2 остается доступным из локалки, а интернет “доставляется” до OPNsense и не виден из общей сети. На уровне подключения виртуальной машины в Proxmox теперь нужно только выставить нужный тег: