0

I have an ESXi 5.1 server configured as a NTP server and a local Windows Server 2008 R2 PC that aren't syncing. I've read that whenever an ESXi server is run as a client, it also acts as a server, so I enabled it as an NTP client and simply added no servers to the server list, and then I enabled port 123 incoming/outgoing by adding firewall settings from the ESXi Shell.

I'm almost positive that it's not a firewall issue. I've completely disabled the firewall on my local PC. Running "w32tm /monitor /computers:-IP of server-" gives me the time of the server, and running the NTPQuery software gives me a response back on port 123 with the server's time.

I have tried:

  • Date/Time settings (right-click on notification area-->Adjust date/time-->Internet Time-->set as IP of server) -- syncing fails (An error occurred while Windows was synchronizing with -IP of server-)
  • Group Policy Editor (Computer Configuration\Administrative Templates\System\Windows Time Service, currently disabled though because I've heard this causes problems) -- syncing fails
  • Registry Editor (HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\W32Time\settings) -- syncing fails
  • Command Prompt, using:

.

w32tm /config /manualpeerlist:-IP of server- /syncfromflags:MANUAL /reliable:yes /update
net stop w32time && net start w32time
w32tm /resync /rediscover

This updates the registry correctly, but outputs "The computer did not resync because no time data was available." And whenever I use the command "w32tm /query /source" the source is always "Local CMOS clock."

Here is the output of w32tm /query /configuration

[Configuration]

EventLogFlags: 2 (Local)
AnnounceFlags: 5 (Local)
TimeJumpAuditOffset: 28800 (Local)
MinPollInterval: 10 (Local)
MaxPollInterval: 15 (Local)
MaxNegPhaseCorrection: 3600 (Local)
MaxPosPhaseCorrection: 3600 (Local)
MaxAllowedPhaseOffset: 1 (Local)

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


[TimeProviders]

NtpClient (Local)
DllName: C:\windows\system32\w32time.dll (Loca
Enabled: 1 (Local)
InputProvider: 1 (Local)
AllowNonstandardModeCombinations: 1 (Local)
ResolvePeerBackoffMinutes: 15 (Local)
ResolvePeerBackoffMaxTimes: 7 (Local)
CompatibilityFlags: 2147483648 (Local)
EventLogFlags: 1 (Local)
LargeSampleSkew: 3 (Local)
SpecialPollInterval: 900 (Local)
Type: NTP (Local)
NtpServer: -IP of server-,0x1 (Local)

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

Any ideas? Thanks in advance.

  • You may use Wireshark on PC to trace the UDP packages to and from the NTP server. In this way you will see if the answer from ESX arrives the PC. – user3767013 Oct 21 '14 at 15:02
  • @user3767013 I ran Microsoft Network Monitor on the PC and ran w32tm /resync /rediscover. Here's the output (105 is PC, 200 is server): i.imgur.com/qH9QKXI.png – user2630480 Oct 21 '14 at 21:20
  • Looks like the request is being sent out and a response is sent back, but the reference timestamp is NULL, so maybe that's the problem. – user2630480 Oct 21 '14 at 21:28
  • Also, my ntp.conf file on the server only has a few lines. Do I need to modify this to make my server act as an NTP server? – user2630480 Oct 21 '14 at 22:09
  • Comparing to traces from my own server, I see two differences: (1) my Computer (Windows 7) uses NTP v1 while yours uses SNTP v3. (2) your server replied with reference time stamp NULL. – user3767013 Oct 22 '14 at 8:31
1

I found the answer. I had to set my upstream server as my own clock with IP address 127.127.1.0 to make my server's clock synchronized.

The reply from the ESXi server shows that the leap indicator is 3 and the server stratum is 0. This means that the ESXi NTP server is running unsynchronized and is unable to provide a valid reference time to clients. According to RFC 4330, Simple NTP (SNTP) clients should not use the time in an NTP reply packet if the returned stratum is 0 (and the leap indicator is 3).

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

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