После экспериментов с роутером Zyxel Keenetic 4G II (прошил неофициальную прошивку серии V1 (V1.11.RU.NDMS), на родной серии V2 непредсказуемо работал multicast IPTV) заметил, что WiFi стал работать как-то нестабильно (затыки с сайтами, постоянный реконнект у мессенджеров). Временами, но стабильно, стал вылазить диалог с просьбой ввести пароль от точки. Будто бы порвалась связь и не получилось подключиться с какого-то количества попыток.
Размышляя, что менял (ну кроме самой прошивки), вспомнил, что я переключил WiFi с режима 11b/g на режим 11b/g/n (раньше прошивка читалки не могла цепляться, если AP в таком режиме, после прошивку исправили, а настройки так и остались). Действительно, когда я переключил роутер обратно в режим 11b/g, то всё стало на свои места, так что не прошивка виновата. Казалось бы - решение найдено, но такой путь - не наш метод (хотя… если ничто другое не помогает, то лучше синица в руках, чем журавль в небе).
Если есть проблемы, куда нужно лезть? Не, не в гугл: что бы его спросить, нужно сначала узнать - что спросить. Поэтому лезем в логи, а там, с периодичностью в минуту (плюс-минус пара секунд) такое:
Jan 3 09:49:47 localhost kernel: [32313.303935] wlan0: deauthenticating from ff:ff:ff:ff:ff:f0 (заменил на фейковый) by local choice (Reason: 3=DEAUTH_LEAVING)
Jan 3 09:49:47 localhost wpa_supplicant[1354]: wlan0: CTRL-EVENT-DISCONNECTED bssid=ff:ff:ff:ff:ff:f0 reason=3 locally_generated=1
Jan 3 09:49:47 localhost NetworkManager[1171]: <warn> Connection disconnected (reason -3)
Jan 3 09:49:47 localhost NetworkManager[1171]: <info> (wlan0): supplicant interface state: completed -> disconnected
Jan 3 09:49:47 localhost kernel: [32313.320727] cfg80211: World regulatory domain updated:
Jan 3 09:49:47 localhost kernel: [32313.320733] cfg80211: DFS Master region: unset
Jan 3 09:49:47 localhost kernel: [32313.320736] cfg80211: (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp), (dfs_cac_time)
Jan 3 09:49:47 localhost kernel: [32313.320740] cfg80211: (2402000 KHz - 2472000 KHz @ 40000 KHz), (300 mBi, 2000 mBm), (N/A)
Jan 3 09:49:47 localhost kernel: [32313.320744] cfg80211: (2457000 KHz - 2482000 KHz @ 40000 KHz), (300 mBi, 2000 mBm), (N/A)
Jan 3 09:49:47 localhost kernel: [32313.320746] cfg80211: (2474000 KHz - 2494000 KHz @ 20000 KHz), (300 mBi, 2000 mBm), (N/A)
Jan 3 09:49:47 localhost kernel: [32313.320749] cfg80211: (5170000 KHz - 5250000 KHz @ 40000 KHz), (300 mBi, 2000 mBm), (N/A)
Jan 3 09:49:47 localhost kernel: [32313.320752] cfg80211: (5735000 KHz - 5835000 KHz @ 40000 KHz), (300 mBi, 2000 mBm), (N/A)
Jan 3 09:49:47 localhost kernel: [32313.324167] cfg80211: Regulatory domain changed to country: RU
Jan 3 09:49:47 localhost kernel: [32313.324172] cfg80211: DFS Master region: unset
Jan 3 09:49:47 localhost kernel: [32313.324174] cfg80211: (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp), (dfs_cac_time)
Jan 3 09:49:47 localhost kernel: [32313.324178] cfg80211: (2402000 KHz - 2482000 KHz @ 40000 KHz), (N/A, 2000 mBm), (N/A)
Jan 3 09:49:47 localhost kernel: [32313.324181] cfg80211: (5735000 KHz - 5835000 KHz @ 20000 KHz), (N/A, 3000 mBm), (N/A)
Jan 3 09:49:47 localhost wpa_supplicant[1354]: wlan0: CTRL-EVENT-SCAN-STARTED
Jan 3 09:49:47 localhost NetworkManager[1171]: <info> (wlan0): supplicant interface state: disconnected -> scanning
Jan 3 09:49:48 localhost wpa_supplicant[1354]: wlan0: SME: Trying to authenticate with ff:ff:ff:ff:ff:f0 (SSID='sample-ssid' freq=2472 MHz)
Jan 3 09:49:48 localhost kernel: [32314.524734] wlan0: authenticate with ff:ff:ff:ff:ff:f0
Jan 3 09:49:48 localhost kernel: [32314.524747] wlan0: capabilities/regulatory prevented using AP HT/VHT configuration, downgraded
Jan 3 09:49:48 localhost wpa_supplicant[1354]: wlan0: Trying to associate with ff:ff:ff:ff:ff:f0 (SSID='sample-ssid' freq=2472 MHz)
Jan 3 09:49:48 localhost kernel: [32314.526075] wlan0: send auth to ff:ff:ff:ff:ff:f0 (try 1/3)
Jan 3 09:49:48 localhost kernel: [32314.527929] wlan0: authenticated
Jan 3 09:49:48 localhost kernel: [32314.529289] wlan0: associate with ff:ff:ff:ff:ff:f0 (try 1/3)
Jan 3 09:49:48 localhost NetworkManager[1171]: <info> (wlan0): supplicant interface state: scanning -> associating
Jan 3 09:49:48 localhost wpa_supplicant[1354]: wlan0: Associated with ff:ff:ff:ff:ff:f0
Jan 3 09:49:48 localhost kernel: [32314.534416] wlan0: RX AssocResp from ff:ff:ff:ff:ff:f0 (capab=0x411 status=0 aid=1)
Jan 3 09:49:48 localhost kernel: [32314.536430] wlan0: associated
Jan 3 09:49:48 localhost kernel: [32314.539815] cfg80211: Regulatory domain changed to country: TW
Jan 3 09:49:48 localhost kernel: [32314.539820] cfg80211: DFS Master region: unset
Jan 3 09:49:48 localhost kernel: [32314.539822] cfg80211: (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp), (dfs_cac_time)
Jan 3 09:49:48 localhost kernel: [32314.539827] cfg80211: (2402000 KHz - 2472000 KHz @ 40000 KHz), (300 mBi, 2700 mBm), (N/A)
Jan 3 09:49:48 localhost kernel: [32314.539830] cfg80211: (5270000 KHz - 5330000 KHz @ 40000 KHz), (300 mBi, 1700 mBm), (0 s)
Jan 3 09:49:48 localhost kernel: [32314.539833] cfg80211: (5735000 KHz - 5815000 KHz @ 40000 KHz), (300 mBi, 3000 mBm), (N/A)
Jan 3 09:49:48 localhost NetworkManager[1171]: <info> (wlan0): supplicant interface state: associating -> associated
Jan 3 09:49:49 localhost NetworkManager[1171]: <info> (wlan0): supplicant interface state: associated -> 4-way handshake
Jan 3 09:49:49 localhost wpa_supplicant[1354]: wlan0: WPA: Key negotiation completed with ff:ff:ff:ff:ff:f0 [PTK=CCMP GTK=CCMP]
Jan 3 09:49:49 localhost wpa_supplicant[1354]: wlan0: CTRL-EVENT-CONNECTED - Connection to ff:ff:ff:ff:ff:f0 completed [id=0 id_str=]
Jan 3 09:49:49 localhost NetworkManager[1171]: <info> (wlan0): supplicant interface state: 4-way handshake -> completed
Вышеописанный диалог запроса пароля, судя по всему, вылазит, когда не проходил 4-way handshake, так что проблема не только в реконнектах, а ещё и в каких-то гонках при реинициализации соединения. Приятно, если оставили закачку и пошли обедать/пить кофе/спать.
Ищем, используя ключевые слова: intel, wifi, DEAUTH_LEAVING. Гугл выдаёт море ссылок на эту тему, основной посыл которых:
- выключить dhcpcd;
- выключить power management;
- прописать регион для crda;
- запретить 11n.
Первые два пункта, в моём, случае - полный промах. Третий - не помогло. А вот четвёртый… не хочется. Т.к. быстрее. Где-то наткнулся на то, что при использовании 11n стандарта, но если будет для шифрования ключа использоваться TKIP, то скорость будет не больше 54Мбит. Это навело на мысль посмотреть подробнее описания стандартов и оказалось, что для 11n стандарта рекомендованной является пара: WPA2+AES.
На роутере же у меня заявлена полная универсальность: WPA/WPA2 mix и TKIP/AES mix.
Выставление этих параметров в:
- WPA2 only
- AES only
- плюс включение Wi-Fi_Multimedia|WMM (опция попала под замес, но без неё было уже лень пробовать)
привело к исправлению проблемы с отвалами WiFi. Кроме того, сведения о соединении теперь стабильно дают 135-150 Мбит (антенка одна), против 48-64 при старых настройках: уж не знаю насколько это реально, чуть позже протестирую доступ с одного устройства на другое. Продукты Apple к сети с такой конфигурацией подключиться не смогут (или уже смогут?), но меня это мало волнует ввиду отсутствия оных.
Ну и ссылки, которые навели меня на мысли:
- https://wireless.wiki.kernel.org/en/users/Drivers/iwlwifi (проблемная карта: Intel Centrino Advanced-N 6205 [8086:0085])
- http://ubuntuforums.org/showthread.php?t=2259029 - установка CRDA
- https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1176812, в частности:
-
https://forums.gentoo.org/viewtopic-t-968312-view-previous.html?sid=74c949af883e65bb4dea9040900e8869 -
11n_disable=1
и5ghz_disable=1
для модуля ядра- https://bugs.launchpad.net/archlinux/+source/linux/+bug/1005832/comments/36 - аналогично, выключение 11n.
- https://bbs.archlinux.org/viewtopic.php?id=159080 - power safe off
- http://forums.fedoraforum.org/showthread.php?t=227035 - софтовая криптография, хотя и относится к другой карте
- https://www.linux.org.ru/forum/admin/10999522 - куда же без LOR. Но не останавливаться заставил этот ответ, во всём остальном этот пост показывает проблемы с агрессивным power saving и dhcpcd.
По поводу параметров ключа и понижения скорости:
- http://www.howtogeek.com/204697/wi-fi-security-should-you-use-wpa2-aes-wpa2-tkip-or-both (искать “WPA and TKIP Will Slow Your Wi-Fi Down”)
- http://wifinetnews.com/archives/2010/06/say_goodbye_to_wep_and_tkip.html
- http://www.speedguide.net/faq/how-to-fix-slow-wireless-network-speed-375 - особо рекомендуется к ознакомлению.
И, на последок, куда смотрел, что бы найти причину:
/var/log/syslog
(альтернативно:/var/log/messages
или даже/var/log/everything
)- традиционно
dmesg