时间不传播到 Windows 域上的机器

Ric*_*ier 3 windows active-directory ntp time time-synchronization

我们有一个包含两个域的 Active Directory 林:根目录下的 ourcompany.com 和用于生产服务器的 prod.ourcompany.com。时间通过根域正确传播,但子域中的服务器无法通过 NTP 同步。所以这些服务器上的时间开始漂移,因为它们只依赖于硬件时钟。

当我在其中一台生产服务器上键入“net time”时,出现以下错误:

Could not locate a time-server.
More help is available by typing NET HELPMSG 3912.
Run Code Online (Sandbox Code Playgroud)

当我输入“w32tm /resync”时,我得到以下信息:

Sending resync command to local computer
The computer did not resync because no time data was available.
Run Code Online (Sandbox Code Playgroud)

“w32tm /query /source”显示以下内容:

Free-running System Clock
Run Code Online (Sandbox Code Playgroud)

我们在 prod.ourcompany.com 子域中有三个域控制器(过大,但迁移的结果 - 我们还没有摆脱旧的一个。)更复杂的是,域控制器都是虚拟化的,运行在两个不同的物理主机上。但是域控制器本身的时间是准确的 - 不是 DC 的服务器有问题。

其中两个 DC 正在运行 Server 2003,包括 PDC 模拟器。第三个 DC 运行 Server 2008。(如果有帮助,我可以将 PDC 模拟器角色移至 2008 机器。)非 DC 服务器都运行 Server 2008。

所有其他 Active Directory 功能在生产域中都可以正常工作 - 我们只看到 NTP 出现问题。

我可以通过执行以下操作将每台机器手动同步到时间源(PDC 模拟器):

net time \\dc1.prod.ourcompany.com /set /y
Run Code Online (Sandbox Code Playgroud)

但这只是一次性的,它不会导致自动时间同步开始工作。我想我可以创建一个定期运行上述命令的计划任务,但我希望有更好的方法。

有没有人知道为什么这不起作用,以及我们可以做些什么来解决它?

谢谢你的帮助,
理查德

Ste*_*son 5

在托管正确时间的 PDC 上试试这个

NET TIME /SETSNTP:time.windows.com 
NET STOP W32TIME
NET START W32TIME
W32TM /config /reliable:YES
W32TM /resync /rediscover
Run Code Online (Sandbox Code Playgroud)

然后在每个“客户端”NTP机器上

W32TM /resync /rediscover
Run Code Online (Sandbox Code Playgroud)


Bre*_*son 5

您的前两个步骤是确保没有任何事情耽误您的时间。

  1. 在给您带来麻烦的 DC 上使用 w32tm /query /configuration,如果任何输出显示“policy”而不是“local”,则表示存在干扰它们的组策略。无论如何,我会仔细检查组策略。删除它们并运行“Gpupdate /force”,然后验证它们是否设置为本地。
  2. 如果您使用的是 Hyper-V,您需要检查虚拟化域控制器上是否未启用“时间同步”集成服务。

一旦您验证了这两件事,请按照以下步骤将 PDC 同步到 NTP 池;比 windows NTP 服务器更可靠的来源。

W32tm /config /syncfromflags:manual /manualpeerlist:"us.pool.ntp.org"
W32tm /config /reliable:yes
W32tm /config /update
Net stop w32time && Net start w32time (Alternatively, reboot if you can)
W32tm /resync /rediscover
Run Code Online (Sandbox Code Playgroud)

如果它仍然没有在 PDC 上同步,您可能需要注销并重新注册 w32tm 服务。

w32tm /unregister
Reboot
w32tm /register
Reboot
Run commands listed above again if it’s a PDC. 
Run Code Online (Sandbox Code Playgroud)

如果客户端或成员 DC 不同步,首先尝试执行“gpupdate /force”以更新组策略。

如果这仍然不起作用:

Run w32tm /resync” from an elevated command prompt 
Run Code Online (Sandbox Code Playgroud)

或在旧系统上:

net time /set  (Say “Y” when prompted)
Run Code Online (Sandbox Code Playgroud)

如果 STILL 不起作用,请运行:

w32tm /config /syncfromflags:domhier /update  
Run Code Online (Sandbox Code Playgroud)

如上所示,重新启动计算机强制重新同步。