[ntp:questions] Outrageous delay syncing WinXP to Linux with ntp4.2.6p2

Cindy Huyser chuyser at io.com
Tue Aug 3 20:42:11 UTC 2010


I have a Windows XP box (running Win XP Pro SP 3)  that connects to a
couple of Linux machines, all of which are not connected to the
Internet. I am using one of the Linux boxes as a time server, and the
other Linux system has no trouble getting time from it via IPv4 or
IPv6. Not so, with the Windows XP system, at least with the 4.2.6
binaries (I've tried both ntp4.2.6p2 and ntp4.2.6.p1 from Dave Hart's
site). I am able to sync without issue using the 4.2.4p8 binaries
provided in the latest Meinburg installation package.

I have a fairly simple configuration file, which works without issue
with v4.2.4:

restrict default ignore
restrict 127.0.0.1

# use our local clock as a backup.
# see the "system-config-date" Advanced Options->Use Local Time Source
# for a description of this server 127.127.1.0 line
server 127.127.1.0
fudge   127.127.1.0 stratum 10

driftfile       "C:\Windows\Temp\ntp.drift"
broadcastdelay  0.008
logfile         "C:\Windows\Temp\ntp.log"

server 172.16.98.231 iburst prefer
restrict 172.16.98.231 mask 255.255.255.255 nomodify notrap noquery


With the 4.2.4 binaries, my output from ntpq -p is:

     remote           refid      st t when poll reach   delay
offset  jitter
==============================================================================
 LOCAL(0)        .LOCL.          10 l   50   64    7    0.000
0.000   0.001
 linux_time_svr   LOCAL(0)      3 u    5   64    7    0.295   -2.638
0.640

But the output using the 4.2.6 binaries is:

     remote           refid      st t when poll reach   delay
offset  jitter
==============================================================================
*LOCAL(0)        .LOCL.          10 l   56   64    1    0.000
0.000   0.000
 linux_time_svr   LOCAL(0)      3 u   45   64    1    0.578  747067.
0.146

Finally, my debug output from running ntpd -g -M -n -D 3 -c "c:
\program files\ntp\etc\ntp.conf" with 4.2.6p2 is shown below; I am
guessing the "select survivor" line is where the ntp client decides to
use the local clock.

