Guide to installing 'ntpd' date/time services on a SGI Indy under IRIX 6.5*

bann01.gif (2203 bytes)

This page was written by Christopher Spry. It was prepared after I had installed 'ntp' version '4.0.99k' on my Indy running IRIX 6.5.9. 

Index:

Requirements
IRIX 6.5 or later, the 'cc' compiler and a permanent internet connection so that time servers could be accessed at intervals to update the time on the Indy.

Getting the ntp distribution
I downloaded from the University of Delaware, the 'ntp' 'tar.gz' distribution file, version '4.0.99k'. (Version 4.1.0 is the current 'production' version, February 2002).

I uncompressed the distribution file and put it in directory /tmp/ntpd. I untarred it there and it created a range of directories and files. I logged the new directory and made the configuration files, then compiled and installed them as follows:

Configuration and compilation
As superuser, I ran ‘./configure’.  This took several minutes to run.
I then ran 'make' to compile the programs. This took several minutes to run. There were 'warnings', that I ignored.
I then ran 'make install' which provided the following output:

Making install in scripts
Making install in include
Making install in ElectricFence
Making install in librsaref
cd .. \
&& CONFIG_FILES=librsaref/Makefile CONFIG_HEADERS= /bin/sh ./config.status
creating librsaref/Makefile
executing commands of default-1
executing commands of default-2
executing commands of default
Making install in libntp
Making install in libparse
Making install in ntpd
/bin/sh ../mkinstalldirs /usr/local/bin
/usr/freeware/bin/install -c ntpd /usr/local/bin/ntpd
Making install in ntpdate
/bin/sh ../mkinstalldirs /usr/local/bin
/usr/freeware/bin/install -c ntpdate /usr/local/bin/ntpdate
/usr/freeware/bin/install -c ntptimeset /usr/local/bin/ntptimeset
Making install in ntpdc
/bin/sh ../mkinstalldirs /usr/local/bin
/usr/freeware/bin/install -c ntpdc /usr/local/bin/ntpdc
Making install in ntpq
/bin/sh ../mkinstalldirs /usr/local/bin
/usr/freeware/bin/install -c ntpq /usr/local/bin/ntpq
Making install in ntptrace
/bin/sh ../mkinstalldirs /usr/local/bin
/usr/freeware/bin/install -c ntptrace /usr/local/bin/ntptrace
Making install in parseutil
Making install in adjtimed
/bin/sh ../mkinstalldirs /usr/local/bin
Making install in clockstuff
Making install in kernel
Making install in sys
Making install in util
/bin/sh ../mkinstalldirs /usr/local/bin
/usr/freeware/bin/install -c tickadj /usr/local/bin/tickadj
cd . \
&& CONFIG_FILES= CONFIG_HEADERS=config.h \
/bin/sh ./config.status
creating config.h
config.h is unchanged
executing commands of default-1
executing commands of default-2
executing commands of default

-------

I noted that the following files were made in /usr/local/bin: ntpd*, ntpdate*, ntptimeset*, ntpdc*, ntpq*, ntptrace*, and tickadj*.

Configuration files

(1) /etc/ntp.conf:

The main function of the configuration file is to 'point' your ntp client at one or more time 'stratum-2, 3 or 4' servers, which take their time from time servers with lower stratum status. The ntp demon then coordinates the time of your computer with the time server(s) that you chose. Within the UK academic network, large JANET sites have ntp servers that take their time from JANET stratum-2 ntp servers called 'ntp0.ja.net', 'ntp1.ja.net', 'ntp2.ja.net' and 'ntp3.ja.net'. Users then take their time from the ntp server on their own site. Ask your network administrator if you may use the ntp server on the local network and point your configuration file to the local ntp server. If your computer is on a local network, network administrators often block ntp packets from crossing the local  firewall, so you may have no choice about whether to use an internal or external time server.

I created a file called '/etc/ntp.conf' with the following content, which pointed the ntpd service to three time servers. Note that, if you are inside a firewall that prevents ntp packets from crossing it, you should should point 'ntp.conf' to a local time server:

