Comment corriger la «désauthentification par choix local»?

10

J'ai construit un Linux embarqué à l'aide de Buildroot et j'ai du mal à rester connecté à mon AP. Impossible d'obtenir une adresse IP plusieurs fois.

J'utilise wpa_supplicant pour me connecter à mon AP à l'aide de WPA2-PSK. Cela fonctionne avec d'autres AP tels que mon smartphone en mode AP.

Quand j'utilise iwconfig wlan0je vois que je suis associé à mon 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

Mais je ne peux pas obtenir d'adresse IP avec ifup wlan0

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

Je dois dire que je ne peux obtenir une adresse IP qu'une seule fois. Si je redémarre, ce n'est plus possible.

J'ai réussi à installer dhclientau lieu d'utiliser le client DHCP par défaut de Busybox mais rien ne se passe (je reste bloqué indéfiniment)

dhclient wlan0

D'après mes messages du noyau, il semble que je ne sois pas continuellement associé

[  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)
...

Les journaux de mon 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

Les journaux quand ça marche (une seule fois)

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

Comment le résoudre?

didil
la source
avez-vous essayé de tuer le wpa_supplicant à la main? Avez-vous essayé un autre noyau? Je définirais également le pays dans le fichier de configuration.
Rui F Ribeiro
oui j'ai essayé de tuer wpa_supplicant mais je n'ai pas d'autre gestionnaire wifi donc il ne fait rien (sauf désassocié de l'AP). Je n'ai pas de noyau différent à tester et cela fonctionne avec d'autres AP.
didil
D'autres appareils tels que les smartphones se connectent-ils correctement à votre point d'accès? Avez-vous vérifié les journaux / dmesg sur AP lui-même?
Oui, mon smartphone (Android) et mon ordinateur portable (Ubuntu 15.10) se connectent à mon AP à tout moment (même après un redémarrage). les journaux de mon AP restent vides.
didil
J'ai ajouté les journaux de mon AP dans ma question.
didil

Réponses:

6

J'ai changé l'option "Canal automatique" en un canal fixe et l'option "Largeur du canal" en 20 MHz dans mon AP et cela a résolu mon problème.

didil
la source