연결되어서는 안되는 액세스 포인트를 표시하는 WPA_CLI

연결되어서는 안되는 액세스 포인트를 표시하는 WPA_CLI

wpa_cli저는 Linux 커널 3.3을 사용하고 있으며 이 유틸리티를 사용하여 WiFi 연결 상태를 모니터링하려고 합니다 . Edimax WiFi 동글을 사용하여 무선 액세스 포인트에 연결하고 있습니다.

일반적으로 다음과 같은 내용이 표시됩니다.

# wpa_cli status
Selected interface 'wlan0'
wpa_state=SCANNING
ip_address=XXX.XXX.XXX.XXX
address=XX:XX:XX:XX:XX:XX

아니면 똑같지만 wpa_state=COMPLETED.

이 텍스트 출력을 구문 분석하면 무선 연결이 활성 상태인지 검색 중인지 확인할 수 있습니다. 그러나 전원을 끈 후에도 액세스 포인트가 wpa_state=COMPLETED여전히 반환되는 것을 확인했습니다 . 다음 명령을 사용합니다.

# iwlist wlan0 scanning

강제로 스캔하면 wpa_state정확해집니다.

강제로 스캔하여 wpa_state가끔 정확할 수도 있지만 대개는 그렇지 않습니다.

어딘가에 잘못된 구성이 있는지, 아니면 이 작업을 수행하는 더 효율적인 방법이 있는지 궁금합니다(본질적으로 내 인터페이스에 활성 연결이 있는지 확인하고 싶습니다). 여기 있습니다 /etc/wpa_supplicant.conf:

ctrl_interface=/var/run/wpa_supplicant
ap_scan=1
country=US


network={
    ssid="myssid"
    psk="mypsk"
    key_mgmt=WPA-PSK
    eap=
}

매번 검사를 강제로 수행하지 않고 대신 드라이버/커널 모듈이 이를 처리하도록 하는 것을 선호합니다. Linux에서 WiFi를 사용하여 작업하는 것은 이번이 처음이므로 뭔가 잘못 구성한 것 같습니다. 누구든지 올바른 방향으로 나를 가리킬 수 있습니까?

업데이트:

좀 더 자세히 조사한 결과 커널이 AP 목록의 캐시된 버전을 반환하게 만드는 이상한 일이 발생하고 있다고 생각됩니다. 저는 RTL8192cu드라이버를 사용하고 있어서 디버깅을 시작했습니다. 내 문제가 다음과 관련이 있을 수 있다고 생각합니다.이것, 그러나 거기에 사용된 2.6 커널보다 최신 커널이 있기 때문에 정확한 버그는 아닙니다.

업데이트 2:

내 믿음은 문제가 커널 어딘가에 있을 수 있다는 것입니다. 파일 net/mac80211/scan.c의 function 214번 라인에서 내 AP의 ieee80211_scan_rxa가 bssid나타나고 BSS(AP에 전원이 공급될 때) 다음을 통해 연결됩니다 ieee80211_rx_bss_put(여기). 이 시점에서 스캔 결과로 반환되며 커널의 계층이 해당 AP를 인증하고 연결하게 wpa_supplicant됩니다 . 그러나 AP 전원을 분리한 후에는 레이어가 해당 기능을 포기하는 것을 MLME결코 볼 수 없습니다 . 이로 인해 스캔 이 끝날 때( ) 파일의 205행(MLMEatomic_tBSSBSScfg80211_bss_expirecfg80211_wext_giwscannet/wireless/scan.c여기).

MLME레이어를 감소시키기 위해 추가해야 하는 wpa_supplicant에 대한 일부 구성이 있습니까 BSS? 아니면 분명히 커널 버그입니까?

나는 이미 시도했습니다:

# wpa_cli bss_expire_age 10
# wpa_cli bss_expire_count 2

내 문제를 해결하지 못했습니다.

답변1

그래서 많은 조사 끝에 문제가 커널 rtlwifi드라이버 때문이라는 것을 발견했습니다. 나에게는 rtl8192cu드라이버가 함수를 호출하여 놓친 비콘을 처리하는 책임을 맡은 것처럼 보이지만 ieee80211_beacon_loss해당 호출을 찾을 수 없습니다. 드라이버 IEEE80211_HW_BEACON_FILTER에서 에 대한 지원을 제거하여 rtlwifi문제가 해결되었습니다.

이것반점본질적으로 제가 변경한 내용과 동일합니다.파일나에게이 대답을 가져다 준 것의 일부입니다.

관련 정보