Ich möchte sowohl IPv6 extern auf allen meinen Containern als auch IPv4 extern nur auf den Hosts verwenden. Ich verwende Ubuntu 12.04 64bit. Für IPv4 auf dem Container verwende ich das DHCP, das mit der lxc-Installation geliefert wurde.
Ich habe das Setup zum Laufen gebracht, bin mir aber nicht sicher, ob es richtig ist. Könnt ihr etwas Licht ins Dunkel bringen?
Auf meinem Container-Host verwende ich:
auto lo
iface lo inet loopback
address 127.0.0.1
netmask 255.0.0.0
auto eth0
iface eth0 inet manual
auto br-lxc
iface br-lxc inet static
address ipv4
netmask 255.255.255.0
gateway ipv4 gw
bridge_ports eth0
iface br-lxc inet6 static
address exte:rnal::ipv6
netmask 48
gateway exte:rnal:ipv6:gw
In meiner Containerkonfiguration:
lxc.network.type= veth
lxc.network.flags= up
lxc.network.link= br-lxc
lxc.network.hwaddr= random-mac
lxc.network.name = eth0
lxc.network.type=veth
lxc.network.link=br-lxc-1
lxc.network.flags=up
lxc.network.hwaddr= random-mac
lxc.network.name = eth1
Und in meinen Behältern verwende ich:
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet6 static
address ipv6
netmask 48
gateway ipv6 gw
auto eth1
iface eth1 inet dhcp
Und ich bekomme in den Container:
$ip a|grep inet
inet6 externalipv6:33/48 scope global
inet6 internalipv6::78/64 scope link
inet 10.0.3.52/24 brd 10.0.3.255 scope global eth1
inet6 internalipv6::28/64 scope link
inet 127.0.0.1/8 scope host lo
inet6 ::1/128 scope host
- Ist das richtig?
- Gibt es eine bessere Möglichkeit, IPv6 mit den Containern zu verbinden?
Wenn ich das Netzwerk neu starten muss, erhalte ich:
$ /etc/init.d/networking restart
* Running /etc/init.d/networking restart is deprecated because it may not enable again some interfaces
* Reconfiguring network interfaces...
Device "br-lxc" does not exist.