Ubuntu 15.04 上の LXC コンテナとブリッジ接続する

Ubuntu 15.04 上の LXC コンテナとブリッジ接続したときのメモ。 ホストの IP は 192.168.0.100 とする。

元の /etc/network/interfaces

/etc/network/interfaces は

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
address 192.168.0.100
network 192.168.0.0
netmask 255.255.255.0
broadcast 192.168.0.255
gateway 192.168.0.1
dns-nameservers 192.168.0.1

と設定されている。

/etc/network/interfaces のブリッジ接続の設定

まず

brctl addbr br0

とする。/etc/network/interfaces を

auto lo
iface lo inet loopback

auto br0
iface br0 inet static
address 192.168.0.100
netmask 255.255.255.0
gateway 192.168.0.1
dns-nameservers 192.168.0.1
bridge_ports eth0
bridge_stp off
bridge_maxwait 10

auto eth0
iface eth0 inet static
address 0.0.0.0

とする。

ifdown eth0
ifup br0

として設定を反映させる。実際には、SSH で作業していたので

reboot

で再起動した。

LXC コンテナの設定

CONTAINER_NAME という一般ユーザのコンテナに対して設定した。 ~/.local/share/lxc/CONTAINER_NAME/config の

lxc.network.link = lxcbr0

の行を

lxc.network.link = br0

に変える。

同様に、デフォルトの設定を変えるなら ~/.config/lxc/default.conf の lxc.network.link を br0 に変更する。

lxc.network.type = veth
lxc.network.link = br0
lxc.network.flags = up
lxc.network.hwaddr = 00:16:3e:xx:xx:xx
lxc.id_map = u 0 100000 65536
lxc.id_map = g 0 100000 65536

/etc/lxc/lxc-usernet の設定

/etc/lxc/lxc-usernet に

<USERNAME> veth br0 10

を追加する。

参考

Tags of current page

,