Question

i have managed to cross compile ntpd 4.2.6p5 for my arm box. I have a custom toolchain provided by the manufacturer.

Box is running busybox + some variant of debian linux.

So I have no installation of ntp and did a manual copy, created a conf file for the ntpd and tried to run it.

ntpd always returns this when in debug mode: ~/ntp # ./ntpd -c ntp.conf -d

    ntpd 4.2.6p5@1.2349 Mon Apr  7 19:58:25 UTC 2014 (1)
    9 Apr 07:39:44 ntpd[3592]: signal_no_reset: signal 13 had flags 4000000
    9 Apr 07:39:44 ntpd[3592]: proto: precision = 91.000 usec event at 0 0.0.0.0 c01d 0d   
    kern kernel time sync enabled
    Finished Parsing!!
    9 Apr 07:39:44 ntpd[3592]: ntp_io: estimated max descriptors: 1024, initial socket          
    boundary: 16
    9 Apr 07:39:44 ntpd[3592]: Listen and drop on 0 v4wildcard 0.0.0.0 UDP 123
    9 Apr 07:39:44 ntpd[3592]: unable to bind to wildcard address :: - another process   
    may be   running - EXITING

before that I had to add into /etc/services also

    ntp             123/udp

my ntp.conf looks like:

 ~/ntp # cat ntp.conf
 server 193.2.4.6
 server 193.2.4.2
 driftfile ntp.drift

So I have checked netstat and nothing is running on port 123, no ntpdate etc...

~/ntp # netstat -rn
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
0.0.0.0         192.168.3.1     0.0.0.0         UG        0 0          0 eth0
192.168.3.0     0.0.0.0         255.255.255.0   U         0 0          0 eth0

~ # netstat -a | grep 123
~ #

Therefore it must be something with the config, or this arm box does not have something configured...

Oh and running manually ntpdate works:

~/ntp # ./ntpdate 193.2.4.6
 9 Apr 07:49:16 ntpdate[3614]: step time server 193.2.4.6 offset -0.755704 sec
~/ntp #

So yes i could use ntpdate in cron, but this is not my intent!

Any idea?

Thank you and best regards!

Was it helpful?

Solution

The following error indicates that ntp had trouble binding to the ipv6 wildcard:

9 Apr 07:39:44 ntpd[3592]: unable to bind to wildcard address :: - another process   
may be   running - EXITING

I think your problem is ipv6 but it is hard to tell because your diagnosticinformation was not very good. Your netstat -a |grep 123 command is useless because netstat would substitute ntp for port 123. Try it again with:

netstat -a -n | grep 123

Along those lines netstat -rn only works with ipv4, try it again with -6:

netstat -r -n -6

Your test ntpdate used an ipv4 host. Does your server support ipv6? What happens when you run:

$ sntp -d -6 time.nist.gov

I used sntp because I do not know if ntpdate has a -6option and sntp does.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top