# NTP configuration file (ntp.conf)
# This file sets ntp to use three external time server
server ntp.cis.strath.ac.uk
server ntp2a.mcc.ac.uk
server ntp2b.mcc.ac.uk
# This names the file to use for 'drift'
driftfile /etc/ntp.drift        # path for drift file

ntp.cis.strath.ac.uk (130.159.196.123, 130.159.196.125) 
Location: Dept. Computer Science, Strathclyde University, Glasgow, Scotland. 
Geographic Coordinates: 04:14W, 55:52N 
Synchronization: NTP V3 secondary Sun/Unix 
Service Area: UK/Europe/any 
Access Policy: open access 
Contact: Ian Gordon (ntp@cs.strath.ac.uk) 

ntp2a.mcc.ac.uk (130.88.202.49) 
Location: University of Manchester, Manchester, England 
Synchronization: NTP secondary (S2), Sun/SunOS 
Service Area: UK 
Access Policy: Open Access 
Contact(s): timelords@mcc.ac.uk

ntp2b.mcc.ac.uk (130.88.200.98) 
Location: University of Manchester, Manchester, England 
Synchronization: NTP secondary (S2), PC/FreeBSD 
Service Area: UK 
Access Policy: Open Access 
Contact(s): timelords@mcc.ac.uk

(2) /etc/ntp.keys

This file was empty. It is only used when you need to use SRA encryption to validate the ntp servers.

(3) /etc/ntp.drift

I did not have to create a file called '/etc/ntp.drift' as this was made once the ntpd service was started. Then it contained a line similar to:

10.259 0

(4) /etc/init.d/network.local

I added the following line under the start section, to start the ntpd demon automatically, when the system was restarted:

/usr/local/bin/ntpd

(5) /etc/services

Check that you have a line in /etc/services that specifies the ntp service using port 123:

ntp 123/udp # Network Time Protocol

Starting the daemon

I typed:

/usr/local/bin/ntpd

And the demon started. Check this with the command 'ps -el | grep ntp'. 

Synchronizing the time on other computers running IRIX

I recommend that you use 'timed' and 'timeslave' to synchronize the time on other computers in your network to the computer on which you have just installed 'ntpd'. Both have 'man' pages to help you set them up.

HTML support files and debugging

No man pages appeared to have been installed, when I installed the programs. For this reason  I copied the files in and under the 'html' directory in '/tmp/ntpd/ntp-4.0.99k' to a new directory '/usr/local/ntpd' on the Indy. I was able to access them through '/usr/local/ntpd/index.htm'. There is a useful one called '/usr/local/ntpd/debug.htm' which runs through the steps to ensure that the ntp daemon and the connections are working properly. If everything seems fine but timeserver connections are 'rejected', check whether udp packets to port 123 are being blocked by a firewall in your network.

ntp on non-Unix systems

Users of Microsoft 'Windows' can manually synchronize their computers to a locally networked time server, using the command 'net time \\computer /set /y'. The command can also be run in a batch file. Windows 2000 is also provided with a time service, which enables SNTP.

I use YATS32 v 8.1 Build 9 on my Windows computers, to provide an accurate time from local and remote networked time servers.

'Simple NTP' client software (10.4-MB, 21 January 1997) is available from the primary University of Delaware distribution and a UK mirror at Sunsite, for computers running Microsoft's 'Windows' operating systems. It has to be compiled. A FAQ is available with users' experience of on time-synchronization software for Macintosh, DOS, Novell and VMS environments. 

If you have any corrections or additions to make to this little guide, please mail them to me, Christopher Spry at cspry@cspry.co.uk.

bann01.gif (2203 bytes)

Return to the 'home page'

Return to the `Computing index page'

Return to the 'Indy administration index'

© Christopher Spry mailto:cspry@cspry.co.uk.  This page was last updated on 01 December 2003 12:33:56.