4 votes

linux container bridge filters ARP reply

J'utilise le noyau 3.0, et j'ai configuré un conteneur linux qui est relié à une interface tap de mon ordinateur hôte. Voici la configuration du pont :

:~$ brctl show bridge-1
bridge name             bridge id               STP enabled     interfaces
bridge-1                8000.9249c78a510b       no              ns3-mesh-tap-1
                                                                vethjUErij

Mon problème est que ce pont laisse tomber les réponses ARP provenant de l'interface ns3-mesh-tap-1. Au contraire, si je remplis statiquement les tables ARP et que je fais un ping directement, tout fonctionne, donc cela doit être lié à l'ARP.

J'ai lu des problèmes similaires dans des articles connexes, et j'ai essayé les solutions qui y sont expliquées, mais rien ne semble fonctionner. En particulier :

~$ grep net.bridge /etc/sysctl.conf
net.bridge.bridge-nf-call-arptables = 0
net.bridge.bridge-nf-call-iptables = 0
net.bridge.bridge-nf-call-ip6tables = 0
net.bridge.bridge-nf-filter-vlan-tagged = 0
net.bridge.bridge-nf-filter-pppoe-tagged = 0

arptables et ebtables ne sont pas installés.

iptables FORWARD est configuré pour accepter :

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination

Les interfaces pontées sont réglées sur PROMISC :

~$ ifconfig
ns3-mesh-tap-1 Link encap:Ethernet  HWaddr 1a:c7:24:ef:36:1a
           ...      
           UP BROADCAST PROMISC MULTICAST  MTU:1500  Metric:1

vethjUErij Link encap:Ethernet  HWaddr aa:b0:d1:3b:9a:0a
           ....
           UP BROADCAST RUNNING PROMISC MULTICAST  MTU:1500  Metric:1

Les macs appris par le pont sont corrects (vérifiés avec brctl showmacs).

Toute idée sur ce que je fais de travers serait grandement appréciée.

Meilleures salutations

Daniel

2voto

Dani Camps Points 301

J'ai finalement pu résoudre le problème. Ce qui se passait, c'est que derrière le pont, j'avais un réseau maillé bogué qui rediffusait la requête ARP dans le segment Ethernet d'où elle venait, ce qui faisait que le pont assignait cette adresse source à un port différent, et donc quand la réponse ARP revenait, le pont ne la transmettait pas au bon port.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X