Bre*_*ret 5 networking dhcp d-bus systemd ipv6
每当我的系统从网络路由器获得分配给它的新 IPv6 地址时,我都想运行 systemd oneshot 服务(这将在启动时进行,并且在整个正常运行时间内定期进行)。
理想情况下,此事件仅适用于 IPv6 地址更新,不包括潜在的 IPv4 地址更改。
是否可以使用 systemd 监控此类事件的网络 dbus 活动?
我的最终目标是在发生这种情况时命中动态 DNS 端点,以便该系统的 IPv6 DNS 记录避免过时。
很多年前我写过类似的东西,叫做(缺乏想象力)autoddns。
它不调用 systemd 服务(我认为当时不存在 systemd!),但它确实调用外部进程来执行 DNS 更新(nsupdate)。然而,它确实直接在网络链路级别监视 IP 地址的添加和删除,这意味着无论它们如何发生(手动管理配置、SLAAC、DHCP、网络管理器),它都会拾取它们。当发生变化时它会立即做出反应。它确实支持过滤器(设计用于自动排除链接本地地址等内容),因此您可以让它尊重 IPv6 地址更改并忽略 IPv4 地址更改,如您所愿。
也许您可以使用它或修改它来满足您的需求。我认为,检测 IP 地址变化并对其做出反应的大部分功能都在watchip.c中。
| 归档时间: |
|
| 查看次数: |
457 次 |
| 最近记录: |