web-dev-qa-db-fra.com

conteneur lxc pas de trafic sortant

J'essaye d'installer un conteneur de LXC sur un Ubuntu 13.04 sur un VPS de linode, mais je ne peux pas cingler n'importe quoi en dehors de mon hôte.

ma configuration de réseau de conteneurs ressemble à ceci:

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

J'ai ajouté les deux lignes avec ipv4 moi-même, sans elles je ne pourrais pas envoyer de requête ping à l'hôte.

Ifconfig affiche l'hôte pour l'interface pont et conteneur:

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)

L’interface veth n’obtient pas automatiquement une adresse IP ip4, j’ai essayé d’en ajouter une moi-même mais cela n’a pas aidé.

dmesg enregistre les lignes comme ceci:

[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

J'ai essayé beaucoup de choses, mais rien ne semble fonctionner. C'est ce que j'ai essayé de faire.

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

Malheureusement, je ne connais pas beaucoup de choses sur le réseautage, alors je ne fais que tout essayer. S'il vous plaît aider.

Ajout de deux lignes en haut de /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

Juste en dessous de * filtre