Как сказано в заголовке, как мне отредактировать конфигурацию контейнера lxc, чтобы использовать на хосте интерфейс bond0 с псевдонимом? Вот что у меня сейчас в файле / etc / network / interfaces:
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
#allow-hotplug eth0
#iface eth0 inet static
# address 192.168.100.90/22
# gateway 192.168.101.1
auto bond0
iface bond0 inet static
address 192.168.100.90/22
gateway 192.168.101.1
bond-slaves eth0 eth1
bond-mode active-backup
bond-miimon 100
bond-primary eth0 eth1
Могу я добавить это в конце:
auto bond0:101
iface bond0:101 inet static
address 192.168.100.101
netmask 255.255.252.0
и сделать так, чтобы контейнер lxc использовал этот адрес? Мне не нужен мост, я просто хочу host и lxc cont. в той же сети. Я не знаю, какие параметры конфигурации входят в файл / var / lib / lxc / lxc_cont / config. Я пробовал это
lxc.network.type = phys
lxc.network.flags = up
lxc.network.link = bond0:101
lxc.network.hwaddr = 00:00:00:fe:fe:01
lxc.network.ipv4 = 192.168.100.101/22
lxc.network.ipv4.gateway = 192.168.101.1
но получите эту ошибку:
lxc-start 20160912185144.642 ERROR lxc_conf - conf.c:lxc_assign_network:3044 - failed to move 'bond0:101' to the container : Invalid argument
lxc-start 20160912185144.642 ERROR lxc_start - start.c:lxc_spawn:1197 - failed to create the configured network
В будущем я бы добавил в интерфейс bond0 другие контейнеры, например:
auto bond0:102
iface bond0:102 inet static
address 192.168.100.102
netmask 255.255.252.0
auto bond0:102
etc.
Раньше я настраивал контейнеры с использованием мостового интерфейса, но я застрял в этой связи.
Любая помощь или указатели приветствуются!
Спасибо за ваше время!
P.S. мне кажется, что мой вопрос похож на этот
Была некоторая помощь от коллеги-администратора на работе. Это рабочая конфигурация:
# interfaces file
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
#allow-hotplug eth0
#iface eth0 inet static
# address 192.168.100.90/22
# gateway 192.168.101.1
auto bond0
iface bond0 inet manual
bond-slaves eth0 eth1
bond-mode active-backup
bond-miimon 100
bond-primary eth0 eth1
auto br0
iface br0 inet static
address 192.168.100.90
netmask 255.255.252.0
gateway 192.168.101.1
bridge-ports bond0
bridge-fd 0
bridge-stp off
bridge-maxwait 5
Значит вам нужно переместить ip-адрес на мост. lxc-config выглядит так:
...
lxc.network.type = veth
lxc.network.flags = up
lxc.network.link = br0
lxc.network.name = eth0
lxc.network.mtu = 1500
lxc.network.hwaddr = 00:00:00:fe:fe:01
lxc.network.ipv4 = 192.168.100.91/22
lxc.network.ipv4.gateway = 192.168.101.1
...
Обычно я также редактирую файл интерфейсов для гостя, хотя в этом нет необходимости, поскольку приведенная выше конфигурация управляет назначением ip:
# guest interfaces file
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 192.168.100.91
netmask 255.255.252.0
Таким образом, теперь хост-машина и будущие гостевые контейнеры lxc будут находиться в одной сети. Для другого контейнера lxc вы просто назначаете следующий ip в подсети. Думаю, вам не нужны macvlans, я пробовал использовать их, но не смог заставить его работать.
Надеюсь, кто-то сочтет это полезным, если они это сделают, я отмечу это как принятый ответ.
Если я пропустил какую-то информацию, дайте мне знать.