1

I have a problem manifesting in our network that the main DC PDC Emulator is not able to have a proper time. It is off around 80 seconds pretty much all of the time and I am at a loss on how to fix that.

The machine is right now virtual (though I can make it a small physical box). w32 time configuration is:

PS c:\> w32tm /query /configuration
[Configuration]

EventLogFlags: 2 (Policy)
AnnounceFlags: 10 (Policy)
TimeJumpAuditOffset: 28800 (Local)
MinPollInterval: 6 (Policy)
MaxPollInterval: 10 (Policy)
MaxNegPhaseCorrection: 172800 (Policy)
MaxPosPhaseCorrection: 172800 (Policy)
MaxAllowedPhaseOffset: 300 (Policy)

FrequencyCorrectRate: 4 (Policy)
PollAdjustFactor: 5 (Policy)
LargePhaseOffset: 50000000 (Policy)
SpikeWatchPeriod: 900 (Policy)
LocalClockDispersion: 10 (Policy)
HoldPeriod: 5 (Policy)
PhaseCorrectRate: 1 (Policy)
UpdateInterval: 100 (Policy)


[TimeProviders]

NtpClient (Local)
DllName: C:\Windows\system32\w32time.dll (Local)
Enabled: 1 (Local)
InputProvider: 1 (Local)
AllowNonstandardModeCombinations: 1 (Local)
ResolvePeerBackoffMinutes: 15 (Policy)
ResolvePeerBackoffMaxTimes: 7 (Policy)
CompatibilityFlags: 2147483648 (Local)
EventLogFlags: 0 (Policy)
LargeSampleSkew: 3 (Local)
SpecialPollInterval: 3600 (Policy)
Type: NTP (Policy)
NtpServer: 0.pool.ntp.org 1.pool.ntp.org 2.pool.ntp.org 3.pool.ntp.org (Policy)

NtpServer (Local)
DllName: C:\Windows\system32\w32time.dll (Local)
Enabled: 1 (Local)
InputProvider: 0 (Local)
AllowNonstandardModeCombinations: 1 (Local)

VMICTimeProvider (Local)
DllName: C:\Windows\System32\vmictimeprovider.dll (Local)
Enabled: 0 (Local)
InputProvider: 1 (Local)

The status is ok:

PS C:\> w32tm /query /status
Leap Indicator: 0(no warning)
Stratum: 3 (secondary reference - syncd by (S)NTP)
Precision: -6 (15.625ms per tick)
Root Delay: 0.0324097s
Root Dispersion: 7.8030176s
ReferenceId: 0xD5C7E11E (source IP:  213.199.225.30)
Last Successful Sync Time: 2/18/2016 3:35:04 PM
Source: 3.pool.ntp.org
Poll Interval: 6 (64s)

The problem is - it never is in sync:

PS C:\> w32tm /stripchart /computer:0.pool.ntp.org
Tracking 0.pool.ntp.org [213.199.225.30:123].
The current time is 2/18/2016 3:35:47 PM.
15:35:47 d:+00.0311088s o:-82.0529984s  [@                          |                           ]
15:35:49 d:+00.0154871s o:-82.0677911s  [@                          |                           ]
15:35:51 d:+00.0623276s o:-82.0255517s  [@                          |                           ]
15:35:53 d:+00.0622825s o:-82.0269740s  [@                          |                           ]
15:35:56 d:+00.0157822s o:-82.0521575s  [@                          |                           ]
15:35:58 d:+00.0934684s o:-82.0032442s  [@                          |                           ]
15:36:00 d:+00.0155794s o:-82.0391704s  [@                          |                           ]
15:36:02 d:+00.0623131s o:-82.0049890s  [@                          |                           ]
15:36:04 d:+00.0417698s o:-82.0176236s  [@                          |                           ]
15:36:06 d:+00.0328697s o:-82.0160905s  [@                          |                           ]
15:36:08 d:+00.0623356s o:-82.0340346s  [@                          |                           ]
15:36:10 d:+00.0467246s o:-82.0011794s  [@                          |                           ]
15:36:12 d:+00.0210196s o:-81.9949078s  [@                          |                           ]
15:36:14 d:+00.0311386s o:-82.0052247s  [@                          |                           ]
15:36:16 d:+00.0336086s o:-81.9847832s  [@                          |                           ]
15:36:18 d:+00.0466688s o:-81.9732556s  [@                          |                           ]
15:36:20 d:+00.0522205s o:-81.9706647s  [@                          |                           ]
15:36:22 d:+00.0623951s o:-81.9470197s  [@                          |                           ]
15:36:25 d:+00.0311279s o:-81.9684429s  [@                          |                           ]
15:36:27 d:+00.0522267s o:-81.9522678s  [@                          |                           ]
15:36:29 d:+00.0155412s o:-81.9621962s  [@                          |                           ]
15:36:31 d:+00.0522921s o:-81.9384797s  [@                          |                           ]
15:36:33 d:+00.0559207s o:-81.9362417s  [@                          |                           ]
15:36:35 d:+00.0311349s o:-81.9470118s  [@                          |                           ]
15:36:37 d:+00.0155557s o:-81.9451556s  [@                          |                           ]

