ネットワーク接続が確立したらスクリプトを実行する

ネットワーク接続が確立したらスクリプトを実行する

私は Debian Jessie ベースのサーバー群を運用しており、ネットワーク リンクが確立されたときにローカル ネットワーク IP アドレスをアップロードする信頼性の高い方法が必要です。これを行うスクリプトを作成し、systemd サービスとして登録しました。

[Unit]
Description=Server Registration
Requires=network.target network-online.target
After=network.target network-online.target

[Service]
ExecStart=<script-location>
Type=simple
Restart=on-failure
WatchdogSec=21600

[Install]
WantedBy=multi-user.target

残念ながら、これが期待通りに動作していたら、SO では質問にはなりません。スクリプトは、routeデフォルトで使用されるネットワーク デバイスを決定するコマンドを使用しますが、ネットワークがまだ起動していないためにルートが存在しないため、実行に失敗します。また、システムはネットワーク接続なしで起動し、後で接続される可能性があるため、ネットワークが起動するたびにスクリプトをトリガーする必要があります。

ネットワークは systemd-networkd を使用して設定されます。

ネットワークが起動するたびにスクリプトが実行され、それ以前には実行されないようにするにはどうすればよいですか?

関連情報