如何与Connman一起配置hostapd

时间:2019-03-26 07:30:14

标签: hostapd connman

我想与一个用connman管理网络(eth0,wlan0)的应用程序一起使用hostapd(在虚拟网络设备上)。

问题是,我必须保持一定的操作顺序。手动启动系统单元是可行的,但是我需要通过应用程序以编程方式进行。

我做什么:

connmanctl enable wifi
systemctl start ap
connmanctl disable wifi
systemctl start hostapd
connmanctl enable wifi

我尝试了什么: 我将这些依赖项添加到ap.service中,因为必须在wlan0启动后创建虚拟接口(我没有找到“ UP”是什么好的定义):

BindsTo=sys-subsystem-net-devices-wlan0.device
After=sys-subsystem-net-devices-wlan0.device
Wants=network-online.target
After=network-online.target

ap.service:

[Unit]
Requires=network.target

[Service]
Type=oneshot
ExecStart=/usr/sbin/iw dev wlan0 interface add uap0 type __ap
ExecStart=/sbin/ip link set uap0 up
ExecStart=/sbin/ip addr add 192.168.4.1/24 broadcast 192.168.4.255 dev uap0

[Install]
WantedBy=multi-user.target

一种解决方案是从应用程序中以“ system(....)”启动systemd-units,但我希望避免我的应用程序以root身份运行。

感谢您的所有帮助, 迈克尔

0 个答案:

没有答案