That shows a consistent 81-82 second delay. And a sync does not change this.

Anyone an idea why this is?

Upon request, here a more detailed status:

PS C:\> w32tm /query /status /verbose
Leap Indicator: 0(no warning)
Stratum: 3 (secondary reference - syncd by (S)NTP)
Precision: -6 (15.625ms per tick)
Root Delay: 0.0381470s
Root Dispersion: 7.7932527s
ReferenceId: 0x2EFAAC02 (source IP:  46.250.172.2)
Last Successful Sync Time: 2/18/2016 4:33:39 PM
Source: 0.pool.ntp.org
Poll Interval: 6 (64s)

Phase Offset: 0.0000050s
ClockRate: 0.0155860s
State Machine: 1 (Hold)
Time Source Flags: 0 (None)
Server Role: 64 (Time Service)
Last Sync Error: 0 (The command completed successfully.)
Time since Last Good Sync Time: 29.5655870s

And some more output someone asked for:

PS C:\> w32tm /monitor
dc-o-2 [[fe80::480c:c93e:660a:429f%12]:123]:
    ICMP: 0ms delay
    NTP: -82.7908243s offset from dc-o-1.operations.local
        RefID: ntp.wide-net.pl [195.46.37.22]
        Stratum: 3
dc-o-ckg-1 [172.26.0.1:123]:
    ICMP: 174ms delay
    NTP: -82.7945201s offset from dc-o-1.operations.local
        RefID: sunsite.icm.edu.pl [193.219.28.2]
        Stratum: 3
dc-o-1  *** PDC ***[10.42.0.1:123]:
    ICMP: 0ms delay
    NTP: +0.0000000s offset from dc-o-1.operations.local
        RefID: news-archive.icm.edu.pl [193.219.28.147]
        Stratum: 3

Those are the 3 machines currently in the network. Note that the one with ckg in the name IS around 170ms away through a VPN - the difference from central europe to chicago.

TomTom
  • 51,649
  • 7
  • 54
  • 136
  • What virtualization software are you using? Is time synchronization enabled between the host and the guest? What happens if you run `w32tm /resync /rediscover`? – learley Feb 18 '16 at 14:51
  • Hper-V on 2012 R2. TIme service is active but disabled as time source (config at the end, VMICTimeProvider has enabled at 0). So, it is asked upon start (to set the initial clock value), but then ignored for updates. resync/rediscover works, but nothing changes. The 81 second delay stays constant. – TomTom Feb 18 '16 at 14:55
  • Has the DC VM been restarted since this configuration was put in place? I have done the same steps before but for some reason it gets stuck on the host time source until I reboot it. – learley Feb 18 '16 at 14:58
  • Multiple times (restart). – TomTom Feb 18 '16 at 15:02
  • I compared your configuration to a PDCe that I manage and it looks almost identical except for the EventLogFlags setting which shouldn't matter for this issue. The only other thing I can see is that a lot of your settings are set by Policy. You may try excluding the DC from your GPO that is configuring time settings and try setting things manually. Maybe something in the GPO is interfering. Also, can you edit your OP with the output of `w32tm /monitor`, please? – learley Feb 18 '16 at 15:22
  • The root dispersion seems high. Try enabling w32time debug logging to see if that surfaces anything. http://blogs.msdn.com/b/w32time/archive/2008/02/28/configuring-the-time-service-enabling-the-debug-log.aspx. Also, what does `w32tm /query /status /verbose` show? – Greg Askew Feb 18 '16 at 15:24
  • @learley That policy applies only to dc and is meant to make them all independent NTP synchronized sources. I have dc all over the world, so "one authority" is not THAT good... on top I plan to have app DC work independent in case the PDC emulator is not available. – TomTom Feb 18 '16 at 15:32
  • @GregAskew Added the output at the end of my question ;) – TomTom Feb 18 '16 at 15:34
  • @learley added the output you requested. – TomTom Feb 18 '16 at 18:04

1 Answers1

2

Disable the Time Synchronization Integration Service completely, and by that I mean uncheck the box so that it isn't offered to the Hyper-V clients. I know this is a big bone of contention with a lot of people and even Microsoft doesn't seem to have a consensus on it, but I had a support case with MS several years ago about this issue and that's what they recommended and I haven't had issues since.

Upon booting up, your VM's get their time from the hypervisor (because the VM's have no Real Time Clock) and from thereafter they should only sync with the domain hierarchy. In the case of the PDCe it should only sync with it's configured external time source.

enter image description here

joeqwerty
  • 109,901
  • 6
  • 81
  • 172