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.

#26 Le 27/03/2017, à 09:50

maxire

Re : Bonding avec deux clés wi-fi sur le même réseau

Non, ne joue pas avec udev pour  créer une inferface bond, c'est loin d'être le plus simple.

Un exemple de création d'interface bond:

Si tes 2 périphériques wifi sont reconnus sous les noms ens5     et wls1:

[root@asus-arch aspire7730z]# ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: ens5: <BROADCAST,MULTICAST> mtu 1500 qdisc fq_codel state DOWN mode DEFAULT group default qlen 1000
    link/ether 20:cf:30:c6:26:f3 brd ff:ff:ff:ff:ff:ff
3: wls1: <BROADCAST,MULTICAST> mtu 1500 qdisc noqueue state DOWN mode DEFAULT group default qlen 1000
    link/ether 48:5d:60:95:b9:c2 brd ff:ff:ff:ff:ff:ff
[root@asus-arch aspire7730z]# ip link add bond0 type bond
[root@asus-arch aspire7730z]# ip link set ens5 master bond0
[root@asus-arch aspire7730z]# ip link set wls1 master bond0
[root@asus-arch aspire7730z]# ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: ens5: <NO-CARRIER,BROADCAST,MULTICAST,SLAVE,UP> mtu 1500 qdisc fq_codel master bond0 state DOWN mode DEFAULT group default qlen 1000
    link/ether 20:cf:30:c6:26:f3 brd ff:ff:ff:ff:ff:ff
3: wls1: <NO-CARRIER,BROADCAST,MULTICAST,SLAVE,UP> mtu 1500 qdisc noqueue master bond0 state DOWN mode DEFAULT group default qlen 1000
    link/ether 20:cf:30:c6:26:f3 brd ff:ff:ff:ff:ff:ff
5: bond0: <BROADCAST,MULTICAST,MASTER> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/ether 20:cf:30:c6:26:f3 brd ff:ff:ff:ff:ff:ff

Tu remarqueras au final que l'interface bond 0 a pris l'adresse MAC de ens5, la première interface esclave liée à bond0.
L'interface bond0 est maintenant créée et fonctionnelle.

Il te reste maintenant à trouver le truc pour établir les 2 canaux de communications entre wls1/ens5 et le routeur wifi (wpa_supplicant) puis activer l'interface bond0 (commande ip link) et enfin lui affecter une adresse IP/DNS (en utilisant dhclient par exemple).

Ne pas oublier d"arrêter network manager avant ces manipulations.

Je ne t'ai pas tout dit, cela te permettra de mieux comprendre et surtout les solutions sont multiples.

Une fois que tu auras compris cet établissement d'une interface bond, il devrait être possible de l'automatiser via network manager, ce que je ne sais pas faire à ce jour.

Dernière modification par maxire (Le 27/03/2017, à 09:51)


Maxire
Archlinux/Mate + Ubuntu 22.04 + Archlinux/Gnome sur poste de travail

Hors ligne

#27 Le 28/03/2017, à 13:42

FrancisFDZ

Re : Bonding avec deux clés wi-fi sur le même réseau

[HS] J'utilise comme noms de mes interfaces réseau ethn et wlann, même sous systemd, qui a introduit des noms à rallonge difficile à mémoriser. Le truc est d'ajouter l' option "netifname=0" dans /etc/default/grub :

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash [b]net.ifnames=0[/b]"

[/HS]
A part ça, je n'ai pas trouvé beaucoup de documentation sur le net à propos de la commande "ip". C'est peut-être que si elle ne génère pas de problème, elle n'induit pas une question sur un forum, surtout que sa création semble récente. Bon allez, je me lance !

Dernière modification par FrancisFDZ (Le 28/03/2017, à 13:43)


-- On peut avoir des raisons de se plaindre et n'avoir pas raison de se plaindre --
[Victor Hugo]

En ligne

#28 Le 28/03/2017, à 14:04

FrancisFDZ

Re : Bonding avec deux clés wi-fi sur le même réseau

