防止 systemd-networkd (DHCP) 注册 (NTP) 时间服务器

防止 systemd-networkd (DHCP) 注册 (NTP) 时间服务器

我试图阻止一些 SBC(运行 Debian)通过路由器自己的 NTP 服务器更新时间。我们只想使用手动配置的配置,例如来自*.pool.ntp.org.

我相信某些路由器重置时会出现特定问题的根本原因。在短时间内,路由器似乎会以明显错误的日期进行响应,例如 2003 年 1 月 1 日(在撰写本文时是 2019 年!),然后又恢复正常。这对各自 SBC 上运行的软件产生了非常负面的影响。我无法控制这些路由器,并且确实不需要将它们用于 NTP。只是路由器的 DHCP 服务器提供 NTP,并且 Debian SBC 自动使用它。


我的第一个想法是ntp-servers/etc/dhcp/dhclient.conf例如中删除:

request subnet-mask, broadcast-address, time-offset, routers,
    domain-name, domain-name-servers, domain-search, host-name,
    dhcp6.name-servers, dhcp6.domain-search, dhcp6.fqdn, dhcp6.sntp-servers,
    netbios-name-servers, netbios-scope, interface-mtu,
    rfc3442-classless-static-routes, ntp-servers;

据我所知,/etc/dhcp/dhclient.confDebian 不再使用它,因为它使用systemd-networkdsystemd-timesyncd


我能找到的每本手册都大意如此:

从 systemd-networkd.service(8) 配置或通过 DHCP 获取的任何每接口 NTP 服务器优先。

这是我特别需要防止的行为。即使路由器可以提供 ntp 服务器,我们也需要防止它们被用作 NTP 服务器。

答案1

请参考文档在 freedesktop.org

您可以使用必须放入 /etc/systemd/network 文件夹中的 .network ini 样式文件的UseNTP=no[DHCPv4]部分来禁用默认行为。[DHCPv6]

您还必须DHCP=yes在该[Network]部分中激活,才能使其生效。

答案2

不确定我是否明白你的问题,但你可以编辑/etc/ntp.conf以下内容server *.pool.ntp.org prefer。该prefer关键字应该优先选择指定的服务器而不是列表中的其他服务器。

相关内容