Forum Linux.debian/ubuntu Réseau sous Qemu/KVM

Posté par  . Licence CC By‑SA.
1
16
mai
2021

Bonjour à tou.te.s,

J'apprends à utiliser Qemu/KVM avec Virt Manager et j'aimerais savoir s'il est possible de monter un réseau entre plusieurs VM sans routeur externe car je n'ai accès à internet qu'avec mon smartphone en mode modem ou en partage wifi et parfois via ethernet si une bonne âme m'accueille chez elle?

Je pose cette question car j'ai cru comprendre que le bridge ne peut pas fonctionner sans ethernet.

Si ce n'est pas le cas, pourriez-vous me donner des pistes pour avoir un réseau inter VM qui puisse fonctionner dans tous les cas de figures.

Merci de m'avoir lu.

  • # Possible, oui

    Posté par  . Évalué à 2.

    C'est possible tant que les VMs sont sur le même serveur physique, même si celui-ci est isolé niveau réseau.

    Tu peux même te faire des VMs dans des réseaux différents, et une VM qui fasse routeur entre ces réseaux, tout ça sur le même serveur physique.

    • [^] # Re: Possible, oui

      Posté par  . Évalué à 3. Dernière modification le 17 mai 2021 à 00:13.

      Yes.

      A savoir que différents réseaux et du routage implique soit :
      - D'ajouter une route sur le routeur qui va gérer la connexion à internet, afin qu'il sache renvoyer les paquets vers le réseau des VMs.
      - De faire du NAT, ce qui est certainement plus simple pour utiliser diverses connexions en sortie vers le net.

      Par exemple, on a les interfaces réseaux suivantes :
      - wlan0 le réseau de la box ou du partage de connexion (par ex 192.168.0.x/24) ou encore eth0 quand tu es parfois en ethernet.
      - vmbr0 ton interface bridge virtuel (par ex 10.10.10.0/24)
      il est possible de faire en sorte que ta machine route les deux réseaux entre eux en lançant la commande echo 1 > /proc/sys/net/ipv4/ip_forward.

      Le routeur qui permet d'accéder à internet ne saura pas que pour joindre le réseau des VMs en 10.10.10.x il faut passer par 192.168.0.trucmuche sur le réseau. Ni les autres machines de ce réseau qui pourraient s'adresseront à lui pour cela.

      Deux solutions donc :
      - Ajouter une route dans le routeur de ce réseau au cas par cas.
      - Utiliser du nat pour que les communications depuis le réseau des VMs se fasse avec l'adresse 192.168.0.trucmuche dont on dispose sur ce réseau.
      Avec iptables en suivant l'exemple d'un réseau dédié aux VMs ca donnerai un iptables -t nat -A POSTROUTING ! -d 10.10.10.0/24 -s 10.10.10.0/24 -j MASQUERADE.

    • [^] # Re: Possible, oui

      Posté par  . Évalué à 7. Dernière modification le 17 mai 2021 à 04:48.

      Bonjour

      Sur mon système debian, après avoir installé le paquetage debian virt-manager
      toutes les machines virtuelles que je créé sont, par défaut, dans le même réseau :
      192.168.122.0/24

      Par défaut, les machines virtuelles peuvent communiquer entre-elles par ce réseau
      et chaque machine virtuelle peut accéder à la machine hôte en utilisant l'adresse 192.168.122.1
      et la machine hôte peut accéder à chaque machine virtuelle en utilisant leur adresse dans le réseau 192.168.122.0/24

      Et que la machine hôte soit ou pas connectée à une box par WiFi ou par l'intermédiaire d'un cordon USB relié à mon smartphone qui est lui même connecté à internet (par 3G, 4G, WiFi ou autre) ou par un cordon RJ45 ou par quoi que ce soit d'autre, mes machines virtuelles pourront toujours communiquer entre elles et avec la machine hôte,

      Et si la machine hôte est connectée à internet, les machines virtuelles qu'elle héberge pourront, par défaut, accéder à internet.


      Voir la page suivante : https://wiki.libvirt.org/page/VirtualNetworking

      Je n'ai rien eu à faire d'autre que installer le paquetage virt-manager
      et mettre mon compte utilisateur dans le groupe libvirt

  • # Commentaire supprimé

    Posté par  . Évalué à 1. Dernière modification le 18 mai 2021 à 11:11.

    Ce commentaire a été supprimé par l’équipe de modération.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.