Adicionadas duas linhas no topo do /etc/iptables.firewall.rules:
-A FORWARD -s 10.0.3.0/24 -o eth0 -j ACCEPT
-A FORWARD -d 10.0.3.0/24 -o lxcbr0 -j ACCEPT
Logo abaixo do filtro
Estou tentando configurar um contêiner lxc em um Ubuntu 13.04 em um linode VPS, mas não consigo pingar nada fora do host.
minha configuração de rede do contêiner é assim:
lxc.network.type = veth
lxc.network.hwaddr = 00:16:3e:04:93:57
lxc.network.ipv4 = 10.0.3.3/24
lxc.network.ipv4.gateway = 10.0.3.1
lxc.network.link = lxcbr0
lxc.network.flags = up
Eu adicionei as duas linhas com ipv4, sem elas eu não pude fazer o ping do host.
No ifconfig do lado do host, mostre isso para a interface bridge e container:
lxcbr0: Link encap:Ethernet HWaddr fe:b2:8c:74:8c:fa
inet addr:10.0.3.1 Bcast:10.0.3.255 Mask:255.255.255.0
inet6 addr: fe80::68aa:7eff:feb4:9959/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:7179 errors:0 dropped:0 overruns:0 frame:0
TX packets:15 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:2294800 (2.2 MB) TX bytes:846 (846.0 B)
vethYNhCg1 Link encap:Ethernet HWaddr fe:b2:8c:74:8c:fa
inet6 addr: fe80::fcb2:8cff:fe74:8cfa/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:311 errors:0 dropped:0 overruns:0 frame:0
TX packets:14 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:64446 (64.4 KB) TX bytes:2904 (2.9 KB)
A interface veth não recebe um ipv4 IP automaticamente, tentei adicionar um eu mesmo, mas não ajudou.
O dmesg registra linhas como esta:
[1466355.530226] iptables denied: IN=lxcbr0 OUT= MAC=ff:ff:ff:ff:ff:ff:00:16:3e:04:93:57:08:00 SRC=0.0.0.0 DST=255.255.255.255 LEN=328 TOS=0x10 PREC=0x00 TTL=128 ID=0 PROTO=UDP SPT=68 DPT=67 LEN=308
Eu tentei várias coisas diferentes, mas nada parece funcionar. Isso é o que eu tentei tanto.
sudo iptables -A FORWARD -i vethYNhCg1 -o eth0 -j ACCEPT
sudo iptables -A FORWARD -i lxcbr0 -o eth0 -j ACCEPT
iptables -A INPUT -i lxcbr0 -p icmp --icmp-type echo-request -j ACCEPT
iptables -A OUTPUT -o lxcbr0 -p icmp --icmp-type echo-request -j ACCEPT
iptables -A INPUT -i lxcbr0 -p icmp --icmp-type echo-reply -j ACCEPT
iptables -A OUTPUT -o lxcbr0 -p icmp --icmp-type echo-reply -j ACCEPT
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o lxcbr0 -j MASQUERADE
Infelizmente eu não sei muito sobre networking, então estou apenas tentando qualquer coisa que eu possa encontrar. Por favor ajude.
Adicionadas duas linhas no topo do /etc/iptables.firewall.rules:
-A FORWARD -s 10.0.3.0/24 -o eth0 -j ACCEPT
-A FORWARD -d 10.0.3.0/24 -o lxcbr0 -j ACCEPT
Logo abaixo do filtro
Tags lxc network-bridge