В данной статье описан пример ручной настройки сети в дата-центре Hetzner.
В Hetzner используется port security - функция коммутатора, позволяющая указать MAC-адреса хостов, которым разрешено передавать данные через порт. При такой настройке порт не передает пакеты, если MAC-адрес отправителя не указан как разрешенный.
Виртуальный сервер на основе виртуализации KVM имеет отдельный MAC адрес, а значит пакеты будут блокироваться на коммутаторе.
Более того, при добавлении узла кластера, VMmanager перенастроит сеть. Из-за ограничений дата-центра, описанных выше, связь с сервером будет потеряна. Чтобы обойти это огарнчиение, требуется выполнить ручную настройку сети, которая будет зависеть от того, выделена ли отдельная подсеть для сервера в дата-центре Hetzner или выделено несколько дополнительных IP адресов.
Option BuildBridgesManually
/usr/local/mgr5/sbin/mgrctl -m vmmgr exit
auto lo iface lo inet loopback auto eth0 iface eth0 inet static auto vmbr0 iface vmbr0 inet static address <Основной IP адрес машины> netmask <Маска основного IP адрес машины> gateway <Шлюз, выданный Hetzner для основного IP> bridge_ports eth0
bridge_stp off
bridge_fd 1
bridge_hello 2
bridge_maxage 12
service networking restart
Option BuildBridgesManually
/usr/local/mgr5/sbin/mgrctl -m vmmgr exit
auto lo iface lo inet loopback auto eth0 iface eth0 inet static
auto vmbr0 iface vmbr0 inet static address <Основной IP адрес машины> netmask <Маска основного IP адрес машины> gateway <Шлюз, выданный Hetzner для основного IP> bridge_ports eth0
bridge_stp off
bridge_fd 1
bridge_hello 2
bridge_maxage 12
auto vmbr0:0
iface vmbr0:0 inet static
address <Шлюз подсети. Например, для сервера выделена сеть 10.10.10.0/29. Для шлюза возьмем первый адрес 10.10.10.1>
netmask <Маска основного IP адрес машины>
net.ipv4.ip_forward = 1
service networking restart