启动 hostapd 之前无法创建虚拟接入点接口

启动 hostapd 之前无法创建虚拟接入点接口

我有一个系统,我想将其设置为软件接入点。但是,NIC 有某种怪癖,无法由 hostapd 直接引用,但我需要在启动 hostapd 之前通过运行此命令来创建虚拟接入点接口。

# iw dev wlp1s0 interface add uap0 type __ap

我最初的方法是尝试使用systemd-networkd(用于设置网络),但似乎没有办法做到这一点。

我目前的方法是创建这个 systemd 单元文件

/usr/lib/systemd/system/hostapd-pre.service

[Service]
Type=oneshot
ExecStart=/usr/bin/iw dev wlp1s0 interface add uap0 type __ap

[Install]
WantedBy=hostapd.service

但是,当我的系统启动时,网络接口似乎不存在,或者有不同的名称,或者由于某种原因无法被引用我爱因为我在日记里看到了这个

systemd[1]: Starting hostapd-pre.service...
iw[406]: command failed: No such device (-19)
systemd[1]: hostapd-pre.service: Main process exited, code=exited, status=237/KEYRING
systemd[1]: hostapd-pre.service: Failed with result 'exit-code'.
systemd[1]: Failed to start hostapd-pre.service.

但是,如果我让系统启动,然后在它完成后手动运行该单元,则设备就会成功创建。

我必须做什么才能成功运行我爱启动 hostapd 之前命令吗?

相关内容