何时应使用 NTPd 广播/广播客户端而不是客户端/服务器或对等模式?

何时应使用 NTPd 广播/广播客户端而不是客户端/服务器或对等模式?

网络时间协议 (NTP)deamon 通常以最简单的模式使用,即客户端/服务器:您在您的客户端中指定一个或多个server指令将使用这些服务器。ntp.conf

除此之外,当您运行自己的 NTP 服务器时,将peer它们放在一起是一种很好的做法,因此如果其中一个服务器与其上游服务器失去连接,它将从其对等服务器获取时间。

但是 NTPd 也可以使用广播和/或多播分发时间数据,文档陈述:

广播和多播模式适用于涉及一个或几个服务器以及可能非常大的客户端群体的配置

文档还说别处

将主机配置为广播客户端和广播服务器是可行的,而且通常很有用。以这种方式配置并共享公共广播地址的多个主机将根据层和同步距离自动组织成最佳配置。

我可以看到一个明显的管理优势:您不必在客户端中手动指定和更新 NTP 服务器列表ntp.conf,因此对我来说,即使对于少量客户端(例如 5 个以上客户端和 3~4 个服务器),使用广播模式也很诱人。我预计使用广播而不是客户端/服务器关联时网络流量会更高一些,但考虑到通常的千兆以太网 LAN,除非您在同一个广播域中拥有非常多的主机,否则影响应该可以忽略不计。

归根结底,什么时候应该使用或避免使用广播模式?是否存在我尚未发现的利弊?

答案1

不,大多数操作系统都不支持广播客户端模式。广播和多播模式本质上比普通的服务器/客户端模式更不准确、更不安全(即使经过身份验证),而且它们不像以前那么有用了。

如果你坚持这一点,你可以继续努力……

Linux 操作系统支持广播/多播/多播,但是由于将较旧的以太网网卡及其接口置于混杂模式(通过读取所有数据包,包括发往其他主机的数据包),所以会产生 CPU 开销。

苹果电脑(现在苹果系统) 可以支持多播 NTP,但是没有提供此功能。您可以使用以下命令启用它:

sudo route -nv add -net 228.0.0.4 -interface en0

微软Windows时间服务不支持 Windows 2000 Server、Windows Server 2016、Windows Server 2012 R2、Windows Server 2012 上的多播/广播,更不用说任何 Windows 桌面版本了。它曾经支持多播 NTP(K9 来自www.mingham-smith.com/k9.htm为 Windows 3.1、95、98、ME、NT、2000、XP、2003、Windows Mobile 2003 提供多播 NTP)。

答案2

在我看来,应该始终避免使用广播/广播客户端。

我自己研究过这个选项,并没有找到任何合适的方法来配置客户端,只接受来自“官方”服务器的广播。

下一点是:此广播与运行 Windows/MacOS 的计算机的兼容性如何?

相关内容