Debianからに切り替えていますifupdown
がsystemd-networkd
、ほとんど問題なく動作します。足りない点の1つは、ネットワークが変更されるたびにを呼び出しkillall -ARLM tinc
て、VPNがタイムリーに稼働するようにすることです。
systemd
そのsystemd-networkd
ような機能はありますか、または提供していますか?どうやって使うの?
Debianからに切り替えていますifupdown
がsystemd-networkd
、ほとんど問題なく動作します。足りない点の1つは、ネットワークが変更されるたびにを呼び出しkillall -ARLM tinc
て、VPNがタイムリーに稼働するようにすることです。
systemd
そのsystemd-networkd
ような機能はありますか、または提供していますか?どうやって使うの?
回答:
Tincは、直接信号を送信するのではなく、systemdユニットとして更新する必要があります。これを達成するために適切なと連鎖させるために彼らのユニットファイルを設定する必要がありRequire=
、Before=
とAfter=
の行[Unit]
セクション。またWantedBy=
、ネットワークサービスの正しい設定を確認してください。(すなわち、WantedBy=
{ network.target
、network-online.target
、network-pre.target
}の代わりにmulti-user.target
)
これにより、実行systemctl restart systemd-networkd.service
してネットワークを再起動できます。これを/ (wifiの場合はプラス)と組み合わせるとsystemd-resolvd
、ネットワークは正常に機能します。udev
dbus
wpa_supplicant@nic.service
systemd-networkdとユニット依存への切り替えに関する記事を必ずお読みください。これは、systemd for administartorsガイドに記載されsystemd.service
ているsystemctl kill
コマンドを介してユニットに信号を送信する方法でもあります
systemctl kill
、信号の配信に使用できます。しかし、ネットワーク構成の変更時にそれをトリガーする方法はわかりません。
network.target
そして、network-online.target
そのユニットをキックオフします。これだけいるtinc.service
含めるRequires=systemd-networkd.service
と、WantedBy=network-online.target
そのオフにsystemd-networkdキックは、NICおよびTUNインタフェースを起動し、IPアドレスを確立し、その後、必要に応じて起動または再起動するTINCに通知しますときに。
case "$2" in up|connectivity-change) if /usr/bin/nm-online -qx; then systemctl reload autossh.service fi;; esac