私のシステムが新しいIPv6アドレスを受け取ったら、systemd oneshotサービスをどのように実行しますか?

私のシステムが新しいIPv6アドレスを受け取ったら、systemd oneshotサービスをどのように実行しますか?

systemdを実行したいワンタイムサービス私のシステムがネットワークルーターから新しいIPv6アドレスを割り当てられるたびに(これは起動時に発生し、稼働時間中に定期的に発生します)

理想的には、このイベントはIPv6アドレスの更新にのみ適用され、潜在的なIPv4アドレスの変更は含まれません。

そのようなイベントのネットワークdbusアクティビティを監視するためにsystemdを使用できますか?

私の究極の目標は、これが発生したときに動的DNSエンドポイントに到達し、システムのIPv6 DNSレコードが古くならないようにすることです。

ベストアンサー1

私は数年前(想像力の欠如)というタイトルの記事を書いた。自動ドメイン名

systemdサービスを呼び出しませんが(その時点でsystemdが存在しなかったようです!)、DNS更新を実行するために外部プロセスを呼び出します(修正する)。ただし、IPアドレスの追加と削除をネットワークリンクレベルで直接監視します。つまり、発生方法(手動管理構成、SLAAC、DHCP、ネットワーク管理者)に関係なく、その項目を選択します。変化が発生するとすぐに反応します。フィルタ(リンク - ローカルアドレスなどの項目を自動的に除外するように設計されています)をサポートしているため、必要に応じてIPv6アドレスの変更に準拠し、IPv4アドレスの変更を無視することができます。

たぶんあなたはそれを使用するか、必要に応じて修正することができます。 IPアドレス変更を検知し、対応する魔法の大半はwatchip.c、私の思考に。

おすすめ記事