42

Why does Windows Server (2008, in this case, but I've seen the same problem in 2003) seem to have problem synchronizing time? I've seen this error in my System log across a variety of servers:

The time service has not synchronized the system time for 86400 seconds because none of the time service providers provided a usable time stamp. The time service will not update the local system time until it is able to synchronize with a time source. If the local system is configured to act as a time server for clients, it will stop advertising as a time source to clients. The time service will continue to retry and sync time with its time sources. Check system event log for other W32time events for more details. Run 'w32tm /resync' to force an instant time synchronization.

Under Control Panel, Date and Time, The Internet Time Settings are set to synchronize with time-nw.nist.gov ; the last successful sync was 2 days ago, indicating there's some kind of problem. But if I click the "update now" button on that dialog, indeed, it updates with the time!

So why can't windows server reliably time sync via NTP in the background without me manually intervening? What am I doing wrong?

5
  • You're not alone Jeff
    – jkp
    Apr 30, 2009 at 18:17
  • 1
    Looks like this might not be an option for domain controllers.
    – user640
    Apr 30, 2009 at 19:07
  • 1
    Welcome to Windows SNTP hell. DLL Hell is just around the corner and there is a tram on the half hour. The deli is better here though. Apr 30, 2009 at 19:44
  • 2
    Have you tried a different NTP server? us.pool.ntp.org
    – stukelly
    Apr 30, 2009 at 20:17
  • Thank you for posting this. If anyone in Windows land is listening, please make basic network config like this easier for us! There are certain things our servers will always need, like an accurate time relative to the timezone. There might be non-trivial considerations that I'm not aware of but this is a recurrent issue, and also breaks WSUS if left unchecked.
    – user1804
    May 5, 2009 at 0:42

4 Answers 4

20

Jeff, I found this article. Might be of some help to you. You might have already read this but I thought it was worth a shot.

HKLM\SYSTEM\CurrentControlSet\Services\W32Time\Config\AnnounceFlags

This registry entry controls whether the local computer is marked as a reliable time server (which is only possible if the previous registry entry is set to NTP as described above). Change this REG_DWORD value from 10 to 5 here.

UPDATE As per Jeff, best source of reference is http://support.microsoft.com/kb/816042

2
  • weird, so you mark it as "not reliable", lol. OK, I made this change, let's see if it helps. Apr 30, 2009 at 18:58
  • 4
    KB 816042: "... and uses the built-in complementary metal oxide semiconductor (CMOS) clock" - don't you just love technical editors? May 7, 2009 at 12:19
14

Windows Time Agent is a free control panel applet for configuring the NTP server/synchronization ability of Windows. It acts as a front-end to the registry settings and lets you configure multiple NTP servers and see what sort of results you are getting from them in real-time.

Not many people know about this particularly handy (and free) piece of software, but it's a must-install on servers I maintain.

1
  • Thanks a lot mate. Windows Time Agent is a gem. It just became a must-have install on all the servers I manage as well.
    – paracycle
    Jan 19, 2010 at 15:32
8

When synchronized time is important, I use NTPD for windows

http://www.meinberg.de/english/sw/ntp.htm

I install it, point it at north-america.pool.ntp.org and forget it

6

The way that Microsoft suggests to sync time is visualized below.

M$ Time!

So why can't Windows reliably sync NTP? It has to do with how time is set up in a domain environment. From this Technet artice:

If the computer is a member server or workstation within a domain, by default, it follows the AD DS hierarchy and synchronizes its time with a domain controller in its local domain that is currently running the Windows Time service.

You are going "against the grain" here by trying to set up member servers to pull NTP time.

The "Right" (Ie. the Microsoft way) to do it would be to set time up as displayed in the picture above, having the PDC Emulator sync to a reliable external time service such as pool.ntp.org, having the domain controllers sync to the PDC emulator, and then having the member servers and PCs automatically sync from a domain controller.

I have detailed the process of fixing the time to operate this way in this answer.

3
  • yeah, we didn't want or need a domain controller, just a bunch of peer servers. Dec 12, 2012 at 22:33
  • Oh, I assumed you were a part of a domain. I think you should be able to set all of the servers up using the coammnds linked to poll from pool.ntp.org. Maybe time.windows is not a great time source. I would again try with NTP pool as it has around 3000 global servers and about 900 in North America! Dec 12, 2012 at 23:39
  • We were never able to get it to work reliably. I think you are right: reliable time sync in Windows Server is impossible without a domain controller. Which is totally lame. Dec 13, 2012 at 0:38

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .