systemd-networkdを使用してネットワーク構成を変更するときのタスクの実行

systemd-networkdを使用してネットワーク構成を変更するときのタスクの実行

ifupdownDebian から Debian に切り替えていますが、systemd-networkdほとんどがうまく動作します。欠けているのは、killall -ARLM tincVPNがタイムリーに開始されるようにネットワークが変更されるたびに電話をかけたいということです。

そのような機能があるかsystemd提供されますか?systemd-networkdどうやって使うの?

答え1

networkd-dispatcherインターフェイスの状態が変更された後にイベントを実行するために使用するもの:

Networkd-dispatcherは、systemd-networkd接続状態を変更するためのディスパッチャデーモンです。このデーモンは NetworkManager-dispatcher に似ていますが、systemd-networkd の制限された特性により、サポートするイベントの種類がさらに制限されます。

次に接続GitLab

答え2

Tincはシグナルを直接送信するのではなく、システムごとに更新する必要があります。これを達成するにはRequire=、このセクションの適切な行Before=に関連付けるように適切なユニットファイルを設定する必要があります。また、ネットワークサービスの設定が正しいことを確認してください。 (つまり、{、、}の代わりに)After=[Unit]WantedBy=WantedBy=network.targetnetwork-online.targetnetwork-pre.targetmulti-user.target

これにより、systemctl restart systemd-networkd.serviceネットワークを再起動できます。これをsystemd-resolvdudev/ dbus[email protected]Wi-Fi追加時)と組み合わせるとネットワークが動作します。

次の記事を必ずお読みくださいシステムネットワークに切り替えるそして単位依存性。これは、ドキュメントで説明されているように、コマンドを介してsystemd.serviceデバイスに信号を送信する方法でもあります。systemctl killsystemd管理者ガイド

答え3

現在は不可能です。ただし、systemd-networkd-wait-online.serviceTincを開始依存関係にのみ再構成できます。私の経験では、Tincはネットワーク構成の変更に迅速に反応します。少なくともLinuxでは、rtnetlinkを使用してインターフェースの変更を受け取ることができます。

関連情報