systemdを使用してイーサネット接続/切断からスクリプトを実行する

systemdを使用してイーサネット接続/切断からスクリプトを実行する

ローカルネットワークに接続している場合はsystemd-networkdを使用してDHCPサーバーに接続し、接続しないとDHCPサーバーに戻す組み込みデバイスがあります。まだ実装していませんが、ここで説明されている答えを使用する予定です。https://unix.stackexchange.com/a/309046/114497

この回答は、起動時に起動されるスクリプトの使用を指します。ユーザーが実行中にネットワークケーブルを抜いてPCに接続したかどうかを知りたいです。スクリプトを起動するにはボードを再起動する必要があります。だから質問は:systemdのインターフェイスが変更されたときにスクリプトを起動する方法はありますか?

PS:私ネットワークスケジューラ成功しませんでした。イーサネットケーブルを抜いてサービスを再起動してみましたsystemd-networkdが、作成したスクリプトは/usr/lib/networkd-dispatcher実行されません。

答え1

これ回答ネットワークが変更されたら、systemdが何ができるかを説明してください...

多くの代替ソリューションがありますが、2019年6月現在、systemdのみを使用するシンプルでシンプルなソリューションはまだ実装されていません。

答え2

net-o-matic現在を監視するスクリプトを項目で開始するようにDOWN調整できます。UP@reboot root crontab

この問題を解決するためにbashスクリプトを作成しました。https://github.com/waltinator/net-o-matic接続を監視し、接続が失われた場合は、ユーザーが指定した操作を実行して再接続を試みます。

関連情報