隧道连接/未连接状态的 systemd 服务

隧道连接/未连接状态的 systemd 服务

我在 Ubuntu 22.04 上使用 OpenVPN 作为客户端,没有 persis-tun 选项。因此,当 OpenVPN 服务器可用时,最终 OpenVPN 将连接并创建一个 tun0 设备。当服务器不可用时,tun0 接口不可用。

在我看来,我应该能够创建一个 systemd 服务

[Unit]
After=sys-devices-virtual-net-tun0.device

或者通过添加

[Install]
WantedBy=sys-devices-virtual-net-tun0.device

或我的 .service 文件中这些选项的某种组合

然而,这似乎只在 tun0 接口可用的系统上第一次触发。无论隧道是否已启动,或者 openvpn 是否正在运行,systemctl --all | grep tun0都将显示sys-devices-virtual-net-tun0.devicesys-subsystem-net-devices-tun0.device为已加载/活动/已插入

每次 tun0 接口由于 OpenVPN 客户端重新连接而变得可用时,我该怎么做才能使我的服务的 ExecStart 触发?

相关内容