虽然对于 DHCPv4 来说似乎只有一个选项可以指定 (S)NTP 服务器,即 42,但 DHCPv6 似乎提供了两个单独的选项:
OPTION_SNTP_SERVERS
(31)使用与 DHCPv4 相同的配置格式,其中指定了 IP 地址列表OPTION_NTP_SERVER
(56)允许指定 3 个不同的子选项,即 IP 地址、多播 IP 地址或完全限定域名
根据RFC 5908其中OPTION_NTP_SERVER
指定:
此选项用作与一个 NTP 服务器或简单网络时间协议 (SNTP) 服务器相关的服务器位置信息的容器。此选项可以在 DHCPv6 消息中出现多次。NTP 客户端或 SNTP 客户端会将此选项的每个实例视为要包含在其配置中的服务器。
这意味着OPTION_NTP_SERVER
与相比,可以提供更多关于网络时间服务器的信息OPTION_SNTP_SERVERS
。那么为什么OPTION_SNTP_SERVERS
与它并存呢?
答案1
再次检查 RFC 5908 后,它指出第七节RFC 4075 已弃用 ( ),应使用OPTION_SNTP_SERVERS
RFC 5908 ( ) 代替。OPTION_NTP_SERVER
至于做出该决定的原因,提供了以下信息:
[...] 这种方法 [RFC 4075] 并不适用于所有 NTP 部署。它不是一种可扩展的机制, 引入了一些语义混淆 通过使用“SNTP”首字母缩略词。此外,仅提供 IPv6 地址来指定服务器位置不符合 NTP 要求也使用 FQDN(完全限定域名)。
总而言之,附加的子选项允许以更多不同的方式来指定 S(NTP)服务器位置,而旧的子选项OPTION_SNTP_SERVERS
导致了混淆它是否也可以用于 NTP。
弃用导致 DHCPv4 和 DHCPv6 指定 NTP 服务器的方式出现差异。虽然 DHCPv6 引入了新的基于子选项的方法,但 DHCPv4 仍然只允许指定类似于 RFC 4075 ( OPTION_SNTP_SERVERS
) 的 IP 地址列表。
答案2
欢迎加入社区。
按照RFC4330(用于 IPv4、IPv6 和 OSI 的简单网络时间协议 (SNTP) 第 4 版)第 1 页
简单网络时间协议版本 4 (SNTPv4)...是网络时间协议 (NTP) 的子集...
和
...当不需要或不需要基于 RFC 1305 的完整 NTP 实施的最终性能时可以使用。
这与 TFTP 和 FTP 的情况类似。使用更简单的协议可以简化设置、减少开销等。OPTION_SNTP_SERVERS
从 DHCPv6 中删除意味着使用 IPv6 的解决方案将需要完整的 NTP 实现。
答案3
这意味着与 OPTION_SNTP_SERVERS 相比,OPTION_NTP_SERVER 可以提供更多关于网络时间服务器的信息。那么为什么 OPTION_SNTP_SERVERS 与其并存呢?
SNTP_SERVERS 选项已首先添加。当添加新的选项时它不会停止存在 - 最多,它被标记为“已弃用”,但曾经支持它的实现很可能会继续支持它。
OPTION_NTP_SERVER 仅出现五年后,目的是扩展旧的仅 SNTP 选项并为其提供弃用说明:
- RFC 4075 弃用
“DHCPv6 的简单网络时间协议 (SNTP) 配置选项” [RFC4075] 为 IPv6 提供了一定程度的自动时间服务器配置,因为它指定了如何通过 DHCPv6 传输 SNTP [RFC4330] 服务器地址。但是,这种方法并不适用于所有 NTP 部署。它不是一种可扩展的机制,并且通过使用“SNTP”首字母缩略词引入了一些语义混淆。此外,仅提供 IPv6 地址来指定服务器位置的方法也不符合使用 FQDN(完全限定域名)的 NTP 要求。由于上述所有原因,本文档弃用了 [RFC4075]。