Am I correct that the NET TIME command should return the time from the PDC for the domain? If so, the issue we are contending with is that NET TIME command returns \randomfileserver. How do I reset time server for domain to be the PDC?
3 Answers
NET TIME is deprecated and shouldn't be used. w32tm is your go-to tool for most NTP functionality in 2003, XP and above.
Prior to 2003 and XP, Windows only had a partial implementation of NTP, NTPD. The NET TIME stuff mostly still related back to the NTPD functionality. The downside of w32tm is that it isn't really 100% complete in itself (as a command-line tool), and that documentation on the cmd-line tool gets confused with the service, which is also named w32tm. making it even worse is that the service hosts both NTP client and NTP server functionality under the same hood. There's some reg keys under HKLM\SYSTEM\CurrentControlSet\Services\W32Time\Parameters that'll help you identify a particular computer's configuration with more certainty.
In an Active Directory domain structure, the PDC is automatically the authoritative time server for your domain. Other DCs pick up their time from the PDC, then cascade out to member servers and computers that are using them as their logon server (from the cmd prompt, do echo %logonserver%. The quickest ways to re-route this are either:
- Move the PDC emulator role to another DC, which will become the new authoritative time source. Time will still cascade down to the DCs then out to members, but the root time source within the domain will have changed.
- Manually point the PDC to another server in the domain, and point that server in turn to your chosen time device (a gps clock, CCDA device or internet time server). Your PDC is still the authority as far as your clients are concerned, but in reality you have another server sitting one level above. That chosen server can have its time source manually configured via the registry.
If you scrape around a bit on the MS articles, you'll find some conflicting information about how time is structured in an AD domain. From memory there are some articles that state every machine should talk directly to the DC for time, and others that state clients will get time from their local DC, which talks up the hierarchy to the PDC. Also, the mention above about NET TIME being deprecated is similarly inconsistent where documented.
Some useful links:
- http://technet.microsoft.com/en-us/library/cc773263%28WS.10%29.aspx
- Domain Controller time is 7 minutes fast
- http://blogs.msdn.com/b/w32time/
- http://technet.microsoft.com/en-us/library/cc773013%28WS.10%29.aspx#w2k3tr_times_how_ekoc
- http://www.satsignal.eu/ntp/NTPandMRTG.html
- http://support.microsoft.com/kb/816042
- http://queue.acm.org/detail.cfm?id=1773943
- 9,903
- 22
- 32
I had a problem a bit like this. There is a command line tool that does this but I can't find it's name. This article may be of help though
- 14,132
- 22
- 86
- 142
-
the tool you are thinking of is w32tm – Zypher Dec 17 '09 at 20:26
-
A nice command line utility is w32tm. – jscott Dec 17 '09 at 20:28
-
Thats it! w32tm – hookenz Dec 20 '09 at 22:07
If your clients are all assigned by DHCP you can set the time server to use with option 042.
You may need Matt's link as well to verify that you have an authoritative time server set-up correctly
- 2,670
- 1
- 23
- 32
-
1I don't know about recent versions but at least up to XP that setting is ignored. – John Gardeniers Dec 18 '09 at 12:42