«Отмена аутентификации по локальному выбору (Причина: 3 = DEAUTH_LEAVING)» при попытке подключения к Wi-Fi

13

Я установил 64-разрядную версию Debian 9 stretch (рабочий стол GNOME) на свой ПК. Мой беспроводной USB-адаптер (TP-LINK TL-WN722N) был обнаружен автоматически после установки прошивки atheros:

apt-get install firmware-atheros

Но я не могу подключиться к какой-либо беспроводной среде, независимо от того, защищены ли они паролем или не защищены.

Я подключил свой USB. Он был обнаружен, отправлен аутентификацию, аутентифицирован, но сразу же прервал аутентификацию. Отключение IPV6 не решило мою проблему. Вот мой 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

Я понятия не имею, почему это произошло, и почему это было прервано несколько раз за одну попытку.

Изменить: отчет 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.
GPraz
источник
Как близко вы находитесь от этого AP
Rui F Рибейро

Ответы:

15

Почему-то у моей прошивки возникли проблемы с длинным именем интерфейса. Поэтому я запустил эту команду, чтобы предотвратить это:

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

и это сработало.

GPraz
источник
Просто добавьте, что эта статья помогла мне понять, почему исправление действительно работает; это потому , что мы перекрывая по умолчанию /lib/systemd/network/99-default.linkфайл, содержащий , которыйNamePolicy не радует прошивку. Кстати, у меня все еще были проблемы с подключением к некоторым сетям. Случилось так, что по умолчанию регуляторный домен не соответствует мое местоположение, так что я должен был выдать iw reg set <MyCountryCode>и отредактировать /etc/default/crdaфайл по
user3249994
Я наблюдал ту же самую проблему с rt2x00, и этот обходной путь работал немедленно. Я был бы признателен, если бы кто-то мог объяснить, почему это работает и каково правильное решение.
Хельмут Грон
3
Хотя я согласен, что это функциональный обходной путь, было бы замечательно, если бы кто-то мог объяснить "почему" немного лучше ... Я предполагаю, что это связано с чем-то в NetworkManager, но это просто пустяк.
CJ Стил
1
Это помогает, я боролся с этой проблемой более месяца, я обновил свой Debian несколько месяцев назад и начал видеть эту проблему, но только с определенными маршрутизаторами. У меня есть чип Intel Wi-Fi (модуль iwlwifi).
Кшиштоф Красонь
1
Это работает для моего беспроводного адаптера Ralink MTK7601u. $ sudo nmcli dev wifi connect MySSIDвыдает сообщение об ошибке, например, Error: Connection activation failed: (53) The Wi-Fi network could not be found.отчет dmesg почти такой же.
Arnie97
7

Как говорили другие, проблема вызвана нестандартным именем, которое получает устройство (т.е. не wlan *). Связывание / dev / null у меня не сработало, поэтому мне пришлось создать правило udev для переименования интерфейса:

В

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

Добавить:

SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?\*", ATTRS{product}=="802.11 n WLAN", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="wlan*", NAME="wlan1"

Настройтесь ATTRS{product}на ваше конкретное устройство. Проверьте, как найти это здесь

Maciek
источник
У меня та же проблема, и я просто сталкиваюсь с этим решением ... Это только ATTRS{product}то, что нужно заменить? Имеет DRIVERSтакже должны иметь что - то есть , или это на самом деле должен быть установлен =?Спасибо!
Дж. Тейлор
1
Сделал это больше года назад и, честно говоря, не помню деталей. Я считаю, что ATTRS {product} должно быть достаточно, чтобы соответствовать вашему устройству. Кроме того, это должны быть ДРАЙВЕРЫ == "? *" - стек съел звезду.
Maciek
ссылки не работает!
набулятор
Это решение для тех, кто использует NetworkManager. Это правило может быть более гибким, так что вам не нужно заботиться о ATTRS{product}. Шахта просыпается с такой конфигурацией:SUBSYSTEM=="net", ACTION=="add", KERNEL=="wlan*", NAME="wlan0"
Родвлопес
1

У меня такая же проблема с двумя разными флешками USB WiFi. Исправление также работало в моем случае, спасибо.
Я думаю, что проблема связана с NetworkManager и прошивкой: когда я использовал один и тот же компьютер и USB-накопители, тот же дистрибутив Linux (Debian 9.3), но использовал wicd вместо NetworkManager, тогда длинные нестандартные имена устройств были работает, и это исправить не было необходимости.

Laszlo
источник
Я установил wicd, и после этого он подключился нормально, спасибо!
Hayden Thring
1

Принятый ответ работает и для меня. Но я не уверен, что использование ссылки на / dev / null является лучшим решением, потому что через 3 или 4 месяца я буду очень смущен, находя такую ​​ссылку в этом месте.

В Raspbian -Installation на моем Raspberry Pi я нашел обычный файл /etc/systemd/network/99-default.link со следующим содержимым:

# 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.

Я использую этот обычный файл вместо символической ссылки, чтобы решить проблему. Я думаю, что это решение имеет то преимущество, что в системе есть какая-то документация (возможно, мне следует добавить ссылку на эту страницу…).

Это даст намек на то, что происходит со мной в будущем. >; ->

thosch66
источник
0

Как говорили другие, проблема вызвана нестандартным именем, которое получает устройство (т.е. не wlan *). Ниже приведены правильные способы установки имени сетевого интерфейса при использовании systemd.networkd или NetworkManager .

systemd.networkd

В то время как ссылки /dev/nullмогут решить проблему, правильный способ - создать .link fileнастройку имени устройства.

Создайте /etc/systemd/network/50-wlan.linkсо следующим содержанием:

[Match]
Type=wlan

[Link]
Name=wlan0

Перезагрузите или перезапустите сеть, затем проверьте результат: udevadm info /sys/class/net/wlan0 | grep ID_NET_NAME=

Более подробную информацию и информацию об отладке можно найти здесь: https://www.freedesktop.org/software/systemd/man/systemd.link.html.

Сетевой менеджер

При использовании NetworkManager переименование интерфейса может быть достигнуто путем создания правила в каталоге /etc/udev/rules.d.

Создайте /etc/udev/rules.d/70-rename-wlan.rulesсо следующим содержанием:

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

Если все прошло правильно, вы должны увидеть wlan0среди своих устройств после 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 

И вы сможете подключиться к Wi-Fi с помощью nmcli d wifi connect MEU_WIFI_SSID password MEU_PASSWORD. nmcliБудет сохраняться соединение и переподключение после перезагрузки.

rodvlopes
источник
Я думаю, что ни NetworkManager, ни systemd-networkd не переименовывают ваше устройство. Это сделано Udev. Итак, да, написание правила udev работает так же, как и создание файла .link (в этом случае файл .link обрабатывается udev, а не systemd-networkd).
выше
Во втором примере ясно, что udev выполняет свою работу, а не NetworkManager. Вы можете быть правы, но во втором примере systemd-networkd также может выполнить свою работу (возможно, он говорит с udev под капотом).
Родвлопес
-1

Принятое решение не работает для меня.

Я решил проблему, отключив IPv6 в свойствах подключения. Запустите nm-connection-editor , выберите проблемное соединение, нажмите кнопку со значком шестеренки (в моем случае), перейдите на вкладку «Настройки IPv6», в поле «Метод» выберите опцию «Игнорировать».

user36313
источник