Bonsoir,
Merci pour ta réponse.
Le problème se situe d'avantage sur le fait que je cherche à me passer des bridges, pas tellement sur le fait de faire du NAT (pas de soucis de ce côté là).
En fait, comme je veux que chaque conteneur soit totalement isolé (au niveau couche 2, ethernet) des autres, et ne puisse (éventuellement) communiquer avec un autre uniquement en passant par la machine hôte (où je peux alors centraliser mes règles de filtrage, éventuellement faire du NAT si le conteneur est autorisé à sortir), je ne veux pas mettre tous mes conteneurs dans un bridge, que je relie à ma machine hôte, mais je veux relier directement chaque interface de chaque conteneur à ma machine hôte.
Techniquement, je pourrai le faire avec les bridges : il faudrait faire un bridge par conteneur, mais c'est pas idéal (un peu lourd à gérer)...
De plus, cette technique fonctionne : lorsqu'on lance un conteneur, une interface est créé sur la machine hôte, et le conteneur communique au niveau 2 avec cette interface (une capture de trame le prouve, un ping du conteneur vers l'hôte, il envoi bien la trame ethernet à l'adresse MAC de l'interface créé sur l'hôte au lancement de conteneur). Donc à ce moment là, j'active le routage, et je NAT éventuellement.
Le truc, c'est que cette interface ne se crée que lors du lancement du conteneur, et elle n'a pas d'IP à ce moment là. Or, je ne peux pas lui attribuer d'IP avant, vu qu'elle n'existe pas au préalable.
D'où ma question existentielle
En fait, on pourrait résumer tout ça par "est-il possible d'attribuer automatiquement une IP sur l'interface créée sur la machine hôte lors du lancement d'un conteneur ?"
Si je comprends bien la doc du lien que tu as mis, ils mettent les conteneurs dans un bridge, et mettent l'interface de ce bridge dans un second bridge contenant également l'interface physique. L’intérêt est de pouvoir faire du NAT pour tous les conteneurs, mais avec une IP différente que celle de la machine hôte (le NAT s'appliquant sur l'interface du premier bridge). C'est cool comme truc, mais pas vraiment ce que je cherche, merci quand même !
edit : heu en fait non, j'ai lu un peu vite... Il bridgent simplement l'interface de la machine hôte avec un second bridge (qui lui contient les if. des conteneurs), et tout est naté en sortie du bridge contenant le bridge des conteneurs et de l'interface physique de la machine hôte. Je comprends pas trop l’intérêt de faire ça du coup ?
Dernière modification par pyrrha (18-06-2012 22:53:45)