И это всё МОЁ

Доброго здоровья ЛОРчане!

Сначала общий расклад есть дедик под Proxmox и две виртуалки KVM.

3 белых IP.

Шлюзом в мир на виртуалках служит бридж на гипервизоре.

Конфиг хоста

auto lo
iface lo inet loopback

auto enp4s0
iface enp4s0 inet static
address 23.40.141.243
netmask 255.255.255.224
gateway 5.9.141.225
up route add -net 23.40.141.224 netmask 255.255.255.224 gw 23.40.141.225 enp4s0

auto vmbr0
iface vmbr0 inet static
address 23.40.141.243
netmask 255.255.255.255
bridge_ports none
bridge_stp off
bridge_fd 0
bridge_maxwait 0
pre-up brctl addbr vmbr0
up ip route add 23.40.141.251/32 dev vmbr0
up ip route add 23.40.141.252/32 dev vmbr0

auto vmbr1
iface vmbr1 inet static
address 10.20.30.1
netmask 255.255.255.0
bridge_ports none
bridge_stp off
bridge_fd 0
post-up iptables -t nat -A POSTROUTING -s '10.20.30.0/24' -o enp4s0 -j MASQUERADE
post-down iptables -t nat -D POSTROUTING -s '10.20.30.0/24' -o enp4s0 -j MASQUERADE

Конфиг виртуалки

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug ens18
#auto ens18
iface ens18 inet static
address 23.40.141.252/32
gateway 23.40.141.243
post-up route add default gw 23.40.141.243
pre-down route del default gw 5.9.141.243
# dns-* options are implemented by the resolvconf package, if installed
dns-nameservers 1.1.1.1 8.8.8.8
dns-search example.com

allow-hotplug ens19
#auto ens19
iface ens19 inet static
address 10.20.30.3
netmask 255.255.255.224
gateway 10.20.30.1
post-up route add default gw 10.20.30.1
pre-down route del default gw 10.20.30.1

При таком раскладе все работает. Вчера была другая проблема.

Если настроить виртуалку немного «по-старинке», вот так

auto lo
iface lo inet loopback

auto ens18
iface ens18 inet static
address 23.40.141.252
netmask 255.255.255.255
dns-nameservers 1.1.1.1 8.8.8.8
post-up ip route add dev ens18
post-up ip route add default via 23.40.141.243 dev ens18
pre-down ip route del default via 23.40.141.243 dev ens18
pre-down ip route del 23.40.141.243 dev ens18


auto ens19
iface ens19 inet static
address 10.20.30.3
netmask 255.255.255.0
gateway 10.20.30.1

я не могу сделать перезапуск через systemctl restart networking, падает с ошибкой

Starting Raise network interfaces...
июн 17 16:17:33 node42 ifup[661]: RTNETLINK answers: File exists
июн 17 16:17:33 node42 ifup[661]: ifup: failed to bring up ens18

Первично настройки брал отсюда

Итак вопрос №1, почему не работает networking при таких настройках?

Вопрос №2, когда меняю auto на allow-hotplug, то default route на ВМ прописывается случайным образом (чаще всего неправильно), почему так?

В результате ВМ теряют выход в Сеть, т.к. маршрут по-умолчанию идеть через vmbr1

Пришлось его явно прописывать в текущих, рабочих конфигах.

Все работает, но я требую объяснений :-)

Вчера полдня потратил на выяснение этих деталей.

P.S. На виртуалках тоже Debian Buster minimal








 , , ,