NTPD: drifts away from system clock

Posted on

Problem :

Using RHEL 5.x on a workstation.

I set the clock using ntpdate 0.us.pool.ntp.org and then start NTPD using service ntpd start. (this also happens at boot). Watching this over the next 20-30 minutes it appears to run at about 1/2 speed. After 20 minutes the clock is ~10 minutes behind.

Calling ntpq -p (after 20 minutes) shows three servers (coming from pool) all of which still have .INIT. in the refid column.

Looking at the system log shows an uneventful startup for NTPD. No errors to speak of.

Calling hwclock shows the correct current time.

Contents of /etc/ntp.conf:

restrict 127.0.0.1

server 0.us.pool.ntp.org
server 1.us.pool.ntp.org
server 2.us.pool.ntp.org

driftfile /var/lib/ntp/drift
statsdir /var/lib/ntp

Looking at nmap -p123 -sU -P0 servername I see 123/udp open|filtered ntp.

Not sure where else to look to diagnose this. Suggestions?

EDIT: iburst didn’t seem to have any effect.

I tried running NTPD using -ddd to see what’s going on. It starts out getting packets pretty steadily and then slows to a crawl. After 5 minutes my clock is 3 minutes behind. It was set initially using ntpdate.

Solution :

It seems like your ntp does not recieve packets from the pool. Try running sudo tcpdump -n -i <ifname> port 123 after you have restarted ntpd. You should see packets going both ways, if not, then you have a firewall problem (which can not keep track/state of UDP-connections).

Leave a Reply

Your email address will not be published. Required fields are marked *