C:\Program Files\NTP\bin>ntpd -g -M -n -D 3 -c "c:\program files\ntp
\etc\ntp.conf"
ntpd 4.2.6p2-o Jul 09 4:44:44.34 (UTC-00:00) 2010  (1)
addto_syslog: Raised to realtime priority class
addto_syslog: MM timer resolution: 1..1000000 msec, set to 1 msec
addto_syslog: Performance counter frequency 2660.030 MHz
addto_syslog: Clock interrupt period 15.625 msec
addto_syslog: Windows clock precision 15.625 msec, min. slew 6.400 ppm/
s
Wiring to processor 2 (0 means all) affinity mask 2
addto_syslog: HZ 64.000 using 43 msec timer 23.256 Hz 64 deep
addto_syslog: set_process_priority: Leave priority alone:
priority_done is <2>
addto_syslog: proto: precision = 0.300 usec
loop_config: item 1 freq 0.000000
Finished Parsing!!
create_sockets(123)
Allocation 32 memory for io_completion_port_add_socket, ptr 3be100
addto_syslog: Listen and drop on 0 v4wildcard 0.0.0.0 UDP 123
created interface #0: fd=1860, bfd=-1, name=v4wildcard, flags=0x89,
scope=0, sin
=0.0.0.0, bcast=0.0.0.0, mask=255.255.255.255, Disabled:
Allocation 32 memory for io_completion_port_add_socket, ptr 3be2c0
addto_syslog: Listen and drop on 1 v6wildcard :: UDP 123
created interface #1: fd=1848, bfd=-1, name=v6wildcard, flags=0x81,
scope=0, sin
=::, Disabled:
update_interfaces(123)
create_interface(127.0.0.1#123)
Allocation 32 memory for io_completion_port_add_socket, ptr c9b360
addto_syslog: Listen normally on 2 v4loop 1 127.0.0.1 UDP 123
restrict: op 1 addr 127.0.0.1 mask 255.255.255.255 mflags 00003000
flags 0000000
1
created interface #2: fd=1832, bfd=-1, name=v4loop 1, flags=0x1d,
scope=0, sin=1
27.0.0.1, bcast=127.255.255.255, mask=255.0.0.0, Enabled:
updating interface #2: fd=1832, bfd=-1, name=v4loop 1, flags=0x1d,
scope=0, sin=
127.0.0.1, bcast=127.255.255.255, mask=255.0.0.0, Enabled: new -
created
create_interface(172.16.99.63#123)
Allocation 32 memory for io_completion_port_add_socket, ptr c9b938
addto_syslog: Listen normally on 3 IPv4 2 172.16.99.63 UDP 123
restrict: op 1 addr 172.16.99.63 mask 255.255.255.255 mflags 00003000
flags 0000
0001
created interface #3: fd=1824, bfd=-1, name=IPv4 2, flags=0x19,
scope=0, sin=172
.16.99.63, bcast=172.16.99.255, mask=255.255.254.0, Enabled:
updating interface #3: fd=1824, bfd=-1, name=IPv4 2, flags=0x19,
scope=0, sin=17
2.16.99.63, bcast=172.16.99.255, mask=255.255.254.0, Enabled: new -
created
create_interface(fe80::5efe:ac10:633f#123)
Allocation 32 memory for io_completion_port_add_socket, ptr c9baf8
addto_syslog: Listen normally on 4 IPv6 1 fe80::5efe:ac10:633f UDP 123
restrict: op 1 addr fe80::5efe:ac10:633f mask
ffff:ffff:ffff:ffff:ffff:ffff:ffff
:ffff mflags 00003000 flags 00000001
created interface #4: fd=1816, bfd=-1, name=IPv6 1, flags=0x11,
scope=2, sin=fe8
0::5efe:ac10:633f, Enabled:
updating interface #4: fd=1816, bfd=-1, name=IPv6 1, flags=0x11,
scope=2, sin=fe
80::5efe:ac10:633f, Enabled: new - created
create_interface(fe80::20c:29ff:fe85:5610#123)
Allocation 32 memory for io_completion_port_add_socket, ptr c9c0b0
addto_syslog: Listen normally on 5 IPv6 2 fe80::20c:29ff:fe85:5610 UDP
123
restrict: op 1 addr fe80::20c:29ff:fe85:5610 mask
ffff:ffff:ffff:ffff:ffff:ffff:
ffff:ffff mflags 00003000 flags 00000001
created interface #5: fd=1808, bfd=-1, name=IPv6 2, flags=0x11,
scope=4, sin=fe8
0::20c:29ff:fe85:5610, Enabled:
updating interface #5: fd=1808, bfd=-1, name=IPv6 2, flags=0x11,
scope=4, sin=fe
80::20c:29ff:fe85:5610, Enabled: new - created
create_interface(::1#123)
Allocation 32 memory for io_completion_port_add_socket, ptr c9c270
addto_syslog: Listen normally on 6 v6loop 3 ::1 UDP 123
restrict: op 1 addr ::1 mask ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff
mflags 0000
3000 flags 00000001
created interface #6: fd=1800, bfd=-1, name=v6loop 3, flags=0x15,
scope=0, sin=:
:1, Enabled:
updating interface #6: fd=1800, bfd=-1, name=v6loop 3, flags=0x15,
scope=0, sin=
::1, Enabled: new - created
create_interface(fe80::1#123)
Allocation 32 memory for io_completion_port_add_socket, ptr c9c430
addto_syslog: Listen normally on 7 v6loop 4 fe80::1 UDP 123
restrict: op 1 addr fe80::1 mask
ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff mflags
00003000 flags 00000001
created interface #7: fd=1792, bfd=-1, name=v6loop 4, flags=0x15,
scope=1, sin=f
e80::1, Enabled:
updating interface #7: fd=1792, bfd=-1, name=v6loop 4, flags=0x15,
scope=1, sin=
fe80::1, Enabled: new - created
create_sockets: Total interfaces = 8
io_open_sockets: maxactivefd 0
auth_setkey: key 65535 type 4 len 4 3d02856b
restrict: op 1 addr 0.0.0.0 mask 0.0.0.0 mflags 00000000 flags
00000001
restrict: op 1 addr :: mask 0.0.0.0 mflags 00000000 flags 00000001
getnetnum given 127.0.0.1, got 127.0.0.1
restrict: op 1 addr 127.0.0.1 mask 255.255.255.255 mflags 00000000
flags 0000000
0
getnetnum given 172.16.98.231, got 172.16.98.231
getnetnum given 255.255.255.255, got 255.255.255.255
restrict: op 1 addr 172.16.98.231 mask 255.255.255.255 mflags 00000000
flags 000
001c0
proto_config: code 4 value 0 dvalue 0.008000
newpeer: cast flags: 0x1 for address: 127.127.1.0
newpeer: using fd 1832 and our addr 127.0.0.1
key_expire: at 0 associd 64265
peer_clear: at 0 next 1 associd 64265 refid INIT
event at 0 LOCAL(0) 8011 81 mobilize assoc 64265
newpeer: 127.0.0.1->127.127.1.0 mode 3 vers 4 poll 6 6 flags 0x9 0x1
ttl 0 key 0
0000000
newpeer: cast flags: 0x1 for address: 172.16.98.231
newpeer: using fd 1824 and our addr 172.16.99.63
key_expire: at 0 associd 64266
peer_clear: at 0 next 2 associd 64266 refid INIT
event at 0 172.16.98.231 8011 81 mobilize assoc 64266
newpeer: 172.16.99.63->172.16.98.231 mode 3 vers 4 poll 6 10 flags
0x121 0x1 ttl
 0 key 00000000
getnetnum given 127.127.1.0, got 127.127.1.0
event at 0 0.0.0.0 c016 06 restart
loop_config: item 2 freq 1000000000.000000
event at 0 0.0.0.0 c012 02 freq_set ntpd 0.000 PPM
local_clock: mu 0 state 1 poll 3 count 0
event at 0 0.0.0.0 c011 01 freq_not_set
refclock_transmit: at 1 127.127.1.0
refclock_receive: at 1 127.127.1.0
event at 1 LOCAL(0) 8024 84 reachable
refclock_sample: n 1 offset 0.000000 disp 0.010000 jitter 0.000000
clock_filter: n 1 off 0.000000 del 0.000000 dsp 7.937500 jit 0.000000
select: survivor 127.127.1.0 0.000000
select: combine offset 0.000000000 jitter 0.000000238
event at 1 LOCAL(0) 963a 8a sys_peer
poll_update: at 1 127.127.1.0 poll 6 burst 0 retry 0 head 0 early 2
next 64
clock_update: at 1 sample 1 associd 64265
local_clock: mu 1 state 4 poll 6 count 0
event at 1 0.0.0.0 c514 04 freq_mode
local_clock: offset 0.000000000 jit 0.000000238 freq 0.000 stab 0.000
poll 6
poll_update: at 1 127.127.1.0 poll 6 burst 0 retry 0 head 0 early 2
next 64
auth_agekeys: at 1 keys 1 expired 0
timer: interface update
update_interfaces(123)
write_stats: wander 0.000000 thresh 0.000000, freq 0.000000
sendpkt(1824, dst=172.16.98.231, src=172.16.99.63, ttl=0, len=48)
Allocation 32 memory for io_completion_port_sendto, ptr c9c5f0
Freeing memory for OnWriteComplete, ptr c9c5f0
Received 48 bytes fd 1824 in buffer 003B8E90 from 172.16.98.231
transmit: at 2 172.16.99.63->172.16.98.231 mode 3 len 48
poll_update: at 2 172.16.98.231 poll 6 burst 0 retry 2 head 62 early 2
next 66
receive: at 2 172.16.99.63<-172.16.98.231 flags 19 restrict 1c0
receive: at 2 172.16.99.63<-172.16.98.231 mode 4 len 48
poll_update: at 2 172.16.98.231 poll 6 burst 5 retry 0 head 62 early 2
next 2
event at 2 172.16.98.231 8024 84 reachable
clock_filter: n 1 off 0.000026 del 0.003959 dsp 7.937501 jit 0.000000
sendpkt(1824, dst=172.16.98.231, src=172.16.99.63, ttl=0, len=48)
Allocation 32 memory for io_completion_port_sendto, ptr c9c5f0
Freeing memory for OnWriteComplete, ptr c9c5f0
transmit: at 4 172.16.99.63->172.16.98.231 mode 3 len 48
Received 48 bytes fd 1824 in buffer 003B62D0 from 172.16.98.231
poll_update: at 4 172.16.98.231 poll 6 burst 4 retry 0 head 122 early
2 next 2
receive: at 4 172.16.99.63<-172.16.98.231 flags 19 restrict 1c0
restrict: interval 2 headway 8 limit 64
receive: at 4 172.16.99.63<-172.16.98.231 mode 4 len 48
clock_filter: n 2 off 0.000266 del 0.002131 dsp 3.937509 jit 0.000240
sendpkt(1824, dst=172.16.98.231, src=172.16.99.63, ttl=0, len=48)
Allocation 32 memory for io_completion_port_sendto, ptr c9c5f0
Freeing memory for OnWriteComplete, ptr c9c5f0
transmit: at 6 172.16.99.63->172.16.98.231 mode 3 len 48
Received 48 bytes fd 1824 in buffer 003B8E90 from 172.16.98.231
poll_update: at 6 172.16.98.231 poll 6 burst 3 retry 0 head 182 early
2 next 2
receive: at 6 172.16.99.63<-172.16.98.231 flags 19 restrict 1c0
restrict: interval 2 headway 12 limit 64
receive: at 6 172.16.99.63<-172.16.98.231 mode 4 len 48
clock_filter: old sample 2
sendpkt(1824, dst=172.16.98.231, src=172.16.99.63, ttl=0, len=48)
Allocation 32 memory for io_completion_port_sendto, ptr c9c5f0
Freeing memory for OnWriteComplete, ptr c9c5f0
transmit: at 8 172.16.99.63->172.16.98.231 mode 3 len 48
Received 48 bytes fd 1824 in buffer 003B62D0 from 172.16.98.231
poll_update: at 8 172.16.98.231 poll 6 burst 2 retry 0 head 242 early
2 next 2
receive: at 8 172.16.99.63<-172.16.98.231 flags 19 restrict 1c0
restrict: interval 2 headway 16 limit 64
receive: at 8 172.16.99.63<-172.16.98.231 mode 4 len 48
clock_filter: old sample 4
sendpkt(1824, dst=172.16.98.231, src=172.16.99.63, ttl=0, len=48)
Allocation 32 memory for io_completion_port_sendto, ptr c9c5f0
Freeing memory for OnWriteComplete, ptr c9c5f0
transmit: at 10 172.16.99.63->172.16.98.231 mode 3 len 48
Received 48 bytes fd 1824 in buffer 003B8E90 from 172.16.98.231
poll_update: at 10 172.16.98.231 poll 6 burst 1 retry 0 head 302 early
2 next 2
receive: at 10 172.16.99.63<-172.16.98.231 flags 19 restrict 1c0
restrict: interval 2 headway 20 limit 64
receive: at 10 172.16.99.63<-172.16.98.231 mode 4 len 48
clock_filter: old sample 6
sendpkt(1824, dst=172.16.98.231, src=172.16.99.63, ttl=0, len=48)
Allocation 32 memory for io_completion_port_sendto, ptr c9c5f0
Received 48 bytes fd 1824 in buffer 003B62D0 from 172.16.98.231
transmit: at 12 172.16.99.63->172.16.98.231 mode 3 len 48
Freeing memory for OnWriteComplete, ptr c9c5f0
poll_update: at 12 172.16.98.231 poll 6 burst 0 retry 0 head 362 early
2 next 57

receive: at 12 172.16.99.63<-172.16.98.231 flags 19 restrict 1c0
restrict: interval 2 headway 24 limit 64
receive: at 12 172.16.99.63<-172.16.98.231 mode 4 len 48
poll_update: at 12 172.16.98.231 poll 6 burst 0 retry 0 head 362 early
2 next 56

clock_filter: n 6 off 0.000446 del 0.001823 dsp 0.187546 jit 0.000330
select: survivor 127.127.1.0 0.000000
select: combine offset 0.000000000 jitter 0.000000238


Any ideas? Has anyone out there been trying a similar XP -> Linux
synchronization? I also haven't been able to get IPv6 working, but it
seems like figuring this out comes first.

Thanks very much,
Cindy Huyser




More information about the questions mailing list