1#!/bin/sh
2
3# From: Marc Brett <Marc.Brett@westgeo.com>
4
5# Here's a quick hack which can give you the stratum, delay, offset
6# for any number of ntp servers.
7
8NTPDATE=/usr/local/bin/ntpdate
9NSLOOKUP=/usr/sbin/nslookup
10EGREP=/bin/egrep
11AWK=/bin/awk
12RM=/bin/rm
13FILE=/tmp/ntp.$$
14
15USAGE="Usage: $0 hostname [hostname ...]"
16
17if [ $# -le 0 ]
18then
19	echo $USAGE 2>&1
20	exit 1
21fi
22
23trap '$RM -f $FILE; exit' 1 2 3 4 13 15
24
25for HOST in $*
26do
27    HOSTNAME=`$NSLOOKUP $HOST | $EGREP "Name:" | $AWK '{print $2}'`
28    if [ -n "$HOSTNAME" ]
29    then
30	$NTPDATE -d $HOST 2>/dev/null | $EGREP '^stratum|^delay|^offset|^originate' > $FILE
31	STRATUM=`$EGREP '^stratum' $FILE | $AWK '{print $2}'`
32	OFFSET=`$EGREP '^offset' $FILE | $AWK '{print $2}'`
33	DELAY=`$EGREP '^delay' $FILE | $AWK '{print $2}'`
34	TIMESTAMP=`$EGREP '^originate' $FILE | $AWK '{print $4 " " $5 " " $6 " " $7 " " $8}'`
35	if [ "$STRATUM" -ne 0 ]
36	then
37		echo "$HOSTNAME: stratum:$STRATUM delay:$DELAY offset:$OFFSET  $TIMESTAMP"
38	else
39		echo $HOSTNAME: Not running NTP
40	fi
41    fi
42
43done
44
45$RM -f $FILE
46