Почему hostapd в IEEE 802.11a (5 ГГц) не запускается при загрузке?
1059
dersteps
У меня много проблем hostapdс созданием точки доступа при загрузке системы, когда она настроена для работы в IEEE 802.11a (5 ГГц). Запуск его вручную из командной строки или в IEEE 802.11g (2,4 ГГц) работает просто отлично - только когда я пытаюсь создать точку доступа при загрузке, происходит сбой.
Во-первых, позвольте мне дать вам некоторые детали.
Системная среда
Debian 8.9 (Jessie) 64-разрядная версия (смотрите unameвывод ниже )
Адаптер Wi-Fi - это Azurewave AW-NE785H с чипсетом Atheros AR9280 / AR5B95 (поддерживает как 802.11a, так и 802.11g, поддерживает AP)
uname -a выходы: Linux HOSTNAME 3.16.0-4-amd64 #1 SMP Debian 3.16.43-2+deb8u2 (2017-06-26) x86_64 GNU/Linux
Что я пытаюсь сделать
Я пытаюсь создать точку доступа (AP), которая работает в режиме 802.11a (5 ГГц) и запускается при загрузке системы.
В чем проблема
Проблема в том, что точка доступа не создается при загрузке системы, хотя в ней есть сценарий инициализации, /etc/init.dкоторый фактически запускается при загрузке. Что еще более странно, это то, что когда я пытаюсь запустить точку доступа в режиме IEEE 802.11g (2,4 ГГц), все работает просто отлично, точка доступа появляется при загрузке системы. То же самое относится и к ручному запуску hostapd, используя service hostapd startили hostapd <my-config-file>.
Что я узнал до сих пор / logs / config
Вот мой hostapdфайл конфигурации ( /etc/hostapd/hostapd.cfg):
Как вы видите, я сказал, hostapdчтобы написать /var/log/hostapd_log. Я попытался поднять AP при загрузке еще раз, и вот что я прочитал из файла журнала (все это было почти 500 строк):
hostapd использует ожидаемый файл конфигурации ( /etc/hostapd/hostapd.cfg)
hostapd устанавливает для страны / регулирующего домена значение DE, как ожидается
hostapd запускает автоматический выбор канала, как и ожидалось ( channel=acs_survey).
Кажется, здесь что-то идет не так. Драйвер ( nl80211) сообщает о неудачной команде кадра ( ret=-22 (Invalid argument))
5 опросов ACS проводятся без сообщений об ошибках
ACS терпит неудачу с сообщением ниже, тогда это все.
Вот сообщения журнала, когда ACS отказывает:
ACS: Trying survey-based ACS ACS: Unable to collect survey data ACS: All study options have failed Interface initialization failed wlan0: interface state ACS->DISABLED wlan0: AP-DISABLED ACS: Possibly channel configuration is invalid, please report this along with your config file. ACS: Failed to start wlan0: AP-DISABLED wlan0: Deauthenticate all stations [cut some lines here] hostapd_free_hapd_data: Interface wlan0 wasn't started [cut some more lines here] Interface wlan0 disabled
Когда я бегу service hostapd start(ничего не трогая), появляется AP, и я вижу, что ACS отлично справляется со своей задачей (выбирает канал 40).
Google
Конечно, я много гуглил для решения моей проблемы. Я думаю, что я сузил это до некоторой проблемы с самим процессом загрузки или системными службами, мешающими друг другу. Единственная подсказка, которую я получил от этого, - отключить wpa_supplicant(подсказка, которую я нашел, гласила, что человек решил проблему, отключив wpa_supplicantи другие мешающие сервисы . К сожалению, они никогда не упоминали другие сервисы, которые отключили.
Я побежал systemctl status wpa_supplicantи получил следующий вывод:
● wpa_supplicant.service Loaded: not-found (Reason: No such file or directory) Active: inactive (dead)
Так что, я думаю, он не активен?
TL; DR
Почему не hostapdудается создать точку доступа, когда она настроена для работы в режиме 802.11a и запущена при загрузке, но удается создать ее после завершения загрузки и выполнения той же самой команды вручную? Что мне нужно сделать, чтобы добиться того, что я пытаюсь сделать?
Кто-нибудь успешно создал AP, как я пытаюсь создать? Есть намеки?
Если понадобятся какие-либо дополнительные детали, я буду рад предоставить их.
Заранее большое спасибо
1 ответ на вопрос
0
xuhcc
Похоже, ошибка в hostapd. Я использую следующие настройки для службы hostapd, чтобы перезапустить его автоматически:
[Service] Restart=on-failure RestartSec=30 # hostapd fails with exit code 0 when ACS is enabled RestartForceExitStatus=0