We've been dealing with clock inaccuracy in the office for a few months now as a result of our DC's internal clock drifting, and I finally have a few spare cycles to try to take care of the problem.
We're running a Server 2008 R2 domain controller (this is a physical box, not a virtual server) and it seems that no matter what I do I cannot get it to sync to an external NTP server.
For instance, I've tried this command to configure it to sync to a couple of external NTP servers:
w32tm /config /manualpeerlist:"0.north-america.pool.ntp.org 1.north-america.pool.ntp.org" /syncfromflags:manual /reliable:yes /update
But it just won't take. Here's what I get when I query the peers:
C:\Windows\system32>w32tm /query /peers
#Peers: 1
Peer:
State: Pending
Time Remaining: 820.7812500s
Mode: 0 (reserved)
Stratum: 0 (unspecified)
PeerPoll Interval: 0 (unspecified)
HostPoll Interval: 0 (unspecified)
As you can see, the peers that I specified are not listed and the one "peer" (which seems to have no information) is listed as "pending".
Here's the status:
C:\Windows\system32>w32tm /query /status
Leap Indicator: 0(no warning)
Stratum: 1 (primary reference - syncd by radio clock)
Precision: -6 (15.625ms per tick)
Root Delay: 0.0000000s
Root Dispersion: 10.0000000s
ReferenceId: 0x4C4F434C (source name: "LOCL")
Last Successful Sync Time: 7/20/2012 11:24:24 AM
Source: Local CMOS Clock
Poll Interval: 6 (64s)
I'm pulling my hair out here; what am I missing? I've tried stopping and starting the service, and I've tried registering and unregistering, but so far no luck.
As is usually the case, posting a question usually results in my finding the answer elsewhere in somewhat short order.
The issue was that our default domain policy was being applied to the DC, and that policy configures the machine to point to time.windows.com. While I would have assumed that would work, evidently it did not. Changing all of the Windows Time Service entries to "Not Configured" and running
gpupdate
on the DC allowed me to set the peers correctly.