wpa_supplicant 2.10 + WPA TKIP + gentoo + reject
Обновил одну из систем линуксовых, наткнулся на занятное: пропал wi-fi.
Доступ был организован при помощи старого усб-свистка DLink DWA-140. Драйвера по прежнему подгружались, интерфейс wlan0 отображался в ифконфиге, iw dev wlan0 scan отрабатывал. Но подключение к роутеру не работало, счетчики пакетов интерфейса не менялись, никакой настройки типа назначения адреса и тп не выполнялось.
Как выяснилось запуском wpa_supplicant с отладкой -d, не проходила авторизация, ибо проваливалось согласование протоколов.
Выглядит это примерно так:
...
...
wpa_parse_wpa_ie_rsn: invalid group cipher 0x8 (000fac02)
wpa_parse_wpa_ie_rsn: invalid group cipher 0x8 (000fac02)
wlan0: skip RSN IE - parse failed
wlan0: skip WPA IE - GTK cipher mismatch
wlan0: reject due to mismatch with WPA/WPA2
wlan0: 1: 62:ce:86:a0:61:f9 ssid='' wpa_ie_len=26 rsn_ie_len=24 caps=0x1031 level=-41 freq=5180
wlan0: skip - SSID not known
net-wireless/wpa_supplicant tkip
Флаг tkip меняет ключи сборки, на других дистрибутивах надо будет глянуть ./configure --help на что-то вроде --enable-tkip.
https://wiki.gentoo.org/wiki/Wpa_supplicant