J'ai réinstallé bond0 dans interface, descendu mes wlan avec "ifconfig wlan0 down" et "ifconfig wlan1 down", j'ai lancé sans succès "ip link add bond0 type bond" qui me répond que bond0 existe. J'ai alors réactivé bond0 avec "ifup bond0" (qui fonctionne puisque bond0 est défini dans /etc/network/interfaces). ip link donne maintenant :

francis@Ubuntu:~$ ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN mode DEFAULT group default qlen 1000
    link/ether fc:aa:14:10:4a:b8 brd ff:ff:ff:ff:ff:ff
3: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DORMANT group default qlen 1000
    link/ether c0:4a:00:1c:3f:2f brd ff:ff:ff:ff:ff:ff
4: wlan1: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast state DOWN mode DEFAULT group default qlen 1000
    link/ether 00:b0:8c:03:1f:64 brd ff:ff:ff:ff:ff:ff
5: bond0: <NO-CARRIER,BROADCAST,MULTICAST,MASTER,UP> mtu 1500 qdisc noqueue state DOWN mode DEFAULT group default qlen 1000
    link/ether ca:0e:16:19:11:73 brd ff:ff:ff:ff:ff:ff
francis@Ubuntu:~$ 

(notez le "UP" de bond0 !)
Je suis toujours connecté, et en bonding !
Détail : l’icône en haut à droite n'est plus le symbole de la connexion wifi, mais les deux flèches inversées identifiant une connexion filaire !
J'en déduis que le bonding est considéré comme filaire (?)
N'étant pas l'initiateur de cette discussion, je ne peux pas passer en résolu, mais pour moi ça marche (je compte suivre encore un peu, je ne suis pas convaincu de la pérennité de cette solution)

Dernière modification par FrancisFDZ (Le 28/03/2017, à 14:06)


-- On peut avoir des raisons de se plaindre et n'avoir pas raison de se plaindre --
[Victor Hugo]

En ligne

#29 Le 28/03/2017, à 14:48

maxire

Re : Bonding avec deux clés wi-fi sur le même réseau

Les informations utiles sur les commandes se trouvent dans les pages man ou info:

man ip #Documention générale de ip
man ip address #Documentation de la command ip address (gestion des adresses ip)
man ip link #Documentation de la commande ip link (gestion des liens réseaux)

Toutes les informations utiles sur les commandes linux/unix sont disponibles en page man et/ou info.

Tu viens de tomber sur une difficulté créée par  Ubuntu qui monte un lien bond automatiquement à son démarrage alors que rien ne lui est demandé, désolé je ne me suis aperçu de la chose qu'aujourd'hui car je n'utilise habituellement pas Ubuntu mais Archlinux et Debian.

Tu règles le problème comme ceci:

ip link delete bond0

Et tu recommences le processus en prenant garde que les périphériques esclaves soient arrếtés (commande ip link set DEV down).
Il faut impérativement arrêter NetworManager ainsi que optionnellement wpa_supplicant

systemctl stop NetworkManager
systemctl stop wpa_supplicant
FRancisDZ a écrit :

J'ai réinstallé bond0 dans interface

Non, tu supprimes toute référence à bond 0 dans /etc/network/interfaces ce fichier est pour l'instant inutile.

En corollaire, tu peux définir le mode de fonctionnement du bonding en utilisant le paramètre mode rattaché au type de lien bond:

[root@asus-arch aspire7730z]# ip link add bond0 type bond mode 0

mode=0 load-balancing

FrancisDZ a écrit :

Je suis toujours connecté, et en bonding !

Non, une interface de type bond est montée et ne fait rien car elle ne lie aucun périphérique physique, elle ne te sert à rien.

Note: Durant ces tests tu n'auras plus d'accès au réseau puisque networManager sera coupé.
Lorsque tu auras réussi à monter ton interface bond tu pourras revenir en arrière il suffit de supprimer l'interface bond0 et de démarrer NetworManager.

Dernière modification par maxire (Le 28/03/2017, à 14:56)


Maxire
Archlinux/Mate + Ubuntu 22.04 + Archlinux/Gnome sur poste de travail

