问题描述
I would like to make a Virtual Router on 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,并且再也没有出现错误。
对于某些其他网络功能,您可能需要这些进程,为此我重新启动了树莓派,但它们也可以单独启动。
第三种方法
只需提及,根据@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