rapatel@KHNPHWZHN.NJIN.NET (Rocky - Rakesh Patel) (10/30/90)
The Rutgers ntp distribution just has some changes to allow using one ntp.conf file accross many machines. No changes other changes were made. We are using it on lots of Suns ranging from Sun 3/50s to Sun 4/380s. It is also running on Celeritys and Pyramids without any problems. The version on rutgers.edu was a bit old, and has been updated to patchlevel 13 (which is currently what we are running). Maybe at some point, I'll get around to doing something about moving to xntpd. Here is a description: Adding "-DRUTGERS" to the DEFINES list in the Makefile will enable some code that will allow you to use a shared configuration file for all of your machines running ntp. We use "track" for automated distribution of software amongst a large number of machines, and having a shared configuration file makes it much easier to administer changes. Basically, you can define one or more keywords (currently hard coded to 10) that can be used to allow seperate commands for different types of systems. For example, the following lines allow you to set different values for precision, depending on the machine type: sun4 precision -7 sun3 precision -6 So on sun3s, you would invoke ntpd with one of the options being "-k sun3". This simple mechanism allows you to specify entries for many machines. To make it easier, there is also a special keyword, "client", which you can specify a net/subnet number after as follows: client 128.6.26.0 server rutgers.edu client 128.6.26.0 server porthos.rutgers.edu Essentially, what happens is that ntpd will check all the interfaces of the local machine, and if the client key is specified, all the matching entries will be parsed for the normal ntp command lines. Since most machines are going to clients in a workstation type of environment, you essentially save lots of time by not having to create special configuration files for each machine. You can just list all the networks and servers for those networks in one configuration file. What about the special machines? How about: rutgers peer umd1.umd.edu rutgers peer truechimer.cso.uiuc.edu rutgers peer porthos.rutgers.edu porthos peer wwvb.isi.edu porthos peer ncar.nsf.net porthos peer rutgers.edu And on those machines you can invoke ntpd with "-k rutgers" and "-k porthos" respectively. The code is fully backwards compatible, so even if you include "-DRUTGERS", you do not need to use the "-k" flag. If you do not use the "-k" flag, the configuration file is parsed as it would be without the rutgers modifications compiled in. If you do use the "-k" flag, then you should make sure to specify keywords for eveything that you do not want defined globally. For example, if you expect the precision to be the same across all your machines, you can specify it without a keyword and it will be properly parsed, for example: precision -6 A typical invocation of ntpd for a sun3 client would probably be: ntpd -a any -t -z -k client -k sun3 As mentioned above, you are limited to 10 keywords on the command line. There can be as many keywords as you like in the configuration file since the code only checks for matches on the keywords specified. The changes also specify /usr/local/etc/ntp.conf to be the default configuration file, instead of /etc/ntp.conf. This is because we want the file to be shared on our Sun clients. You may want to change that before compilation to the location you prefer. Again, remember to specify "-DRUTGERS" in the Makefile if you want to enable this code. Rakesh Patel.