Ошибка hostapd «nl80211: не удалось настроить режим драйвера»

26

Я хотел бы сделать виртуальный маршрутизатор на Ubuntu 12.04

но я получаю это сообщение об ошибке, когда я запускаю последнюю команду терминала

Configuration file: hostapd.conf
nl80211: Could not configure driver mode
nl80211 driver initialization failed.
hostapd_free_hapd_data: Interface wlan0 wasn't started
user280105
источник
4
Вы используете 14.04? Существует открытая ошибка для hostapd с этими сообщениями об ошибках. Ошибка панели запуска # 1289047 Пакет hostapd не работает
bain

Ответы:

31

Как справедливо заметил @bain, для этой цели в панели запуска возникла ошибка. Этот обходной путь предположил, что там прекрасно работает для меня:

sudo nmcli nm wifi off
sudo rfkill unblock wlan

sudo ifconfig wlan0 10.15.0.1/24 up
sleep 1
sudo service isc-dhcp-server restart
sudo service hostapd restart

Первые две строки останавливают wlan у менеджера сети, а затем разблокируют интерфейс, так что ifconfig может работать.


ОБНОВЛЕНИЕ: Но если для первой команды вы получите сообщение об ошибке, Error: Object 'nm' is unknownиспользуйте вместо этого:

sudo nmcli radio wifi off

Следующие команды используют ifconfig для вызова wlan и допускают задержку в секунду, затем перезапускают сервер dhcp (хотя мне не понадобился этот перезапуск в моей настройке) и, наконец, запускают службу hostapd.

Теперь он должен начинаться без каких-либо проблем.

Прахлад Ери
источник
5
Более nmclisudo nmcli radio wifi off
новый
Это ничего не изменило
TSR
8

У меня только что была эта ошибка на Raspberry pi с запущенным Kali linux и hostapd 2.4. Я подозревал, что это происходит из-за того, что некоторые другие сетевые процессы поддерживают интерфейс занятым, поэтому я запустил команду airmon-ng, которая проверяет и убивает процессы, которые могут использовать карту Wi-Fi:

airmon-ng check kill

Чтобы просто увидеть любые сетевые процессы, не убивая их, используйте airmon-ng check. После того, как я их убил, я снова запустил hostapd, и больше никаких ошибок не возникало.

Для некоторых других сетевых функций вам могут понадобиться эти процессы, для этого я перезапустил малину, но их также можно запускать по отдельности.

adrianTNT
источник
3

Просто отметьте, что в соответствии с ошибкой, связанной с @bain, самое простое решение - отключить Network Manager для интерфейса, который должен запускаться с hostapd.

Как упомянуто там:

WORKAROUND: For this to persist through reboots, execute the following in a terminal:
sudo nano /etc/NetworkManager/NetworkManager.conf

Add the following entry where the x's are replaced with your WiFi MAC address, save, and then reboot:
[keyfile]
unmanaged-devices=mac:xx:xx:xx:xx:xx:xx
poyaque-estamos
источник
Первое, что работает! Сетевой менеджер не разрешал мне использовать мой Intel 8260 с hostapd.
Торриен
2

Я столкнулся с той же проблемой. Первым делом я попытался вручную обновить hostapd из репозитория Debian с v2.1 до v2.3. Проблема сохранилась.

Я создал этот сценарий, представляющий собой список команд, которые разблокируют драйвер WLAN, и теперь у меня наконец есть рабочая точка доступа, уже развернутая в удаленном месте.

Я сохранил скрипт в /usr/bin/enableAP.sh. Не забудьте включить его в ваш crontab, чтобы он выполнялся при загрузке.

#!/bin/sh
/bin/sleep 30
/usr/sbin/service hostapd stop
/usr/sbin/service network-manager stop
/sbin/ifdown wlan0
/sbin/iwconfig wlan0 mode Managed
/usr/sbin/rfkill unblock wlan
/usr/bin/nmcli radio wifi off
/usr/sbin/service hostapd stop
/bin/sleep 10
/usr/sbin/service hostapd start

если вы хотите избежать этой проблемы сразу после установки новой виртуальной машины и hostapd, вам нужно заблокировать ubuntu от обновления hostapd: когда вы используете sudo apt-get upgradeего, он обновляет этот пакет до v2.1, который не работает (несомненно, с ошибками).

Вы должны использовать, sudo apt-mark hold hostapdчтобы заблокировать будущие обновления до Hostapd.

стог
источник
0

Попробуй это:

  1. Нажмите значок сети
  2. Выберите «Создать беспроводную сеть»
  3. Выберите имя, тип шифрования и пароль
  4. Нажмите создать
  5. Убедитесь, что вы подключены к Интернету.
Душан Милошевич
источник