Назад | Перейти на главную страницу

Сеть LXC с публичным IP

Я установил LXC на сервере ubuntu 12.04, используя эта ссылка. Он был успешно установлен, и я могу войти в систему, используя ubutu / ubuntu в качестве имени пользователя и пароля. Затем я попытался настроить сеть для контейнера LXC.

Я изменил в / etc / network / interface как

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
        address 125.67.43.100
        netmask 255.255.255.0
        broadcast 178.33.40.255
        gateway 125.67.43.1

Содержимое / var / lib / lxc / mycontainer / config:

lxc.utsname = mycontainer
lxc.mount = /var/lib/lxc/test/fstab
lxc.rootfs = /var/lib/lxc/test/rootfs


lxc.network.type = veth
lxc.network.flags = up
lxc.network.link = br0
lxc.network.name = eth0
lxc.network.veth.pair = vethmycontainer
lxc.network.ipv4 = 125.67.43.102
lxc.network.hwaddr= 02:00:00:86:5b:11

lxc.devttydir = lxc
lxc.tty = 4
lxc.pts = 1024
lxc.arch = amd64
lxc.cap.drop = sys_module mac_admin mac_override
lxc.pivotdir = lxc_putold

Контейнеры и т. Д. / Сеть / интерфейс

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
        address 125.67.43.102
        netmask 255.255.255.0
        broadcast 178.33.40.255
        gateway 125.67.43.1

Вот как моя конфигурация

-------------        -----------         -----------   
| LXC       | -----> | Host OS | ------> | Gateway |
| Container |        | Ubuntu  |         |         | 
-------------        -----------         ----------- 
eth0 125.67.43.102   br0 <-> eth0        NAT GW:        
gw 125.67.43.1       br0 125.67.43.100   125.67.43.1    
                     gw 125.67.43.1

Ping 125.67.43.100   ping 125.67.43.1
ok                   OK
Ping 125.67.43.1     ping 125.67.43.102
FAIL                 OK

Контейнер LXC не знает внешнего хоста, есть идеи, что я здесь сделал не так?

Дополнительная информация

пользователь @ хост $ cat / proc / sys / net / ipv4 / ip_forward равен 1

Я добавил правило Nat

ip_tables -t nat -A POSTROUTING -s 125.67.43.102 -o eth0 -j MASQUERADE

Примечание: IP-адреса, которые я использовал выше, не являются оригинальными

Возможно, эта ссылка ответит на ваш вопрос: https://wiki.debian.org/LXC/SimpleBridge

Похоже, вам следует настроить br0 вместо eth0 на хосте (первый блок кода в вашем примере).

Я только догадываюсь!

Ваш широковещательный адрес не соответствует сети, я бы использовал 125.67.43.255 в приведенных выше примерах.

Ваш br0 должен быть шлюзом вашего контейнера. Также проверьте синтаксис lxc.network.ipv4. Может стоит поставить маску подсети.