Windows 客户端与域控制器的时间同步无法正常工作

Windows 客户端与域控制器的时间同步无法正常工作

我可以确认我的域控制器(主域控制器和备份域控制器)与时间服务器正确同步。上次我检查时,它们之间的误差在 +0.0002 秒左右。

我可以w32tm /monitor通过服务器或任何客户端来确认这一点

PS M:\> w32tm /monitor
vdc0.domain *** PDC ***[192.168.10.212:123]:
    ICMP: 1ms delay
    NTP: +0.0000000s offset from vdc0.domain
        RefID: vFile0.domain[192.168.10.214]
        Stratum: 12
vFile0.domain[192.168.10.214:123]:
    ICMP: 0ms delay
    NTP: -0.0016548s offset from vdc0.domain
        RefID: 'VMTP' [0x50544D56]
        Stratum: 1

我按以下顺序使用了以下命令,让我的客户端尝试同步到我的域控制器:

w32tm /config /manualpeerlist:"vdc0.domain,vfile0.domain" /syncfromflags:manual /reliable:yes /update
net stop W32Time
w32tm /unregister
w32tm /register
net start W32Time
w32tm /resync /force

我可以确认客户端正在查看并正在搜索域控制器w32tm /query /status

Leap Indicator: 0(no warning)
Stratum: 13 (secondary reference - syncd by (S)NTP)
Precision: -23 (119.209ns per tick)
Root Delay: 0.0000000s
Root Dispersion: 10.0000000s
ReferenceId: 0xC0A80AD4 (source IP:  192.168.10.212)
Last Successful Sync Time: 1/21/2021 12:58:59 PM
Source: vdc0.domain, vfile0.domain
Poll Interval: 10 (1024s)

当我尝试查看时间服务器的偏移量和延迟时,w32tm /stripchart /computer:vdc0我得到了一些混合结果。似乎 Windows 每次都会添加一些时间,每次添加十分之几秒,看看它在哪里,然后哎呀,得减一点,哎呀,太远了,再加一点。这是一个很好的例子:

14:04:30, d:+00.0038921s o:+30.7786947s  [                           |                          @]
14:04:37, d:+00.0056698s o:+25.7768253s  [                           |                          @]
14:04:44, d:+00.0034796s o:+20.7756529s  [                           |                          @]
14:04:51, d:+00.0076417s o:+15.7719032s  [                           |                          @]
14:04:58, d:+00.0035039s o:+10.7713422s  [                           |                          @]
14:05:05, d:+00.0089287s o:+05.7685848s  [                           |               *           ]
14:05:12, d:+00.0035771s o:+00.7299773s  [                           | *                         ]
14:05:19, d:+00.0033301s o:-04.2704371s  [               *           |                           ]
14:05:26, d:+00.0097744s o:-09.2731762s  [ *                         |                           ]
14:05:33, d:+00.0044543s o:-14.2518533s  [@                          |                           ]
14:05:40, d:+00.0028743s o:-19.2300777s  [@                          |                           ]
14:05:47, d:+00.0155809s o:-24.2134555s  [@                          |                           ]
14:05:54, d:+00.0026456s o:-29.1929530s  [@                          |                           ]
14:06:01, d:+00.0037886s o:-34.1688432s  [@                          |                           ]
14:06:08, d:+00.0036843s o:-39.1453284s  [@                          |                           ]

该客户端在 13:55:18 从 vdc0(PDC)获得 +214.893,然后在同步时超出域控制器的时间。它一直下降到 -520.414 秒,直到一段时间后终于找到它,并在 -00.05 秒和 +0.05 秒之间摇摆不定。它随机地开始倒计时到大约 +1.056 秒,然后在没有任何用户干预的情况下(我所拥有的只是在远程 PowerShell 会话中运行的命令,PC 处于空闲状态)它又开始向下调整,一直到 -10.2394 秒时它开始向上调整。看起来它已经达到 -02.268 秒,现在正在向下调整,在我输入这段文字时为 -04.112 秒。

我的所有客户端似乎都存在此问题,我不确定这是否是服务器或客户端的问题。我在服务器或客户端的事件查看器中没有看到任何指向 Windows 时间服务发生问题的内容。

即使我停止 Windows 时间服务,它仍会继续尝试同步,在 +0 标记之后不断增加或减少时间。

有什么想法吗?我可以给它任何命令来立即同步时间吗?我可能遗漏了什么吗?我正在远程工作,因此无法物理访问我的某些客户端。有些正在使用,有些没有,所以我可以在需要时重新启动它们(但我已经尝试了十几次,没有变化)。

答案1

看看这些文章,看看它们是否能指引你寻找的方向:

https://docs.microsoft.com/en-us/windows-server/networking/windows-time-service/support-boundary

https://docs.microsoft.com/en-us/windows-server/networking/windows-time-service/configuring-systems-for-high-accuracy

虽然您所做的操作在功能上看似相同,但事实是,您将加入域的客户端锁定为仅与这两个 DC 同步,而不是与身份验证 DC(域层次结构)同步,这是预期的设计。

如果加入域的客户端位于具有 DC 的远程站点中,该怎么办?您是否希望它们到达另一个站点的 DC 来同步时间?或者您是否会将这些客户端配置为与其本地 DC 同步?如果添加更多站点和更多 DC,会发生什么情况?这种做法有多可持续?

如果您需要更换其中一个或两个 DC,该怎么办?您是否要重新配置所有加入域的客户端?同样,这样做是否可持续?

你可能会说:“我们永远不会发展到足以让这个问题成为问题。”但是如果你真的发展到这个程度会怎样?

我的方法是,除非有特殊原因,或者他们的指导和最佳实践建议被证明是错误的,或者它们在我的特殊情况下不起作用,否则我不会偏离微软的指导和最佳实践建议……也就是说,我很少偏离他们的指导和最佳实践建议。他们构建了这些东西。他们最了解如何部署和配置它。我并不比微软聪明。

相关内容