Как настроить hostapd совместно с Коннманом - PullRequest
0 голосов
/ 26 марта 2019

Я хочу использовать hostapd (на виртуальном сетевом устройстве) совместно с приложением, которое управляет сетью (eth0, wlan0) с помощью connman.

Проблема в том, что мне нужно сохранить определенную последовательность операций.Запуск модулей systemd вручную работает, но мне нужно делать это программно из моего приложения.

Что я делаю:

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 (....)» из приложения, но я не хочу, чтобы мое приложение работало с правами root.

Спасибо за вашу помощь, Майкл

...