在 nmcli 热点上更改 EAPOL 版本

在 nmcli 热点上更改 EAPOL 版本

我已经在运行 Buster 的 Raspberry Pi 上使用 nmcli 设置了热点,方法是:

  1. 安装网络管理器:

    sudo apt-get install network-manager

  2. 设置热点配置文件:

    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

  3. 禁用 dhcpcd(手边没有该命令)

  4. 启动热点。

    sudo nmcli c up hotspot

问题是热点默认使用 eapol 版本 3 (802.1x-2010),我尝试连接到 Pi 网络的某些硬件尚不支持该版本,因此它永远不会完成握手。

NetworkManager 或 nmcli 命令中是否有一些配置可以用来定义要使用的 eapol 版本?我搜索了 nmcli 802-11 字段,但没有结果。

我知道我可以使用 hostapd + dnsmasq + 桥接,但这(希望)更简单。

提前致谢!

答案1

没有办法传递eapol_version=1选项网络管理器wpa_请求者直接,但您可以解决此限制:

  1. 编辑您的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_请求者不会读取您的配置文件。

  2. /etc/wpa_supplicant/wpa_supplicant.conf使用所需选项创建配置文件:

    eapol_version=1
    
  3. 重新加载系统D并重新启动请求者:

    systemctl daemon-reload
    systemctl restart wpa_supplicant.service
    

相关内容