156746Sroberto#!/bin/sh
256746Sroberto
356746Sroberto# From: Marc Brett <Marc.Brett@westgeo.com>
456746Sroberto
556746Sroberto# Here's a quick hack which can give you the stratum, delay, offset
656746Sroberto# for any number of ntp servers.
756746Sroberto
856746SrobertoNTPDATE=/usr/local/bin/ntpdate
956746SrobertoNSLOOKUP=/usr/sbin/nslookup
1056746SrobertoEGREP=/bin/egrep
1156746SrobertoAWK=/bin/awk
1256746SrobertoRM=/bin/rm
1356746SrobertoFILE=/tmp/ntp.$$
1456746Sroberto
1556746SrobertoUSAGE="Usage: $0 hostname [hostname ...]"
1656746Sroberto
1756746Srobertoif [ $# -le 0 ]
1856746Srobertothen
1956746Sroberto	echo $USAGE 2>&1
2056746Sroberto	exit 1
2156746Srobertofi
2256746Sroberto
2356746Srobertotrap '$RM -f $FILE; exit' 1 2 3 4 13 15
2456746Sroberto
2556746Srobertofor HOST in $*
2656746Srobertodo
2756746Sroberto    HOSTNAME=`$NSLOOKUP $HOST | $EGREP "Name:" | $AWK '{print $2}'`
2856746Sroberto    if [ -n "$HOSTNAME" ]
2956746Sroberto    then
3056746Sroberto	$NTPDATE -d $HOST 2>/dev/null | $EGREP '^stratum|^delay|^offset|^originate' > $FILE
3156746Sroberto	STRATUM=`$EGREP '^stratum' $FILE | $AWK '{print $2}'`
3256746Sroberto	OFFSET=`$EGREP '^offset' $FILE | $AWK '{print $2}'`
3356746Sroberto	DELAY=`$EGREP '^delay' $FILE | $AWK '{print $2}'`
3456746Sroberto	TIMESTAMP=`$EGREP '^originate' $FILE | $AWK '{print $4 " " $5 " " $6 " " $7 " " $8}'`
3556746Sroberto	if [ "$STRATUM" -ne 0 ]
3656746Sroberto	then
3756746Sroberto		echo "$HOSTNAME: stratum:$STRATUM delay:$DELAY offset:$OFFSET  $TIMESTAMP"
3856746Sroberto	else
3956746Sroberto		echo $HOSTNAME: Not running NTP
4056746Sroberto	fi
4156746Sroberto    fi
4256746Sroberto
4356746Srobertodone
4456746Sroberto
4556746Sroberto$RM -f $FILE
46