我注意到一些嵌入式设备(例如OpenWRT(在 Busybox 上运行)使用 rdate 来设置系统时间,而不是 NTP。Rdate 是一种较旧的时间协议,我在美国找不到任何可用的 rdate 服务器。
rdate 是否可以与 NTP 时间服务器同步时间?
答案1
您可以使用 inetd 或 xinetd 从 Unix (Linux) 提供 rdate 源。服务器内置于这两个服务器中。
尽可能使用上述 ntp。您的 ISP 的 DNS 服务器可能提供 NTP 服务。这些服务器在网络上的距离可能比任何其他服务器都近。如上所述,您应该考虑在网络上设置 NTP 服务器。
OpenWRT 有一个 ntp 包,可以用作您的 NTP 服务器。
答案2
大多数这些公共服务器仍然接受 TIME 请求,即 rdate 使用的协议。
答案3
您拥有的 rdate 是一个只能使用 rdate 的 busybox 小程序,所以不可能。
您的另一个选择是安装 ntp 客户端或 sntp(简单 ntp)客户端,或者将 busybox 升级到具有 ntpd 小程序的版本。我不知道您有哪些可用的软件包,但我在 debian 上看到的选项是ntp
和msntp
(两个守护进程)以及ntpdate
、bsd rdate
(两个都是一次性的,后者确实支持 sntp)。
答案4
您是否考虑过设置自己的服务器?只需在可公开访问的盒子上设置 NTP,将其指向几个好的ntp 服务器. 在您的服务器上设置标准时间服务。在 Linux 机器上,如果您没有 inetd,则需要安装它,然后在 /etc/inetd.conf 中取消注释时间服务。在 Windows 机器上,您需要添加“简单 TCP/IP 服务”功能。
请记住,rdate 并不是真正优秀的时间服务。如果您需要可靠的时间,安装 sntp/ntp 客户端可能是更好的选择。