我已经在运行 Buster 的 Raspberry Pi 上使用 nmcli 设置了热点,方法是:
安装网络管理器:
sudo apt-get install network-manager
设置热点配置文件:
sudo nmcli c add type wifi ifname wlan0 con-name hotspot ssid ssidname 802-11-wireless.mode ap ipv4.method shared 802-11-wireless.band bg 802-11-wireless.channel 11 wifi-sec.key-mgmt wpa-psk wifi-sec.psk password
禁用 dhcpcd(手边没有该命令)
启动热点。
sudo nmcli c up hotspot
问题是热点默认使用 eapol 版本 3 (802.1x-2010),我尝试连接到 Pi 网络的某些硬件尚不支持该版本,因此它永远不会完成握手。
NetworkManager 或 nmcli 命令中是否有一些配置可以用来定义要使用的 eapol 版本?我搜索了 nmcli 802-11 字段,但没有结果。
我知道我可以使用 hostapd + dnsmasq + 桥接,但这(希望)更简单。
提前致谢!
答案1
没有办法传递eapol_version=1
选项网络管理器到wpa_请求者直接,但您可以解决此限制:
编辑您的
wpa_supplicant.service
:systemctl edit --full wpa_supplicant.service
并替换行:
ExecStart=/sbin/wpa_supplicant -u -s -O /run/wpa_supplicant
和:
ExecStart=/sbin/wpa_supplicant -u -s -O /run/wpa_supplicant -i wlan0 -c /etc/wpa_supplicant/wpa_supplicant.conf
其中
wlan0
是无线接口的名称。如果您不提供-i
选项开关,wpa_请求者不会读取您的配置文件。/etc/wpa_supplicant/wpa_supplicant.conf
使用所需选项创建配置文件:eapol_version=1
重新加载系统D并重新启动请求者:
systemctl daemon-reload systemctl restart wpa_supplicant.service