寻找适用于Windows的NTP服务器软件

我正在寻找一个Windows Server 2003/2008的免费NTP服务器。 我们已经尝试了内置的Windows时间服务器,但是我们的testing显示它不是很准确,我们看到时间差异高达500ms。 我们可以允许的最大时间差是〜100ms。

现在我们已经使用Windows的Meinberg NTPd了。 除了我们有一个大问题,它工作的很好:如果客户端和服务器之间有networking连接问题,ntp服务器处于恐慌状态,直到我们重新启动ntp服务才会给客户端一个新的时间。 这是一个很大的问题,给我们造成了一些麻烦。 几个月前它工作正常,直到有一个我们没有注意到的networking问题,我们只在一个星期后才注意到,时间差已经是30秒了。 在客户端。

所以请build议一些替代NTP服务器的Windows。 我做了谷歌,但我得到了很多无关的search结果。

编辑:到目前为止ntpd窗口版本是非常准确的,我想坚持下去。 唯一的问题是networking断开后的“恐慌状态”。 也许有些人知道这是什么原因以及如何解决这个问题。 另外,我忘记提到我们有一个像这样的服务器/客户端设置:

Server1-> Server2-> Server3-> Client1-> Client2-> Client3

所以Server2从Server1获取时间,Server3从Server2获取时间,客户端从Server3获取时间。 此外,有客户直接连接到Server2。 所有服务器和客户端具有完全相同的时间(在〜100ms内)

现在,Server3及其客户端出现networking问题。 服务器运行Windows的ntpd端口,作为NTP服务器和客户端。 客户端将Dimension4作为NTP客户端。 在networking问题之后,D4中的错误信息是这样的(出于我的头顶,没有确切的错误信息):

服务器响应:服务器处于恐慌状态(无法同步时钟)

我通过ntpd文档阅读,唯一提到的“恐慌”是时间差是10000秒,这将导致退出ntpd服务器,但事实并非如此。 还有一个“-g”命令行开关来禁用应急出口,但是它已经被默认设置了。

任何想法可能导致恐慌状态,下一步如何摆脱它?

我使用NetTime ,多年来,作为客户端和服务器。

该软件主要是一个NTP客户端,但是它也可以作为局域网内的NTP服务器(选项:允许其他计算机同步到这台计算机)。

我们看到远远超过W32time的500毫秒,更像是Windows系统计时器的分辨率16毫秒。 这是通过在同一个千兆位局域网上的真正的Linux stratum-2 NTPd服务器测量的。 谷歌“Windows时间服务工具和设置”,并阅读“更新无效”设置,可以通过组策略修改或直接在registry中修改。 现在无法检查,但我记得我们已经设置为100所有我们的服务器,这是默认的域控制器,但不是其他Windows域成员。

更新:实际上,我们的所有服务器的值都设置为100。 UpdateInterval设置的详细信息:

UpdateInterval

registrypath :HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ W32Time \ Config

版本 :Windows XP,Windows Vista,Windows 7,Windows Server 2003,Windows Server 2003 R2,Windows Server 2008和Windows Server 2008 R2。

此条目指定了相位校正调整之间的时钟滴答数。 域控制器的默认值是100.域成员的默认值是30,000。 独立客户端和服务器的默认值是360,000。

正如你所看到的,默认情况下,W32time只对非域控制器每隔30,000个时钟周期“转向”一次,或者如果它们不是域的成员,则会变得更糟。 窗口上的时钟通常是1/64秒,这取决于硬件,这意味着时钟只在默认configuration中每8分钟调整一次。 这对大多数应用程序来说都很好,但对于时序敏感的应用程序来说并不理想

更多信息可以在这里find: http : //technet.microsoft.com/en-us/library/cc773263(v=ws.10).aspx#w2k3tr_times_tools_uhlp

NIST列出的所有时间软件的参考列表在这里 。 我以前用过的是钟表服务器。 我也build议你改变你的同步拓扑。 server1应该是networking上所有时间的源代码(服务器2和3作为备份)。 如果没有可用的服务器,客户端应该只能进行同步同步。