Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 18/02/2024, à 23:14

thierry_b

[Résolu] problème d'IPs sur les VM de mon hôte Ubuntu

Bonsoir,

j'ai un souci récurrent depuis que j'ai déménagé (je pense qu'il y a aucun rapport mais bon).
Sur mon bureau j'ai différents ordis mon perso +  NUC qui a un Ubuntu hôte et qui est connecté à mon switch, il a pour IP 192.168.1.40.
Sur mon meuble, j'ai un autre switch avec ma livebox et un long cable qui va du premier switch à celui-ci.
Aucun souci entre les deux switchs, vu que depuis mon perso et NUC (depuis l'hôte), je pingue ma livebox et j'ai internet.

Sur mon NUC, ,j'ai un système de virtualisation avec libvirt et kvm et deux VM sous debian 10 et Windows 10 qui sont censés tournés niquel
ça fait plusieurs fois déjà que pour une raison inconnue que mes VM n'obtiennent plus d'IP en 192.168.1.x (sur ma livebox, j'ai un serveur DHCP et je fais l'association avec l'adresse mac).
Normalement, mon système hote et libvirt sont censés fonctionner en mode bridge.

Si j'ouvre le fichier image d'une VM ça me donne :

<interface type='bridge'>
      <mac address='.....'/>
      <source bridge='br0'/>
      <model type='virtio'/>
      <address type='pci' domain='0x0000' bus='0x01' slot='0x00' function='0x0'/>
 </interface>

Mais la commande suivante virsh net-edit default me donne ça: on dirait que ça force le mode NAT non?

<network>
  <name>default</name>
  <uuid>.....</uuid>
  <forward mode='nat'/>
  <bridge name='virbr0' stp='on' delay='0'/>
  <mac address='......'/>
  <ip address='192.168.122.1' netmask='255.255.255.0'>
    <dhcp>
      <range start='192.168.122.2' end='192.168.122.254'/>
    </dhcp>
  </ip>
</network>

ifconfig :

br0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.40  netmask 255.255.255.0  broadcast 192.168.1.255
virbr0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        inet 192.168.122.1  netmask 255.255.255.0  broadcast 192.168.122.255

Ce qui est bizarre c'est que j'avais déjà réussi à résoudre le problème avec des restart / débranchement de cable réseaux...peut-être un peu par hasard....

Je pense que c'est à cause de ce mode nat, que mes VM n'ont pas une IP en 192.168.1.x non?
Même si je force la livebox a donné les bonnes ips, je dirai que le node NAT du bridge bloque.

J'ai essayé de refaire une config propre en mode bridge (en faisant un save de la config avant):

#  virsh net-destroy default
Network default destroyed

# virsh net-autostart --disable default
Network default unmarked as autostarted


# nano bridge_network.xml
<network>
  <name>br0-net</name>
  <forward mode='bridge'/>
  <bridge name='br0'/>
</network>

# virsh net-define bridge_network.xml


# virsh net-start br0-net
Network br0-net started

# virsh net-autostart br0-net
Network br0-net marked as autostarted


# virsh net-list
 Name      State    Autostart   Persistent
--------------------------------------------
 br0-net   active   yes         yes

Malgré les manips, ça ne marche pas. j'ai lancé ma VM debian10 (elle était éteinte) mais elle n'est pas accessible via l'IP 192.168.1.41....et si je fais un ifconfig sur mon Ubuntu, je vois plus mon interface virbr0, c'est normal je pense vu ma nouvelle config.

Graphiquement dans virtlmanager, j'ai été édité la VM debian10 éteinte, j'avais ceci:
Source du réseau: bridge device..
Device name : br0

J'ai sauvegardé le fichier xml de la VM et changé en:
réseau virtuel br0-net
réseau viruel default nat inactive

Si j'édite manuellement le fichier xml de ma VM debian10 ça donne ceci dans la section qui nous intéresse:

<interface type='network'>
      <mac address='....'/>
      <source network='br0-net'/>
      <model type='virtio'/>
      <address type='pci' domain='0x0000' bus='0x01' slot='0x00' function='0x0'/>
    </interface>
# brctl show
bridge name    bridge id        STP enabled    interfaces
br0        8000.xxxx    no        eno1
                            vnet2
docker0        8000.xxxx    no

J'ai tenté de voir si ça pouvait venir de docker en faisant un :
s

udo systemctl stop docker

mais rien n'y fait.....

j'ai désactivé l'autorestart de mes deux VMs et j'ai aussi été modifié graphiquement la conf de la VM Windows 10 pour qu'elle utilise br0-net

redemarré ensuite proprement la machine hote:

 brctl show

bridge name    bridge id        STP enabled    interfaces
br0        8000.xxxxx    no        eno1
docker0        8000.xxxx    no

Je relance la VM debian10:

# virsh net-edit default

me redonne toujours le même xml avec le mode NAT, mais c'est parce que "default" est toujours persistant je pense

# virsh net-list --all
 Name      State      Autostart   Persistent
----------------------------------------------
 br0-net   active     yes         yes
 default   inactive   no          yes

Ha....par contre, en me connectant via  virtmanager sur la VM windows 10, je vois mon IP statique 192.168.1.42
mais elle est toujours inaccessible en remote desktop.
je l'avais mise en statique sur cette seconde VM contrairement à la VM debian 10.

Donc à priori, ça vient pas de la livebox, vu que j'ai aussi le souci avec la livebox, qui a bien l'IP statique....

Comme j'avais vu une interface docker0, je tente aussi de supprimer docker que je n'avais pas commencé à utiliser et reboot de la machine....

Edit:  Voilà...après toutes mes investigations, ça venait de Docker....Pourtant, je l'avais mis avant de déménager mais bon...je pense que ça introduit un bug un peu aléatoire qui a l'air d'être totalement résolu on dirait maintenant
En fait, je testais au fur et à mesure, en préparant le message que j'allais vous envoyer...
Une idée pour résoudre le conflit entre l'interface de Docker et libvirt si je décidais de le réinstaller?
Sinon je le testerai peut-être depuis une VM pour ne pas me prendre la tête quand j'aurai le temps.

Merci smile

Dernière modification par bruno (Le 24/02/2024, à 08:11)

Hors ligne

#2 Le 18/02/2024, à 23:34

jplemoine

Re : [Résolu] problème d'IPs sur les VM de mon hôte Ubuntu

J'ai aussi renoncé à avoir des VM en mode pont (bridge) avec  libvirt et kvm. Je laisse les VM en mode NAT.
Je peux me connecter via SSH en utilisant la machine physique comme rebond ( paramètre J. ça complexifie la commande mais ça fonctionne).

Par contre, celles de virtualbox fonctionnent très bien en mode  pont (bridge).


Membre de l'ALDIL (Association Lyonnaise pour le Développement de l'Informatique Libre)
- En pro, après 20 ans de développement, administrateur Linux / Unix depuis Avril 2019.
- En privé, sous Ubuntu-Xubuntu depuis 2009.

Déconnecté jusqu’à nouvel ordre

Hors ligne

#3 Le 18/02/2024, à 23:39

thierry_b

Re : [Résolu] problème d'IPs sur les VM de mon hôte Ubuntu

Re, désolé, j'ai mis pas mal de blabla mais comme dit à la fin, en venait, le problème venait de docker...

Purge de docker et redémarrage de ma machine hôte et plus aucun soucis en mode bridge entre Ubuntu et les VM et elles sont enfin accessible sur tout mon réseau smile

Dernière modification par thierry_b (Le 19/02/2024, à 00:31)

Hors ligne