Erro hostapd “nl80211: não foi possível configurar o modo do driver”

26

Eu gostaria de fazer um roteador virtual no Ubuntu 12.04

mas estou recebendo essa mensagem de erro quando executo o último comando do terminal

Configuration file: hostapd.conf
nl80211: Could not configure driver mode
nl80211 driver initialization failed.
hostapd_free_hapd_data: Interface wlan0 wasn't started
user280105
fonte
4
Você está usando o 14.04? Há um bug aberto para o hostapd com essas mensagens de erro. O bug do launchpad # 1289047 o pacote hostapd está quebrado
bain

Respostas:

31

Como o @bain apontou com razão, existe um bug levantado na barra de lançamento para esse mesmo objetivo. Esta solução alternativa sugerida funciona perfeitamente para mim:

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

As duas primeiras linhas interrompem a wlan do gerenciador de rede e desbloqueiam a interface, para que o ifconfig possa funcionar.


UPDATE: Mas, se o primeiro comando receber a mensagem de erro Error: Object 'nm' is unknown, use-o:

sudo nmcli radio wifi off

Os próximos comandos usam o ifconfig para ativar a wlan e permitir um atraso de um segundo, depois reinicie o servidor dhcp (embora eu não precisei dessa reinicialização na minha instalação) e, finalmente, inicie o serviço hostapd.

Agora ele deve começar sem problemas.

Prahlad Yeri
fonte
5
Mais recente nmclirequer esta sintaxe sudo nmcli radio wifi off:)
m132 14/05
Isso não mudou nada
TSR:
8

Eu apenas tive esse erro no Raspberry pi executando o Kali linux e o hostapd 2.4. Suspeitei que isso ocorra porque alguns outros processos de rede mantêm a interface ocupada. Por isso, executei este comando airmon-ng que verifica e mata e processos que podem usar a placa wifi:

airmon-ng check kill

Para ver apenas os processos de rede sem matá-los, use airmon-ng check. Depois de matá-los, iniciei o hostapd novamente e não ocorreram mais erros.

Para algumas outras funcionalidades de rede que você pode precisar desses processos, reiniciei o raspberry para isso, mas eles também podem ser iniciados individualmente.

adrianTNT
fonte
3

Apenas mencione que, de acordo com o bug vinculado pelo @bain, a solução mais fácil é desativar o Network Manager para a interface que será executada com o hostapd.

Como mencionado lá:

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
fonte
Primeira coisa que funciona! O gerente de rede não estava me deixando usar meu Intel 8260 com o hostapd.
Torrien 6/06/16
2

Eu tive o mesmo problema. A primeira coisa que tentei foi atualizar manualmente o hostapd de um repositório debian da v2.1 para a v2.3. O problema persistiu.

Criei esse script, que é uma lista de comandos que desbloqueiam o driver WLAN e agora finalmente tenho um AP em funcionamento, já implantado em um local remoto.

Salvei o script em /usr/bin/enableAP.sh . Certifique-se de incluí-lo no seu crontab para que ele seja executado na inicialização.

#!/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

se você quiser evitar esse problema logo após instalar sua nova máquina virtual e o hostapd, precisará impedir que o ubuntu atualize o hostapd: quando você o utiliza sudo apt-get upgrade, atualiza este pacote para a v2.1, o que não funciona (certamente com erros).

Você deve usar sudo apt-mark hold hostapdpara bloquear futuras atualizações no Hostapd.

Rick
fonte
0

Tente o seguinte:

  1. Clique no ícone de rede
  2. Selecione "Criar rede sem fio"
  3. Escolha um nome, tipo de criptografia e senha
  4. Clique em criar
  5. Verifique se você está conectado à Internet.
Dusan Milosevic
fonte