[ntp:questions] Local clock question with dialup connection

David Woolley david at djwhome.demon.co.uk
Thu Apr 19 21:38:08 UTC 2007


In article <200704191816.22365.cave.dnb at tiscali.fr>,
cave.dnb at tiscali.fr (Nigel Henry) wrote:

> failing to be found, and ntpd is not trying them again.  I presume a server 
> pool has many available servers, so if I have a server pool in /etc/ntp.conf, 
> does ntpd just keep on trying to get a response in this case, like it tries 
> the pool, doesn't get a response, tries again, no response, tries again, and 

ntpd has no special code for handling server pools, nor does the operating
system.  When ntpd starts, it spawns a name resolver process.  This looks
up all the servers given by name in the configuration file and sends 
commands back to the main process to set the addresses of the servers.

For each name it asks DNS.  As you have broken connectivity, the DNS name
resolver times out without returning any members of the pool.  This is
repeated in turn for each name until they all fail or the network
comes up.  The requests will be done sequentially because one of the main
reasons for using a separate process is that the standard resolver library
is blocking.

The nameserver is responsible for returning a random selection from the pool
on each request, but it never receives any requests.

If a member taken from the pool does not respond to NTP requests, a 
replacement will not be taken from the pool.  Instead, ntpd will just keep
requesting the same server.

To avoid this part of the problem, you should, from time to time, 
manually look up the addresses of the pool servers and put those into 
ntpd.conf, rather than use their names.

Regarding startup scripts, as I already said, the ntpd Linux binaries can
be used in many different distribution, and not all of them use the tactic
that Red Hat use for finding, sequencing and running theirs.  It would be
rude of the installer to dump an inappropriate file into /etc.




More information about the questions mailing list