Hors ligne

#30 Le 28/03/2017, à 15:08

maxire

Re : Bonding avec deux clés wi-fi sur le même réseau

Pour la suite tu potasses la documentation sur le service wpa_supplicant@.service afin de créer un canal de communication entre chaque périphérique wifi et le routeur wifi, une fois que ceux-ci seront des esclaves de bond0.

wpa_supplicant a écrit :

Now you need to configure wpa_supplicant to connect to any known network you wish. You should create a file for each interface and start it on systemd. Create the following file with this content:
/etc/wpa_supplicant/wpa_supplicant-wlan0.conf
ctrl_interface=/run/wpa_supplicant
update_config=1
And append to the end of this file any network you want to connect to:
network={
    ssid="SSID" ===> Nom de ton routeur wifi
    psk=PSK  ===> Clef de chiffrage
}

Pour contrôler les connexions, en remplaçant wls1 par le bon périphérique:

[root@asus-arch aspire7730z]# iw dev wls1 info
Interface wls1
	ifindex 3
	wdev 0x1
	addr 20:cf:30:c6:26:f3
	type managed
	wiphy 0
	channel 6 (2437 MHz), width: 40 MHz, center1: 2427 MHz
	txpower 15.00 dBm
[root@asus-arch aspire7730z]#
[root@asus-arch aspire7730z]# systemctl status wpa_supplicant@wls1
● wpa_supplicant@wls1.service - WPA supplicant daemon (interface-specific versio
   Loaded: loaded (/usr/lib/systemd/system/wpa_supplicant@.service; disabled; ve
   Active: active (running) since Tue 2017-03-28 13:44:47 CEST; 1h 22min ago
 Main PID: 1629 (wpa_supplicant)
    Tasks: 1 (limit: 4915)
   CGroup: /system.slice/system-wpa_supplicant.slice/wpa_supplicant@wls1.service
           └─1629 /usr/bin/wpa_supplicant -c/etc/wpa_supplicant/wpa_supplicant-w

mars 28 13:44:47 asus-arch systemd[1]: Started WPA supplicant daemon (interface-
mars 28 13:44:47 asus-arch wpa_supplicant[1629]: Successfully initialized wpa_su
mars 28 13:44:49 asus-arch wpa_supplicant[1629]: wls1: SME: Trying to authentica
mars 28 13:44:49 asus-arch wpa_supplicant[1629]: wls1: Trying to associate with 
mars 28 13:44:49 asus-arch wpa_supplicant[1629]: wls1: Associated with a0:ab:1b:
mars 28 13:44:49 asus-arch wpa_supplicant[1629]: wls1: CTRL-EVENT-SUBNET-STATUS-
mars 28 13:44:49 asus-arch wpa_supplicant[1629]: wls1: WPA: Key negotiation comp
mars 28 13:44:49 asus-arch wpa_supplicant[1629]: wls1: CTRL-EVENT-CONNECTED - Co
lines 1-16/16 (END)

Maxire
Archlinux/Mate + Ubuntu 22.04 + Archlinux/Gnome sur poste de travail

Hors ligne

#31 Le 28/03/2017, à 18:23

FrancisFDZ

Re : Bonding avec deux clés wi-fi sur le même réseau

Je me doutais bien que quelque chose clochait ! Je suis connecté et l'interface de connexion, à priori est bond0 et se présente comme une interface filaire, or je suis connecté en wifi, et je ne suis même pas sur que wlan1 soit autorisé à utiliser la wifi (via wpa-supplicant)

maxire a écrit :

Pour la suite tu potasses la documentation sur le service wpa_supplicant@.service afin de créer un canal de communication entre chaque périphérique wifi et le routeur wifi, une fois que ceux-ci seront des esclaves de bond0.

C'est bien ce que je cherchais. Je soupçonne ce service d'avoir les références à wlan0, mais ni à wlan1 ni bond0; d'où la reconnaissance de bond0 comme liaison filaire (état par défaut) et dans ce cas je ne suis connecté que via wlan0, donc rien de neuf. Je suis même surpris que la connexion ait été fonctionnelle alors que j'avais descendu wlan0 (et wlan1) avant de monter bond0. Pour l'instant je poste de mon portable, je pense que mon PC va simplement planter au prochain reboot ...
Donc à suivre !
(En tout cas, on avance)


-- On peut avoir des raisons de se plaindre et n'avoir pas raison de se plaindre --
[Victor Hugo]

En ligne

#32 Le 28/03/2017, à 20:20

maxire

Re : Bonding avec deux clés wi-fi sur le même réseau

Je suis allé un peu vite en besogne j'ai assumé que ce qui est possible sous Archlinux l'est sous Ubuntu or ce n'est pas le cas.
Je viens de nouveau d'installer un Ubuntu 16.04 et je m'aperçois que le service wpa_supplicant par interface wpa_supplicant@.service n'est pas disponible.
J'ai bien peur qu'il soit difficile à l'heure actuelle de mettre en place une interface bond de plusieurs périphériques wifi en tout cas c'est impossible avec Networkmanager.

Sous Archlinux voici ce que j'obtiens:

[aspire7730z@asus-arch ~]$ ip link 
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: ens5: <NO-CARRIER,BROADCAST,MULTICAST,SLAVE,UP> mtu 1500 qdisc fq_codel master trunk0 state DOWN mode DEFAULT group default qlen 1000
    link/ether 20:cf:30:c6:26:f3 brd ff:ff:ff:ff:ff:ff
3: wls1: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 1500 qdisc noqueue master trunk0 state UP mode DORMANT group default qlen 1000
    link/ether 20:cf:30:c6:26:f3 brd ff:ff:ff:ff:ff:ff
4: trunk0: <BROADCAST,MULTICAST,MASTER,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default qlen 1000
    link/ether 20:cf:30:c6:26:f3 brd ff:ff:ff:ff:ff:ff
[aspire7730z@asus-arch ~]$ ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: ens5: <NO-CARRIER,BROADCAST,MULTICAST,SLAVE,UP> mtu 1500 qdisc fq_codel master trunk0 state DOWN group default qlen 1000
    link/ether 20:cf:30:c6:26:f3 brd ff:ff:ff:ff:ff:ff
3: wls1: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 1500 qdisc noqueue master trunk0 state UP group default qlen 1000
    link/ether 20:cf:30:c6:26:f3 brd ff:ff:ff:ff:ff:ff
4: trunk0: <BROADCAST,MULTICAST,MASTER,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether 20:cf:30:c6:26:f3 brd ff:ff:ff:ff:ff:ff
    inet 192.168.0.43/24 brd 192.168.0.255 scope global trunk0
       valid_lft forever preferred_lft forever
    inet6 fe80::726:482e:414f:abda/64 scope link 
       valid_lft forever preferred_lft forever
[aspire7730z@asus-arch ~]$ systemctl status wpa_supplicant@wls1
● wpa_supplicant@wls1.service - WPA supplicant daemon (interface-specific version)
   Loaded: loaded (/usr/lib/systemd/system/wpa_supplicant@.service; disabled; vendor preset: disabled)
   Active: active (running) since Tue 2017-03-28 19:51:08 CEST; 9min ago
 Main PID: 430 (wpa_supplicant)
    Tasks: 1 (limit: 4915)
   CGroup: /system.slice/system-wpa_supplicant.slice/wpa_supplicant@wls1.service
           └─430 /usr/bin/wpa_supplicant -c/etc/wpa_supplicant/wpa_supplicant-wls1.conf -iwls1

mars 28 19:51:08 asus-arch systemd[1]: Started WPA supplicant daemon (interface-specific version).
mars 28 19:51:08 asus-arch wpa_supplicant[430]: Successfully initialized wpa_supplicant
mars 28 19:51:09 asus-arch wpa_supplicant[430]: wls1: SME: Trying to authenticate with a0:ab:1b:ed:83:79 (SSID='Vouvoune' freq=2437 MHz)
mars 28 19:51:09 asus-arch wpa_supplicant[430]: wls1: Trying to associate with a0:ab:1b:ed:83:79 (SSID='Vouvoune' freq=2437 MHz)
mars 28 19:51:09 asus-arch wpa_supplicant[430]: wls1: Associated with a0:ab:1b:ed:83:79
mars 28 19:51:09 asus-arch wpa_supplicant[430]: wls1: CTRL-EVENT-SUBNET-STATUS-UPDATE status=0
mars 28 19:51:10 asus-arch wpa_supplicant[430]: wls1: WPA: Key negotiation completed with a0:ab:1b:ed:83:79 [PTK=CCMP GTK=CCMP]
mars 28 19:51:10 asus-arch wpa_supplicant[430]: wls1: CTRL-EVENT-CONNECTED - Connection to a0:ab:1b:ed:83:79 completed [id=0 id_str=]
mars 28 19:57:14 asus-arch wpa_supplicant[430]: wls1: CTRL-EVENT-REGDOM-CHANGE init=BEACON_HINT type=UNKNOWN
[aspire7730z@asus-arch ~]$ pkexec cat /etc/wpa_supplicant/wpa_supplicant-wls1.conf
ctrl_interface=/run/wpa_supplicant
update_config=1
network={
    ssid="#######"
    psk="########"
}
[aspire7730z@asus-arch ~]$ cat /proc/net/bonding/trunk0
Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)

Bonding Mode: fault-tolerance (active-backup)
Primary Slave: ens5 (primary_reselect always)
Currently Active Slave: wls1
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0

Slave Interface: ens5
MII Status: down
Speed: Unknown
Duplex: Unknown
Link Failure Count: 0
Permanent HW addr: 20:cf:30:c6:26:f3
Slave queue ID: 0

Slave Interface: wls1
MII Status: up
Speed: Unknown
Duplex: Unknown
Link Failure Count: 0
Permanent HW addr: 48:5d:60:95:b9:c2
Slave queue ID: 0
[aspire7730z@asus-arch ~]$ 

Cette interface réseau trunk0 est un bonding en mode 1 dit de tolérance de panne avec pour interface esclave primaire le port ethernet ens5.
Au débranchement du câble ethernet de ens5 c'est le port wifi wls1 qui prend le relais.
Le canal de communication entre le port wifi (l'équivalent du câble ethernet finalement) et le routeur est géré par wpa_supplicant@wls1.service dont je donne le fichier de configuration /etc/wpa_supplicant-wls1.conf.
/proc/net/bonding/trunk0 donne l"état de l'interface bonding trunk0.

J'établis cette interface trunk0 au démarrage réseau via un service maison.

Si tu veux vraiment expérimenter je te conseille de t'installer un environnement Archlinux, Ubuntu est un peu trop verrouillé.


Maxire
Archlinux/Mate + Ubuntu 22.04 + Archlinux/Gnome sur poste de travail

Hors ligne

#33 Le 29/03/2017, à 10:04

maxire

Re : Bonding avec deux clés wi-fi sur le même réseau

Enfin, j'ai fini par y arriver avec Ubuntu 16.04 et Debian Stretch en suivant ces étapes:

1 - Installer le paquet iproute, étrangement non installé par défaut sous Ubuntu ainsi que Debian

# apt install iproute

2 - Désactiver NetworkManager

# systemctl disable NetworkManager

3 - Désactiver wpa_supplicant

# systemctl disable wpa_supplicant

4 - Chargement du module bonding au démarrage en ajoutant celui-ci dans /etc/modules
5 - Redémarrage de Ubuntu histoire que tout soit propre

Après redémarrage j'ai passé cette suite de commandes, à toi de les adapter à ton cas:

root@asus-xenial:/home/xenial# ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: ens5: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/ether 20:cf:30:c6:26:f3 brd ff:ff:ff:ff:ff:ff
3: bond0: <BROADCAST,MULTICAST,MASTER> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/ether 82:b1:3a:2f:59:9b brd ff:ff:ff:ff:ff:ff
4: wls1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/ether 48:5d:60:95:b9:c2 brd ff:ff:ff:ff:ff:ff
root@asus-xenial:/home/xenial# cat /proc/net/bonding/bond0
Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)

Bonding Mode: load balancing (round-robin)
MII Status: down
MII Polling Interval (ms): 0
Up Delay (ms): 0
Down Delay (ms): 0
root@asus-xenial:/home/xenial# ip link set wls1 master bond0
root@asus-xenial:/home/xenial# ip link set ens5 master bond0
root@asus-xenial:/home/xenial# cat /proc/net/bonding/bond0
Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)

Bonding Mode: load balancing (round-robin)
MII Status: up
MII Polling Interval (ms): 0
Up Delay (ms): 0
Down Delay (ms): 0

Slave Interface: wls1
MII Status: up
Speed: Unknown
Duplex: Unknown
Link Failure Count: 0
Permanent HW addr: 48:5d:60:95:b9:c2
Slave queue ID: 0

Slave Interface: ens5
MII Status: up
Speed: Unknown
Duplex: Unknown
Link Failure Count: 0
Permanent HW addr: 20:cf:30:c6:26:f3
Slave queue ID: 0
root@asus-xenial:/home/xenial# wpa_supplicant -c/etc/wpa_supplicant/wpa_supplicant-wls1.conf -iwls1 & # ===> remplacer wls1 par wlan0 puis wlan1
[1] 1690
root@asus-xenial:/home/xenial# Successfully initialized wpa_supplicant
wls1: SME: Trying to authenticate with a0:ab:1b:ed:83:79 (SSID='Vouvoune' freq=2437 MHz)
wls1: Trying to associate with a0:ab:1b:ed:83:79 (SSID='Vouvoune' freq=2437 MHz)
wls1: Associated with a0:ab:1b:ed:83:79
wls1: WPA: Key negotiation completed with a0:ab:1b:ed:83:79 [PTK=CCMP GTK=CCMP]
wls1: CTRL-EVENT-CONNECTED - Connection to a0:ab:1b:ed:83:79 completed [id=0 id_str=]

root@asus-xenial:/home/xenial# dhclient -v bond0 &
[2] 1733
root@asus-xenial:/home/xenial# Internet Systems Consortium DHCP Client 4.3.3
Copyright 2004-2015 Internet Systems Consortium.
All rights reserved.
For info, please visit https://www.isc.org/software/dhcp/

Listening on LPF/bond0/48:5d:60:95:b9:c2
Sending on   LPF/bond0/48:5d:60:95:b9:c2
Sending on   Socket/fallback
DHCPDISCOVER on bond0 to 255.255.255.255 port 67 interval 3 (xid=0x5e1cef58)
DHCPDISCOVER on bond0 to 255.255.255.255 port 67 interval 8 (xid=0x5e1cef58)
DHCPREQUEST of 192.168.0.50 on bond0 to 255.255.255.255 port 67 (xid=0x58ef1c5e)
DHCPOFFER of 192.168.0.50 from 192.168.0.9
DHCPACK of 192.168.0.50 from 192.168.0.9
bound to 192.168.0.50 -- renewal in 21410 seconds.

[2]+  Fini                    dhclient -v bond0
root@asus-xenial:/home/xenial# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: ens5: <NO-CARRIER,BROADCAST,MULTICAST,SLAVE,UP> mtu 1500 qdisc pfifo_fast master bond0 state DOWN group default qlen 1000
    link/ether 48:5d:60:95:b9:c2 brd ff:ff:ff:ff:ff:ff
3: bond0: <BROADCAST,MULTICAST,MASTER,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether 48:5d:60:95:b9:c2 brd ff:ff:ff:ff:ff:ff
    inet 192.168.0.50/24 brd 192.168.0.255 scope global bond0
       valid_lft forever preferred_lft forever
    inet6 fe80::4a5d:60ff:fe95:b9c2/64 scope link 
       valid_lft forever preferred_lft forever
4: wls1: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 1500 qdisc mq master bond0 state UP group default qlen 1000
    link/ether 48:5d:60:95:b9:c2 brd ff:ff:ff:ff:ff:ff
root@asus-xenial:/home/xenial# cat /proc/net/bonding/bond0Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)

Bonding Mode: load balancing (round-robin)
MII Status: up
MII Polling Interval (ms): 0
Up Delay (ms): 0
Down Delay (ms): 0

Slave Interface: wls1
MII Status: up
Speed: Unknown
Duplex: Unknown
Link Failure Count: 0
Permanent HW addr: 48:5d:60:95:b9:c2
Slave queue ID: 0

Slave Interface: ens5
MII Status: up
Speed: Unknown
Duplex: Unknown
Link Failure Count: 0
Permanent HW addr: 20:cf:30:c6:26:f3
Slave queue ID: 0
root@asus-xenial:/home/xenial# 

Rappels:
- /proc/net/bonding/bond0 héberge l'état de l'interface bonding bond0
- tu crées pour chacune des interfaces wifi wlan0 et wlan1 2 fichiers de configuration /etc/wpa_supplicant/wpa_supplicant-wlan0.conf et /etc/wpa_supplicant/wpa_supplicant-wlan1.conf en suivant ce modèle de mon interface wls1 (dans mon cas ens5 est un périphérique filaire):

root@asus-xenial:/home/xenial# cat /etc/wpa_supplicant/wpa_supplicant-wls1.conf
ctrl_interface=/run/wpa_supplicant
update_config=1
network={
    ssid="ssssss"   # ssssss à remplacer par le SSID
    psk="kkkkkk"    # kkkkkk à remplacer par la clef de chiffrage 
}
root@asus-xenial:/home/xenial#

Dernière modification par maxire (Le 29/03/2017, à 10:09)


Maxire
Archlinux/Mate + Ubuntu 22.04 + Archlinux/Gnome sur poste de travail

Hors ligne

#34 Le 29/03/2017, à 11:33

FrancisFDZ

Re : Bonding avec deux clés wi-fi sur le même réseau

Comme je m'y attendais, le reboot de ce matin a été bloqué et j'ai donc invalidé interfaces. Je pense qu'avec tes derniers conseils ça devrait aller sans problème, je m'occuperais ensuite de mes autres sessions (Debian Jessie, Arch, peut-être Gentoo et surtout mon dernier essai : Solus, un os indépendant de RedHat ou Debian qui semble très prometteur).
Bien évidemment, le problème est lié à wpa_supplicant. Je ne suis pas sur que les références de wlan0 et wlan1 à wpa_supplicant soient indispensables, à partir du moment où bond0 y est référencé : wlan0 et wlan1 devraient être liés par le principe d'héritage (comme défini dans C++), mais un peu de redondance ne devrait pas faire de mal.
Je reposterai dès que possible pour vous tenir au courant de l'avancement des travaux wink

NB : Il devrait être possible de définir les dépendances des différentes interfaces utilisées à wpa_supplicant en les configurant dans /etc/network/interfaces, mais je pense que cette méthode risque à terme de devenir obsolète, voire dépréciée, et l'utilisation des fonctions de systemd ont de fortes chances de s'imposer.

Dernière modification par FrancisFDZ (Le 29/03/2017, à 11:36)


-- On peut avoir des raisons de se plaindre et n'avoir pas raison de se plaindre --
[Victor Hugo]

En ligne

#35 Le 29/03/2017, à 11:47

maxire

Re : Bonding avec deux clés wi-fi sur le même réseau

FrancisDZ a écrit :

Je ne suis pas sur que les références de wlan0 et wlan1 à wpa_supplicant soient indispensables, à partir du moment où bond0 y est référencé : wlan0 et wlan1 devraient être liés par le principe d'héritage (comme défini dans C++)

Je ne pense pas.
Bond0 n'est qu'un lien pouvant donc lier plusieurs interfaces réseau physiques très différentes (wifi, ethernet, modem 56 K et je ne sais quelle autres...) donc tu ne peux établir de connexions physique qu'au niveau de chacune d'entre elles et avec leurs programmes de gestion spécifiques.

SI tu utilises Archlinux tu peux facilement automatiser le lancement de ton interface Bond via netctl.
Si tu utilises NetworkManager sous Archlinux, je te conseille de le supprimer je  m'en passe très bien et n'utilise que netctl et en déplacement je me connecte aux réseaux locaux wifi via le script wifi-menu simple et efficace.


Maxire
Archlinux/Mate + Ubuntu 22.04 + Archlinux/Gnome sur poste de travail

Hors ligne

#36 Le 29/03/2017, à 12:52

maxire

Re : Bonding avec deux clés wi-fi sur le même réseau

[HS ou presque]
Sous Archlinux tu peux créer un profil netctl comme celui-ci:

Description='Bonding avec équilibrage de charge'
Interface=bond0
Connection=bond
Mode=0
BindsToInterfaces=(wlan0 wlan1)
IP=no
ExecUpPost=/usr/local/lib/bond0-start
ExecDownPre=/usr/local/lib/bond0-stop
#NETCTL_DEBUG=yes

avec bond0-start:

#!/bin/sh
systemctl start wpa_supplicant@wlan0 &
systemctl start wpa_supplicant@wlan1 &
dhcpcd bond0 & # ou le client DHCP de ton choix

et bond0-stop:

#!/bin/sh
systemctl stop wpa_supplicant@wlan0 &
systemctl stop wpa_supplicant@wlan1 &

Bien évidemment créer au préalable les fichiers de configurations /etc/wpa_supplicant/wpa_supplicant-wlanx.conf.
[/HS]


Maxire
Archlinux/Mate + Ubuntu 22.04 + Archlinux/Gnome sur poste de travail

Hors ligne

#37 Le 01/04/2017, à 13:51

FrancisFDZ

Re : Bonding avec deux clés wi-fi sur le même réseau

A va pas !
à la commande

ip link set wlan0 master bond0

je reçois le message d'erreur "RTNETLINK answers : operation not permitted"
Avec wlan1, ça freeze tout le système.
Autre source d'erreur : mon réseau wifi tourne avec WICD. Je suis donc condamné à adapter ...
Au final, je pense revenir à la solution primaire : utiliser /etc/network/interfaces, en y rajoutant les références à wlan0 et wlan1.
En attendant, je vais potasser le wiki.

Dernière modification par FrancisFDZ (Le 01/04/2017, à 14:10)


-- On peut avoir des raisons de se plaindre et n'avoir pas raison de se plaindre --
[Victor Hugo]

En ligne

#38 Le 01/04/2017, à 15:02

maxire

Re : Bonding avec deux clés wi-fi sur le même réseau

Problème sous Ubuntu?
J'ai également obtenu ce message RTNETLINK... mais il a disparu suite à l'installation de iproute.
Quant au freeze, je ne vois pas quoi répondre.

À mon avis le problème de freeze sera le même avec /etc/network/interfaces.

As-tu essayé sous Archlinux?
Cela ne sert à rien de trop insister sous Ubuntu, j'ai installé cette semaine Xenial/Unity j'ai fini par le virer, de trop mauvaise qualité comparé à la version 14.04. J'ai même réalisé la mise à niveau vers Yakkety, même constat.
Je ne conserve que Archlinux en systèmes principaux + Debian Stretch/Gnome juste pour voir (j'ai fini par remplacer NetworkManager par une installation maison de Netctl.).


Maxire
Archlinux/Mate + Ubuntu 22.04 + Archlinux/Gnome sur poste de travail

Hors ligne

#39 Le 04/04/2017, à 19:16

FrancisFDZ

Re : Bonding avec deux clés wi-fi sur le même réseau

J'ai trouvé l'origine du problème !
La clé wlan1 est une Advance WL-54USB pour laquelle je n'ai jamais trouvé de pilote, ce qui m'oblige à utiliser ndiswrapper, or c'est bien cet utilitaire qui bloque.
Je vais maintenant reprendre mes recherches pour trouver un pilote compatible.


-- On peut avoir des raisons de se plaindre et n'avoir pas raison de se plaindre --
[Victor Hugo]

En ligne