Eksploruję funkcje LXC w Ubuntu 12.04 i naprawdę chcę skonfigurować taką sieć:
client1: 192.168.56.101/24
lxc-host: 192.168.56.102/24
guest1 192.168.56.201/24
guest2 192.168.56.202/24
guest3 192.166.56.203/24
Chcę tylko „płaskiej” sieci, w której goście mają pełny dostęp do sieci LAN i są widoczni dla klientów. Jestem przyzwyczajony do mostkowania sieci z libvirt / KVM, jak opisano tutaj: http://libvirt.org/formatdomain.html#elementsNICSBridge
Na hoście:
# /etc/network/interfaces
auto br0
iface br0 inet static
address 192.168.56.102
netmask 255.255.255.0
broadcast 192.168.56.255
bridge_ports eth1
lxc.conf dla pierwszego gościa:
# /var/lib/lxc/guest1/config:
lxc.network.type=veth
lxc.network.link=br0
lxc.network.flags=up
lxc.network.hwaddr=00:16:3e:13:48:4e
lxc.network.ipv4=192.168.56.201/24
Wygląda na to, że 192.168.56.201 jest niewidoczny dla świata zewnętrznego, czego nie chcę. Wygląda na to, że muszę zrobić jedną z tych rzeczy:
1) Ręcznie skonfiguruj routing na hoście i gościu
2) Zrób coś hokey ... utwórz wirtualne interfejsy na hoście z wyprzedzeniem i skonfiguruj gości, aby z nich korzystali lxc.network.type=phys
. Nie wiem, czy to by faktycznie działało.
Koncentruję się na Ubuntu, ale odpowiedzi na RHEL / Fedora też byłyby przydatne ...