hostapd错误“nl80211:无法配置驱动程序模式”

我想在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 

正如@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服务。

它现在应该开始没有任何问题。

我刚刚在运行Kali linux和hostapd 2.4的Raspberry pi上遇到此错误我怀疑这是因为其他一些网络进程使接口忙,所以我运行了这个airmon-ng命令来检查并杀死可能使用wifi卡的进程:

 airmon-ng check kill 

要只查看任何网络进程而不杀死它们,请使用airmon-ng check 。 在我杀了它们之后,我再次启动了hostapd并且没有出现任何错误。

对于某些其他网络function,您可能需要这些进程,我重新启动了覆盆子,但它们也可以单独启动。

请注意,根据@bain链接的错误,最简单的解决方案是禁用与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 

我遇到了同样的问题。 我尝试的第一件事是从debian存储库手动将hostapd从v2.1更新到v2.3。 问题依然存在。

我创建了这个脚本,这是一个解锁WLAN驱动程序的命令列表,现在我终于有了一个已经部署在远程位置的工作AP。

我将脚本保存到/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。

试试这个:

  1. 单击网络图标
  2. 选择“创建无线网络”
  3. 选择名称,加密类型和密码
  4. 单击创建
  5. 确保您已连接到互联网。