2

I noticed our PDCe is running 1:20min late and, of course, also the rest of devices in the network. I'm trying to sync with an external time source but it's not going well.

It's a virtual Windows Server 2008 R2 over XenServer 6.0.0. The host is using ptbtime1.ptb.de and ptbtime2.ptb.de as NTP servers and the time is correct. The PDCe (in theory) has the same NTP servers but the time is around 80 seconds late. And I said 'in theory' because HKLM\SYSTEM\CurrentControlSet\services\W32Time\Parameters\NtpServer has value ptbtime1.ptb.de ptbtime2.ptb.de (I also tried ptbtime1.ptb.de,0x1 ptbtime2.ptb.de,0x1 without results), but when I tried in PowerShell

PS C:\>w32tm /query /peers
Number peers: 1

Peer:
Status: Pending
Time Remaining: 94.6710000s
Mode: 0 (Reserved)
Stratum: 0 (not specified)
Peer polling interval: 0 (not specified)
Host polling interval: 0 (not specified)

and

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

EventLogFlags: 2 (Directive)
AnnounceFlags: 10 (directive)
TimeJump Audit Offset: 28800 (Local)
MinPollInterval: 6 (Directive)
MaxPollInterval: 10 (directive)
MaxNegPhaseCorrection: 172800 (directive)
MaxPosPhaseCorrection: 172800 (directive)
MaxAllowedPhaseOffset: 300 (directive)

FrequencyCorrectRate: 4 (Policy)
PollAdjustFactor: 5 (directive)
LargePhaseOffset: 50000000 (directive)
SpikeWatchPeriod: 900 (directive)
Local Clock dispersion: 10 (directive)
Hold Period: 5 (directive)
PhaseCorrectRate: 1 (directive)
UpdateInterval: 100 (directive)


[Time Provider]

NtpClient (Local)
DllName: C: \ Windows \ system32 \ w32time.dll (Local)
Enabled: 1 (Local)
Input providers: 1 (Local)
CrossSiteSyncFlags: 2 (Directive)
AllowNonstandardModeCombinations: 1 (Local)
ResolvePeerBackoffMinutes: 15 (directive)
ResolvePeerBackoffMaxTimes: 7 (Directive)
CompatibilityFlags: 2147483648 (Local)
EventLogFlags: 0 (directive)
LargeSampleSkew: 3 (Local)
SpecialPollInterval: 3600 (directive)
Type: NT5DS (directive)

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

VMICTimeProvider (Local)
DllName: C: \ Windows \ System32 \ vmictimeprovider.dll (Local)
Enabled: 1 (Local)
Input providers: 1 (Local)

I also tried set HKLM\SYSTEM\CurrentControlSet\services\W32Time\Config\AnnounceFlags from A to 5 and set again the NTP servers by cmdlets:

PS C:\> w32tm.exe /config /manualpeerlist:"ptbtime1.ptb.de ptbtime2.ptb.de" /syncfromflags:manual /reliable:YES /update
PS C:\> w32tm /config /update
PS C:\> w32tm /resync
PS C:\> Restart-Service w32time

I don't understand why the server won't sync with the external NTP server. I don't know if XenServer plays some role in the problem. In any case the time in the guest is not the same time from the host.

UPDATE 23.9

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

EventLogFlags: 2 (Directive)
AnnounceFlags: 10 (directive)
TimeJump Audit Offset: 28800 (Local)
MinPollInterval: 6 (Directive)
MaxPollInterval: 10 (directive)
MaxNegPhaseCorrection: 172800 (directive)
MaxPosPhaseCorrection: 172800 (directive)
MaxAllowedPhaseOffset: 300 (directive)

FrequencyCorrectRate: 4 (Policy)
PollAdjustFactor: 5 (directive)
LargePhaseOffset: 50000000 (directive)
SpikeWatchPeriod: 900 (directive)
Local Clock dispersion: 10 (directive)
Hold Period: 5 (directive)
PhaseCorrectRate: 1 (directive)
UpdateInterval: 100 (directive)


[Time Provider]

NtpClient (Local)
DllName: C: \ Windows \ system32 \ w32time.dll (Local)
Enabled: 1 (Local)
Input providers: 1 (Local)
CrossSiteSyncFlags: 2 (Directive)
AllowNonstandardModeCombinations: 1 (Local)
ResolvePeerBackoffMinutes: 15 (directive)
ResolvePeerBackoffMaxTimes: 7 (Directive)
CompatibilityFlags: 2147483648 (Local)
EventLogFlags: 0 (directive)
LargeSampleSkew: 3 (Local)
SpecialPollInterval: 3600 (directive)
Type: NT5DS (directive)

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

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

Type: NT5DS (directive) - Tells me that the PDCe is syncing with the domain hierarchy and not with your external time source.

You should make sure that your domain joined machines (all of them, including the domain controllers) are not synching time with the XenServer host. If there is a time sync integration service/tool enabled on the guest that synchs time with the host then you should disable it. The PDCe should sync only with an external time source and all of the other domain clients should sync with the domain hierarchy.

Try the following commands on the PDCe:

W32tm /unregister
Net stop w32time
W32tm /register
Net start w32time
w32tm.exe /config /manualpeerlist: "ptbtime1.ptb.de ptbtime2.ptb.de" /syncfromflags:manual /reliable:YES /update
Net stop w32time
Net start w32time
| improve this answer | |
  • I'm trying your suggestions but I get ' Access is denied (0x80070005)' (run as admin) – HEDMON Sep 21 '16 at 13:11
  • Are you running the commands from an elevated command prompt? If not, you'll need to. – joeqwerty Sep 21 '16 at 14:23
  • yes, I was running it as admin, finally I did a 'logout/login' and now I can run the cmds. But w32tm /query /peers yet won't show the external NTPs – HEDMON Sep 21 '16 at 15:04
  • What does w32tm /query /configuration show? – joeqwerty Sep 21 '16 at 16:03
  • sorry for the delay. Due the output is very long I added as an update to the question. I don't see any difference between 'before' / 'after'... any clue? – HEDMON Sep 23 '16 at 5:30

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.