Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).

#1 06-10-2022 15:46:16

interfaces
Membre
Distrib. : Debian Bullseye
(G)UI : pas de WM
Inscription : 06-10-2022

[RESOLU] adresse ip manuelle sur un bridge

Bonjour à tous,
J'ai quelques années d'expérience sur un serveur Debian, mais là je m'arrache les cheveux... Et j'ai l'impression que c'est pour une raison surement bête et évidente que ma configuration ne fonctionne pas.
Sur mon petit serveur maison, j'ai un conteneur LXC. Lui n'a pas de problème.
Par contre, le système hôte n'arrive pas à régler correctement son adresse IP fixe depuis que j'ai activé ce conteneur.
Je vous remets ici l'ordre dans lequel j'ai fait des modifications:
- mon système était initialement réglé en IP fixe avec "lxcbr0" comme interface réseau. lxcbr0 est réglé pour être bridgé avec l'interface ethernet réelle.
- je crée mon container, et je lui règle aussi une IP fixe, et je le règle pour qu'il démarre automatiquement.
- je redémarre pour test
- pas de réseau sur l'hôte, mais le container est accessible sur sa propre IP
- je me connecte sur une console locale, je vois que l'IP de l'hôte n'est pas bonne (10.0.3.1 de mémoire)
- je lance systemctl restart networking.service -> l'interface lxcbr0 prend la bonne IP (192.168.1.200)
Je ne comprends donc pas ce qui se passe. J'ai en fait l'impression que ma config de l'hote est bonne, mais que c'est le démarrage du container qui "déconfigure" mon interface lxcbr0...
J'ai donc quelquepart une incohérence entre les 2, ou l'une qui démarre en premier alors qu'elle devrait le faire en 2ieme ?

Voilà ce que j'ai dans /etc/network/interfaces de l'höte (zotac):
auto lxcbr0
iface lxcbr0 inet static
  bridge-ports enp2s0
  address 192.168.1.200
  gateway 192.168.1.254
  dns-nameservers 192.168.1.254

voilà la config de mon container:
root@zotac:~# cat /var/lib/lxc/jeedom/config
lxc.start.auto = 1

lxc.net.0.type = veth
lxc.net.0.hwaddr = 00:16:3e:76:0a:16
lxc.net.0.link = lxcbr0
lxc.net.0.flags = up
lxc.apparmor.profile = generated
lxc.apparmor.allow_nesting = 1
lxc.include=/usr/share/lxc/config/debian.common.conf
lxc.rootfs.path = dir:/var/lib/lxc/jeedom-vms/jeedom20221006/rootfs

# Container specific configuration
lxc.tty.max = 4
lxc.uts.name = jeedom20221006
lxc.arch = amd64
lxc.pty.max = 1024

Et pour finir le /etc/network/interfaces de la debian dans le container
root@zotac:~# cat /var/lib/lxc/jeedom/rootfs/etc/network/interfaces
auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
  address 192.168.1.201
  gateway 192.168.1.254
  dns-nameservers 192.168.1.254


Avez vous une idée pour m'aider ?
Merci

Dernière modification par interfaces (08-10-2022 13:43:45)

Hors ligne

#2 06-10-2022 19:52:58

raleur
Membre
Inscription : 03-10-2014

Re : [RESOLU] adresse ip manuelle sur un bridge

interfaces a écrit :

- je redémarre pour test


Redémarre quoi ?

interfaces a écrit :

J'ai en fait l'impression que ma config de l'hote est bonne, mais que c'est le démarrage du container qui "déconfigure" mon interface lxcbr0


Pour le vérifier il devrait suffire de comparer la configuration de l'interface avant et après le démarrage du conteneur.
Par ailleurs, l'adresse indésirable apparaît-elle dans les logs (système, LXC si séparés) ?


Il vaut mieux montrer que raconter.

Hors ligne

#3 06-10-2022 20:01:53

Cram28
Adhérent(e)
Lieu : Eure-et-Loir
Distrib. : Debian bullseye (11)
Noyau : Linux 5.10.0-19-amd64
(G)UI : Xfce
Inscription : 14-09-2020

Re : [RESOLU] adresse ip manuelle sur un bridge

Bonsoir,

Il me semble que la configuration d'une adresse fixe d'un conainer LXC se fait dans son fichier de config., pas dans le container lui-même.

Un truc du genre, dans /var/lib/lxc/jeedom/config:

lxc.net.0.ipv4.address = 192.168.1.201



@+


Travaille du chapeau: "Je sais que vous croyez comprendre ce que vous pensez que j'ai dit, mais je ne suis pas certain que vous réalisiez que ce que vous avez entendu n'est pas exactement ce que je voulais dire..."

Hors ligne

#4 08-10-2022 10:29:43

interfaces
Membre
Distrib. : Debian Bullseye
(G)UI : pas de WM
Inscription : 06-10-2022

Re : [RESOLU] adresse ip manuelle sur un bridge

Bonjour
Merci pour vos 2 réponses.
Grâce à râleur, j'ai mieux cherché dans les logs. Et grâce à Cram28, j'ai fouillé du côté de lxc-net.
Bref, mon problème était tout bête. Dans /etc/default/lxc-net j'avais la variable USE_LXC_BRIDGE = "true"
C'était une erreur. Je ne me suis pas méfié, mais à cause de ça lxc-net démarrait un dnsmasq sur le réseau 10.0.3.0
En mettant sur false, j'ai maintenant la configuration souhaitée : mon container utilise le bridge de l'hôte directement en étant sur le même réseau.
Une remarque"gratuite": jai l'impression que le nom de cette option est ambigu...
Bon tout est rentré dans l'ordre.
Bonne journée à tous.

Hors ligne

#5 08-10-2022 11:46:44

Cram28
Adhérent(e)
Lieu : Eure-et-Loir
Distrib. : Debian bullseye (11)
Noyau : Linux 5.10.0-19-amd64
(G)UI : Xfce
Inscription : 14-09-2020

Re : [RESOLU] adresse ip manuelle sur un bridge

Bonjour,

Ah ben zut ! Donc les ponts se "marchaient dessus"... wink

Personnellement, j'utilise les deux:

  • lxcbr0 "natif" avec dnsmasq

  • br0 défini sur l'hôte

=> Un p'tit schéma ici.

Et via la config de chaque container, je choisi, selon le degré d'«isolation» que je souhaite pour mon container.


...
lxc.net.0.type = veth
lxc.net.0.link = lxcbr0
#lxc.net.0.link = br0
lxc.net.0.flags = up
lxc.net.0.hwaddr = 00:16:3e:xx:xx:xx
...
 


-> Avec lxcbr0, l'adresse est fixée par le DHCP dnsmasq et sa configuration ('/etc/default/lxc-net' et '/etc/lxc/dnsmasq.conf'). Le container est isolé sur le sous-réseau 10.0.3.x (par défaut). Il peut être accessible sur le LAN en NATant le(s) port(s) des services du container;
-> Avec br0, l'adresse est récupérée depuis la box/le routeur sur le LAN ou fixée comme tu le fais; le container et ses services sont accessibles "en direct" sur le LAN. Mais perso, je passe par la config, pas par la définition d'interface dans le container lui-même. En fait même pas: je configure DHCP du routeur si je veux une adresse fixe...

«Juste» des choix... Ça roule smile

PS: un «résolu» dans le titre du premier post du fil ?

Merci, @+


Travaille du chapeau: "Je sais que vous croyez comprendre ce que vous pensez que j'ai dit, mais je ne suis pas certain que vous réalisiez que ce que vous avez entendu n'est pas exactement ce que je voulais dire..."

Hors ligne

Pied de page des forums