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

Debian-facile

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

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

#1 13-02-2020 18:30:07

bertaudmarc
Membre
Lieu : suisse
Distrib. : Buster 10.6
Noyau : Linux 4.19.0-12-amd64
(G)UI : Xfce 4.12
Inscription : 19-04-2016

bonding-bridge-KVM-wifi

Bonjour,

Je souhaite créer un bonding de deux interfaces (ethernet et wifi) puis créer des machines virtuelles pouvant accéder à internet.
Contexte: un portable avec Debian 10.

enp0s25 -|
                 | -- bond0 -- bridge0 -- mv
wlp3s0 -   |


Mais libvirt n'est pas d'accord:

Important Note: Unfortunately, wireless interfaces cannot be attached to a Linux host bridge, so if your connection to the external network is via a wireless interface ("wlanX"), you will not be able to use this mode of networking for your guests.


Certaines personnes ont trouvé le moyen de détourner la limitation:
https://unix.stackexchange.com/question … 198#159198
https://specman1.wordpress.com/2014/01/ … hines-kvm/
https://www.dedoimedo.com/computers/kvm-bridged.html
En gros: créer un proxy arp

Seulement tout ça c'est du charabia pour moi hmm

Note: j'utilise NetworkManager et j'ai disablé les autres gestionnaires de réseau

1) gestion du bonding

apt-get install ifenslave


sudo modprobe bonding


2) création du bond

nmcli con add type bond ifname bond0 mode active-backup


3) création des deux esclaves

nmcli con add type ethernet ifname enp0s25 master bond0
nmcli con add type wifi ifname wlp3s0 master bond0 ssid <MONSSID>


4) modification de l'esclave wifi

nmcli con edit bond-slave-wlp3s0


set wifi-sec.key-mgmt wpa-psk
set wifi-sec.psk <PASSWORD>


A ce stade je peux accéder à internet quelque soit l'interface smile

Ensuite j'avais crée un bridge (ip=192.168.1.134, gateway=192.168.1.1) et connecté le bond

nmcli con modify bond-bond0 connection.master bridge0 connection.slave-type bridge


Puis j'avais attribué à une machine virtuelle l'interface bridge0
Et effectivement, si l'interface ethernet est déconnecté, la machine virtuelle n'accède pas à internet.

J'ai donc essayé de suivre la méthode détournée
5) Je lance

virt-manager


Je sélectionne la machine virtuelle > Edition > Détails de la connexion > Réseaux virtuels
6) Je clique sur le signe + pour ajouter un réseau:

nom du réseau: ProxyArp
activer la définition de l espace réseau: 192.168.1.160/27                        je limite le nombre de mv à 16
activer le dhcp: propose une plage entre 1.176 et 1.190


7) activer la route statique

vers le réseau:
vers la passerelle:


A partir d'ici je ne comprend plus:
- faut-il définir une route statique ?
- si oui comment remplir les champs ?

8) connecté à un réseau physique
je suppose qu'il faut sélectionner "réacheminement vers..." MAIS le bond n'y figure pas !

Je ne suis pas allé plus loin ...

Dernière modification par bertaudmarc (13-02-2020 19:15:04)

Hors ligne

#2 13-02-2020 20:13:36

raleur
Membre
Inscription : 03-10-2014

Re : bonding-bridge-KVM-wifi

bertaudmarc a écrit :

Unfortunately, wireless interfaces cannot be attached to a Linux host bridge


C'est faux. Si c'était vrai, on ne pourrait pas utiliser Linux pour faire un point d'accès wifi avec hostapd.
En fait l'affirmation ci-dessus est incomplète : on ne peut pas ponter une interface wifi en mode "managed" (infrastructure, client), ou "ad hoc" à cause des limitations du format des trames wifi dans ces modes (il faudrait 4 champs d'adresses MAC, il n'y en a que 3). En revanche on peut ponter une interface wifi en mode "master" (point d'accès), ou bien en mode WDS ou "4 adresses" (4addr), mais à condition que l'interface et le point d'accès soient compatibles avec ces modes.

Certes, ici ce n'est pas l'interface wifi qui est pontée mais l'interface bonding. Mais le problème de fond demeure le même : une interface wifi en mode managed ne peut pas émettre des trames avec une autre adresse MAC source que la sienne.

Oui, trafiquer le protocole ARP est une grosse bidouille sale et en plus ça ne marche que pour IPv4, pas pour IPv6.

Pourquoi veux-tu faire du bonding ?


Il vaut mieux montrer que raconter.

Hors ligne

#3 14-02-2020 13:54:47

bertaudmarc
Membre
Lieu : suisse
Distrib. : Buster 10.6
Noyau : Linux 4.19.0-12-amd64
(G)UI : Xfce 4.12
Inscription : 19-04-2016

Re : bonding-bridge-KVM-wifi

Pourquoi veux-tu faire du bonding ?


Pour brancher mon portable sur ethernet quand je suis à la maison ou sur wifi quand je n'y suis pas et ne pas me poser de question quand j'utilise une machine virtuelle.

grosse bidouille sale et en plus ça ne marche que pour IPv4


Pourquoi sale ?
Cela ne fonctionne pas avec un bridge, j'ai donc cherché côté bonding.
As-tu une solution sans remettre en question ma demande ?

Dernière modification par bertaudmarc (14-02-2020 13:57:53)

Hors ligne

#4 14-02-2020 19:45:37

raleur
Membre
Inscription : 03-10-2014

Re : bonding-bridge-KVM-wifi

bertaudmarc a écrit :

Pour brancher mon portable sur ethernet quand je suis à la maison ou sur wifi quand je n'y suis pas et ne pas me poser de question quand j'utilise une machine virtuelle.


Le bonding n'est pas fait pour ça. Le pontage non plus.
Pourquoi as-tu besoin que ta VM soit connectée au réseau extérieur ?


Il vaut mieux montrer que raconter.

Hors ligne

#5 14-02-2020 23:23:14

bertaudmarc
Membre
Lieu : suisse
Distrib. : Buster 10.6
Noyau : Linux 4.19.0-12-amd64
(G)UI : Xfce 4.12
Inscription : 19-04-2016

Re : bonding-bridge-KVM-wifi

Tu es en train de remettre en question ma demande  ...
Ne serait-ce que de remettre à jour l'os wink

Dernière modification par bertaudmarc (14-02-2020 23:25:09)

Hors ligne

#6 14-02-2020 23:57:51

naguam
Membre
Lieu : Quelque part
Distrib. : Plusieurs
Noyau : Ça dépend
(G)UI : La CLI il n'y a que ça de vrai!
Inscription : 13-06-2016

Re : bonding-bridge-KVM-wifi

raleur a plutôt raison dans un sens vu que tu as l'air de le faire sur un laptop perso. Quand je t'ai aidé sur l'autre discussion c'est que tu m'as dis que tu a besoin d'avoir la vm directement sur le reseau, donc directement acceptant les connections entrantes. Mais pour mettre à jour l'os..... une vm avec l'interface par default, nattée est suffisance cette action qui ne demande que de la connection sortante aussi étrange que cela puisse paraître (que tu peux faire directement depuis ton ordi physiquement).

De plus sur un nat auto pour libvirt, je me trompe peut être mais tu devrais
pouvoir ssh depuis l'hôte dans la vm.

+1 raleur d'autant plus que l'intérêt de savoir si tu en as besoin permet de mieux t'aider dans le but final.

Dernière modification par naguam (15-02-2020 00:00:56)

Hors ligne

Pied de page des forums