web-dev-qa-db-fra.com

"abandon de l'authentification par choix local (Raison: 3 = DEAUTH_LEAVING)" lors de la tentative de connexion au wifi

J'ai installé Debian 9 Stretch (bureau GNOME) 64 bits sur mon PC. Mon adaptateur sans fil USB (TP-LINK TL-WN722N) a été détecté automatiquement après l'installation du micrologiciel atheros:

apt-get install firmware-atheros

Mais je ne peux pas me connecter à une infrastructure sans fil, qu'elle soit protégée par mot de passe ou non protégée.

J'ai branché mon USB. Il a été détecté, envoyé une authentification, s'est authentifié, mais a immédiatement abandonné l'authentification. La désactivation d'IPV6 n'a pas résolu mon problème. Voici mon rapport dmesg:

[   59.880805] usb 1-1.4: new high-speed USB device number 4 using ehci-pci
[   60.005727] usb 1-1.4: New USB device found, idVendor=0cf3, idProduct=9271
[   60.005729] usb 1-1.4: New USB device strings: Mfr=16, Product=32, SerialNumber=48
[   60.005731] usb 1-1.4: Product: USB2.0 WLAN
[   60.005732] usb 1-1.4: Manufacturer: ATHEROS
[   60.005734] usb 1-1.4: SerialNumber: 12345
[   60.324981] usb 1-1.4: ath9k_htc: Firmware ath9k_htc/htc_9271-1.4.0.fw requested
[   60.325069] usbcore: registered new interface driver ath9k_htc
[   60.348095] usb 1-1.4: firmware: direct-loading firmware ath9k_htc/htc_9271-1.4.0.fw
[   60.629962] usb 1-1.4: ath9k_htc: Transferred FW: ath9k_htc/htc_9271-1.4.0.fw, size: 51008
[   60.880826] ath9k_htc 1-1.4:1.0: ath9k_htc: HTC initialized with 33 credits
[   61.111895] ath9k_htc 1-1.4:1.0: ath9k_htc: FW Version: 1.4
[   61.111897] ath9k_htc 1-1.4:1.0: FW RMW support: On
[   61.111899] ath: EEPROM regdomain: 0x809c
[   61.111900] ath: EEPROM indicates we should expect a country code
[   61.111901] ath: doing EEPROM country->regdmn map search
[   61.111911] ath: country maps to regdmn code: 0x52
[   61.111912] ath: Country alpha2 being used: CN
[   61.111912] ath: Regpair used: 0x52
[   61.122477] ieee80211 phy0: Atheros AR9271 Rev:1
[   61.185069] ath9k_htc 1-1.4:1.0 wlx18a6f7160a49: renamed from wlan0
[   61.224640] IPv6: ADDRCONF(NETDEV_UP): wlx18a6f7160a49: link is not ready
[   61.361032] IPv6: ADDRCONF(NETDEV_UP): wlx18a6f7160a49: link is not ready
[   61.535923] IPv6: ADDRCONF(NETDEV_UP): wlx18a6f7160a49: link is not ready
[   61.743450] IPv6: ADDRCONF(NETDEV_UP): wlx18a6f7160a49: link is not ready
[   69.190250] IPv6: ADDRCONF(NETDEV_UP): wlx18a6f7160a49: link is not ready
[   70.360621] wlx18a6f7160a49: authenticate with 74:23:44:dc:0f:d7
[   70.551637] wlx18a6f7160a49: send auth to 74:23:44:dc:0f:d7 (try 1/3)
[   70.556012] wlx18a6f7160a49: authenticated
[   75.555233] wlx18a6f7160a49: aborting authentication with 74:23:44:dc:0f:d7 by local choice (Reason: 3=DEAUTH_LEAVING)
[   76.872114] wlx18a6f7160a49: authenticate with 74:23:44:dc:0f:d7
[   77.061146] wlx18a6f7160a49: send auth to 74:23:44:dc:0f:d7 (try 1/3)
[   77.065158] wlx18a6f7160a49: authenticated
[   82.061225] wlx18a6f7160a49: aborting authentication with 74:23:44:dc:0f:d7 by local choice (Reason: 3=DEAUTH_LEAVING)
[   83.775718] wlx18a6f7160a49: authenticate with 74:23:44:dc:0f:d7
[   83.965040] wlx18a6f7160a49: send auth to 74:23:44:dc:0f:d7 (try 1/3)
[   83.969807] wlx18a6f7160a49: authenticated
[   88.969792] wlx18a6f7160a49: aborting authentication with 74:23:44:dc:0f:d7 by local choice (Reason: 3=DEAUTH_LEAVING)
[   91.207178] wlx18a6f7160a49: authenticate with 74:23:44:dc:0f:d7
[   91.395860] wlx18a6f7160a49: send auth to 74:23:44:dc:0f:d7 (try 1/3)
[   91.400263] wlx18a6f7160a49: authenticated
[   93.996839] wlx18a6f7160a49: aborting authentication with 74:23:44:dc:0f:d7 by local choice (Reason: 3=DEAUTH_LEAVING)
[   94.061841] IPv6: ADDRCONF(NETDEV_UP): wlx18a6f7160a49: link is not ready
[   94.233433] IPv6: ADDRCONF(NETDEV_UP): wlx18a6f7160a49: link is not ready

Je n'ai aucune idée pourquoi cela s'est produit, ni pourquoi il a été abandonné plusieurs fois en un seul essai.

Modifier: rapport iwconfig:

enp3s0    no wireless extensions.

wlx18a6f7160a49  IEEE 802.11  ESSID:off/any  
          Mode:Managed  Access Point: Not-Associated   Tx-Power=20 dBm   
          Retry short limit:7   RTS thr:off   Fragment thr:off
          Encryption key:off
          Power Management:off

