In my network, I have a reliable NTP server which all PCs are synchronized to. Due to the various problems the Windows Time service is known for (at least in Windows 7 and lower versions), I have disabled it on the Windows machines and instead have installed Meinberg's port of NTPD for Windows.
This has reliably worked for many years on all PCs I ever tested, but today I have got a problem with one of my Windows machines (Windows 7 Pro x64, all updates applied at the time of this writing).
Please note that
C:\Program Files (x86)\NTP\etc\ntp.conf on that machine is literally the same as on all other Windows PCs on that network, except for the last line (see below).
ntpd.conf (on the problematic machine, some comments removed):
restrict default noquery nopeer nomodify notrap restrict -6 default noquery nopeer nomodify notrap # allow status queries and everything else from localhost restrict 127.0.0.1 restrict -6 ::1 # if you need to allow access from a remote host, you can add lines like this: # restrict <IP OF REMOTE HOST> # Use drift file driftfile "C:\Program Files (x86)\NTP\etc\ntp.drift" # Use specific NTP servers server timeserver.in.my.local.network iburst minpoll 6 maxpoll 7 # End of generated ntp.conf --- Please edit this to suite your needs interface ignore wildcard interface ignore ipv6 interface listen 127.0.0.1 interface listen 192.168.20.100
Of course, the last line is is different on different PCs. And yes, I indeed do not want
ntpd to listen on each interface / IP address, but just on the "main" IP address and on
As a first quick test I do on every PC after installation, I opened
administrator on the PC in question and ran
C:\Program Files (x86)\NTP>ntpq -p
This resulted in the following error message:
ntpq: read: No such file or directory
I was first believing what it said and analyzed its behavior with
ProcessMonitor, but to no avail. I couldn't find any hint that it could not open a file. I scratched my head for a while and then tried
C:\Program Files (x86)\NTP>ntpq -p 192.168.20.100
This time, I got
192.168.20.100: timed out, nothing received ***Request timed out
So, obviously, in accordance with my conclusions from
ProcessMonitor, there is no problem with reading a file, but perhaps with opening the network device.
C:\Program Files (x86)\NTP>ntpq -p 127.0.0.1
yielded the expected result:
remote refid st t when poll reach delay offset jitter ============================================================================== *192.168.20.10 ( 126.96.36.199 2 u 8 128 377 0.977 0.194 0.977
This made me scratch my head again. For testing, I turned off the Windows firewall on that PC (and there is no other firewall installed there), but
ntpq -p and
ntpq -p 192.168.20.100 still were throwing the same error messages as before.
As a last test, I ran
C:\Program Files (x86)\NTP>netstat -abno
Active Connections ... UDP 127.0.0.1:123 *:* 5076 [ntpd.exe] ... UDP 192.168.20.100:123 *:* 5076 [ntpd.exe] ...
ntpd listens on the IP addresses from the configuration file as expected.
Of course, restarting the service and even rebooting that PC did not help.
Now I am running out of ideas. What could be the cause that
ntpq can talk to one of the IP addresses
ntpd listens on, but not to the other one, even when the firewall is turned off completely?