Jak naprawić „deautoryzację przez wybór lokalny”?


10

Zbudowałem wbudowanego Linuksa za pomocą Buildroot i mam problemy z utrzymaniem połączenia z moim AP. Nie można uzyskać adresu IP więcej niż raz.

Korzystam z wpa_supplicant, aby połączyć się z moim AP za pomocą WPA2-PSK. Działa z innym AP, takim jak mój smartfon w trybie AP.

Kiedy używam iwconfig wlan0, widzę, że jestem powiązany z moim AP

wlan0     IEEE 802.11bgn  ESSID:"ZyXEL_B3B5"  
          Mode:Managed  Frequency:2.462 GHz  Access Point: 90:EF:68:D3:B3:B5   
          Bit Rate=58.5 Mb/s   Tx-Power=20 dBm   
          Retry  long limit:7   RTS thr:off   Fragment thr:off
          Encryption key:off
          Power Management:on
          Link Quality=53/70  Signal level=-57 dBm  
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:1   Missed beacon:0

Ale nie mogę uzyskać adresu IP ifup wlan0

udhcpc (v1.22.1) started
Sending discover...
Sending discover...
Sending discover...
No lease, failing

Powinienem powiedzieć, że mogę uzyskać adres IP tylko raz. Jeśli zrestartuję się, nie będzie to już możliwe.

Udało mi się zainstalować dhclientzamiast korzystać z domyślnego klienta DHCP Busybox, ale nic się nie dzieje (pozostaję zablokowany na czas nieokreślony)

dhclient wlan0

Według moich komunikatów jądra wydaje się, że nie jestem ciągle związany

[  355.459738] wlan0: authenticate with 90:ef:68:d3:b3:b5 (try 1)
[  355.461366] wlan0: authenticated
[  355.461416] wlan0: associate with 90:ef:68:d3:b3:b5 (try 1)
[  355.469353] wlan0: RX AssocResp from 90:ef:68:d3:b3:b5 (capab=0x431 status=0 aid=1)
[  355.469364] wlan0: associated
[  365.547863] wlan0: deauthenticating from 90:ef:68:d3:b3:b5 by local choice (reason=3)
[  365.672765] cfg80211: Calling CRDA to update world regulatory domain
[  367.169736] wlan0: authenticate with 90:ef:68:d3:b3:b5 (try 1)
[  367.171421] wlan0: authenticated
[  367.194859] wlan0: associate with 90:ef:68:d3:b3:b5 (try 1)
[  367.198561] wlan0: RX AssocResp from 90:ef:68:d3:b3:b5 (capab=0x431 status=0 aid=1)
[  367.198584] wlan0: associated
[  377.277864] wlan0: deauthenticating from 90:ef:68:d3:b3:b5 by local choice (reason=3)
[  377.412822] cfg80211: Calling CRDA to update world regulatory domain
[  378.899738] wlan0: authenticate with 90:ef:68:d3:b3:b5 (try 1)
[  378.901668] wlan0: authenticated
[  378.924732] wlan0: associate with 90:ef:68:d3:b3:b5 (try 1)
[  378.928437] wlan0: RX AssocResp from 90:ef:68:d3:b3:b5 (capab=0x431 status=0 aid=1)
[  378.928461] wlan0: associated
[  389.008120] wlan0: deauthenticating from 90:ef:68:d3:b3:b5 by local choice (reason=3)
[  389.182888] cfg80211: Calling CRDA to update world regulatory domain
[  390.689735] wlan0: authenticate with 90:ef:68:d3:b3:b5 (try 1)
[  390.691415] wlan0: authenticated
[  390.714734] wlan0: associate with 90:ef:68:d3:b3:b5 (try 1)
[  390.720847] wlan0: RX AssocResp from 90:ef:68:d3:b3:b5 (capab=0x431 status=0 aid=1)
[  390.720870] wlan0: associated
[  400.811246] wlan0: deauthenticating from 90:ef:68:d3:b3:b5 by local choice (reason=3)
...

Dzienniki mojego AP

338     Nov 16 15:50:53 udhcpd[2404]: Received DISCOVER
339     Nov 16 15:50:53 udhcpd[2404]: unicasting packet to client yiaddr
340     Nov 16 15:50:56 udhcpd[2404]: Received DISCOVER
341     Nov 16 15:50:56 udhcpd[2404]: unicasting packet to client yiaddr
342     Nov 16 15:50:59 udhcpd[2404]: Received DISCOVER
343     Nov 16 15:50:59 udhcpd[2404]: unicasting packet to client yiaddr

Dzienniki, kiedy to działa (tylko raz)

325     Nov 16 15:48:37 udhcpd[2404]: Received DISCOVER
326     Nov 16 15:48:37 udhcpd[2404]: unicasting packet to client yiaddr
327     Nov 16 15:48:37 udhcpd[2404]: Received REQUEST
328     Nov 16 15:48:37 udhcpd[2404]: lease = 11854360
329     Nov 16 15:48:37 udhcpd[2404]: requested = b2a8eb7f
330     Nov 16 15:48:37 udhcpd[2404]: server_id = c0a80101
331     Nov 16 15:48:37 udhcpd[2404]: unicasting packet to client yiaddr

Jak to rozwiązać?


próbowałeś ręcznie zabić wpa_supplicant? Próbowałeś innego jądra? Zdefiniowałbym również kraj w pliku konfiguracyjnym.
Rui F Ribeiro

tak, próbowałem zabić wpa_supplicant, ale nie mam innego menedżera Wi-Fi, więc nic nie robi (oprócz odłączenia od AP). Nie mam innego jądra do przetestowania i działa ono z innym AP.
didil

Czy inne urządzenia, takie jak smartfony, łączą się z twoim AP? Czy sprawdzałeś logi / dmesg na samym AP?

Tak, zarówno mój smartfon (Android), jak i mój notebook (Ubuntu 15.10) łączą się z moim AP w dowolnym momencie (nawet po ponownym uruchomieniu). logi na moim AP pozostają puste.
didil

Dodałem dzienniki mojego AP w swoim pytaniu.
didil

Odpowiedzi:


6

Zmieniłem opcję „Automatyczny kanał” na stały kanał, a opcję „Szerokość kanału” na 20 MHz w moim AP i to rozwiązało mój problem.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.