Проверено на debian wheezy, ядро 3.2
90% копипаст с http://wiki.debian.org/LXC/VlanNetworking
Сначала ставим vlan и bridge-utils
apt-get install vlan bridge-utils
добавляем в /etc/network/interfaces
iface eth0.123 inet manual
auto br0.123
iface br0.123 inet static
bridge_ports eth0.123
bridge_fd 0
bridge_maxwait 0
address 172.16.100.1
netmask 255.255.255.0
И стартуем его
ifup br0.123
добавляем в конфиг контейнера строчки
lxc.network.type = veth
lxc.network.flags = up
lxc.network.link = br0.123
lxc.network.name = eth0
lxc.network.ipv4 = 172.16.100.2/24
lxc.network.veth.pair = veth-container_name
lxc.network.ipv4.gateway = 172.16.100.1
(айпи адреса, номер влана и имя сетевого интерфейса контейнера можно делать любыми)
посте старта контейнера системы смогут общаться друг с другом, чего может быть достаточно, но система контейнера не сможет иметь доступ к внешним ресурсам интернета, чтобы настроить роутинг между виртуальной и реальной сетями, в основной системе выполняем
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
Чтобы не писать эти строчки каждый раз при старте системы:
1: разкоментируйте строчку
net.ipv4.ip_forward=1
в файле /etc/sysctl.conf
2: Поставьте пакет iptables-persistent. Если вы написали вышеуказанную строчку, то установщик сам сохранит вышеуказанное правило, иначе выполните строчки
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables-save > /etc/iptables/rules.v4