lo        no wireless extensions.
13
GPraz

D'une manière ou d'une autre, mon micrologiciel a rencontré des problèmes avec le nom d'interface long. J'ai donc exécuté cette commande pour l'empêcher:

ln -s /dev/null /etc/systemd/network/99-default.link

et ça a marché.

16
GPraz

Comme d'autres l'ont dit, le problème est causé par un nom non standard obtenu par l'appareil (c'est-à-dire non wlan *). Lier/dev/null ne fonctionnait pas pour moi, j'ai donc dû créer une règle udev pour renommer l'interface:

Dans

/etc/udev/rules.d/70-persistent-net.rules

ajouter:

SOUS-SYSTÈME == "net", ACTION == "add", DRIVERS == "? *", ATTRS {product} == "802.11 n WLAN", ATTR {dev_id} == "0x0", ATTR {type} == "1", KERNEL == "wlan *", NAME = "wlan1"

Ajustez ATTRS {produit} à votre appareil spécifique. Vérifiez comment le trouver ici

7
Maciek

Je suis content que vous ayez posté et trouvé une solution à votre propre problème, j'ai eu quelque chose de similaire avec la même distribution, avec une clé basée sur rtl8192 (Netgear WNA3100M pour être précis), l'astuce systemd ̀ link que vous avez mentionnée l'a corrigé , Merci.

Juste pour ajouter que cet article m'a aidé à comprendre pourquoi le correctif fonctionne réellement; c'est parce que nous remplaçons la valeur par défaut /lib/systemd/network/99-default.link fichier contenant un ̀ NamePolicy qui ne plaît pas au firmware.

BTW, j'ai toujours eu des problèmes pour rejoindre certains réseaux. Il est arrivé que la valeur par défaut domaine réglementaire ne correspondait pas à ma position géographique, j'ai donc dû émettre un iw reg set <MyCountryCode> et modifiez le /etc/default/crda fichier en conséquence.

3
user3249994

J'ai le même problème avec deux clés USB WiFi différentes. Le correctif a également fonctionné dans mon cas, merci.
Je pense que le problème est lié à NetworkManager et au firmware: quand j'ai utilisé le même ordinateur et les mêmes clés USB, la même distribution Linux (Debian 9.3), mais j'ai utilisé wicd à la place de NetworkManager, puis le long, non -les noms de périphériques standard fonctionnaient et cette correction n'était pas nécessaire.

1
Laszlo

La réponse acceptée fonctionne aussi pour moi. Mais je ne suis pas sûr que l'utilisation d'un lien vers/dev/null soit la meilleure solution, car dans 3 ou 4 mois, je serai très confus de trouver un tel lien à cet endroit.

Dans le Raspbian - Installation sur mon Raspberry Pi j'ai trouvé un fichier régulier /etc/systemd/network/99-default.link avec le contenu suivant:

# This machine is most likely a virtualized guest, where the old persistent
# network interface mechanism (75-persistent-net-generator.rules) did not work.
# This file disables /lib/systemd/network/99-default.link to avoid
# changing network interface names on upgrade. Please read
# /usr/share/doc/udev/README.Debian.gz about how to migrate to the currently
# supported mechanism.

J'utilise ce fichier normal au lieu du lien symbolique pour résoudre le problème. Je pense que cette solution a l'avantage qu'il existe une sorte de documentation sur le système (peut-être devrais-je ajouter un lien vers cette page…).

Cela donnera un aperçu de ce qui se passe pour moi-futur. >; ->

1
thosch66

La solution acceptée n'a pas fonctionné pour moi.

J'ai résolu le problème en désactivant IPv6 dans les propriétés de connexion. Exécutez nm-connection-editor, sélectionnez votre connexion en difficulté, appuyez sur le bouton avec l'icône d'engrenage (dans mon cas), allez dans l'onglet "Paramètres IPv6", dans le champ Méthode sélectionnez l'option "Ignorer" .

0
user36313

Comme d'autres l'ont dit, le problème est dû au nom non standard obtenu par l'appareil (c'est-à-dire non wlan *). Vous trouverez ci-dessous les méthodes appropriées pour définir le nom de l'interface réseau lors de l'utilisation de systemd.networkd ou NetworkManager .

systemd.networkd

Lors de la liaison à /dev/null peut résoudre le problème, la bonne façon est de créer un .link file définition du nom du périphérique.

Créer /etc/systemd/network/50-wlan.link avec le contenu suivant:

[Match]
Type=wlan

[Link]
Name=wlan0

Redémarrez ou redémarrez le réseau, puis vérifiez le résultat: udevadm info /sys/class/net/wlan0 | grep ID_NET_NAME=

Plus de détails et d'informations de débogage peuvent être trouvés ici: https://www.freedesktop.org/software/systemd/man/systemd.link.html

NetworkManager

Lorsque vous utilisez NetworkManager, le changement de nom de l'interface peut être obtenu en créant une règle dans le répertoire /etc/udev/rules.d.

Créer /etc/udev/rules.d/70-rename-wlan.rules avec le contenu suivant:

SUBSYSTEM=="net", ACTION=="add", KERNEL=="wlan*", NAME="wlan0"

Si tout s'est bien passé, vous devriez voir wlan0 parmi vos appareils après un reboot.

root@bananapi:~# ip l
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group 
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group 
3: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DORMANT group 

Et vous pourrez vous connecter au wifi en utilisant nmcli d wifi connect MEU_WIFI_SSID password MEU_PASSWORD. nmcli conservera la connexion et se reconnectera après un redémarrage.

0
rodvlopes