On Sunday 22 April 2007 22:48, Kam Leo wrote: > On 4/22/07, Nigel Henry <cave.dnb@xxxxxxxxxx> wrote: > > On Sunday 22 April 2007 22:14, Kam Leo wrote: > > > On 4/22/07, Nigel Henry <cave.dnb@xxxxxxxxxx> wrote: > > > > On Sunday 22 April 2007 19:16, Steve Siegfried wrote: > > > > > Nigel Henry wrote: > > > > > > On Sunday 22 April 2007 18:19, Scott Berry wrote: > > > > > > > Nigel, what would you want to ping? I think you could put a > > > > > > > line in that script to do that. > > > > > > > > > > > > > > Scott > > > > > > > > > > > > Pinging a server on the Internet isn't really the problem, as > > > > > > long as nobody get's T'd off on getting a ping on a daily basis. > > > > > > All I want is a script that will continually send a ping to <some > > > > > > server>, then when the Internet connection is up, and it gets a > > > > > > positive response from the server, will then run > > > > > > /usr/local/bin/ntp-restart, and terminate the ping. This will > > > > > > then restart the ntp daemon, and all of the servers listed in > > > > > > /etc/ntp.conf will be polled. > > > > > > > > > > > > At the moment when the ntp daemon is started at bootup on FC2, I > > > > > > get varying results. Post bootup I connect to the Internet, and > > > > > > sometimes just one of the six timeservers is listed when running > > > > > > ntpq> pe, and sometimes 4 of the timeservers are listed, but > > > > > > never the 6. If I do an /etc/init.d/ntpd stop, followed by an > > > > > > /etc/init.d start, then run ntpq, I see all 6 Internet > > > > > > timeservers listed. > > > > > > > > > > > > There is a problem with the ntp daemon, at least on FC2, when no > > > > > > Internet connection is available at bootup. > > > > > > > > > > > > Nigel. > > > > > > > > > > You can probably do this without pinging. > > > > > > > > > > Assuming you talk to the outside internet via eth0, then "ifconfig > > > > > eth0" won't tell you what your ip-address is until eth0 is all the > > > > > way up. > > > > > > > > > > Thus, the following script will either: > > > > > - print your ip-address and return 0 (success), > > > > > or > > > > > - print "eth0 not active." and return 1 (failure). > > > > > > > > > > > #!/bin/ksh > > > > > > DEVICE=${1:-eth0} > > > > > > if [ `/sbin/ifconfig | grep ^$DEVICE | wc -l` = 0 ] > > > > > > then echo "$DEVICE not active." > > > > > > exit 1 > > > > > > else mungeline=`/sbin/ifconfig $DEVICE | grep "inet addr" | > > > > > > tr -s ":" " " | cut -d' ' -f4` echo $mungeline > > > > > > exit 0 > > > > > > fi > > > > > > > > > > Hope this helps, > > > > > > > > > > -S > > > > > > > > This is my setup. I have 2 machines on a LAN. These access the > > > > Internet through a Smoothwall firewall, which is installed on an old > > > > machine. The Smoothwall accesses the Internet through a serial modem. > > > > To connect to Internet I have to have one of the machines on the LAN > > > > booted up, so as access the web interface to the Smoothwall. > > > > > > > > So this is the way it goes. The Smoothwall is left running > > > > continually, but I shut down the dialup connection, and the 2 > > > > machines on the LAN last thing at night, unless I'm doing updates. > > > > > > > > Next day. Smoothwall is still running, but no connection to the > > > > Internet. Next I boot the machine on the LAN that has the Internet > > > > timeservers listed in /etc/ntp.conf. The machine boots up (this is > > > > FC2) , but because no Internet connection is available the ntpd times > > > > out, goes out to lunch, gives up trying to contact the timeservers, > > > > whatever. Post boot up, and running ntpq> pe, sometimes there is 1 of > > > > the 6 timeservers showing, and sometimes 4 of the 6. > > > > > > > > If I now stop and start ntpd all 6 of the timeservers are listed when > > > > running ntpq> pe. > > > > > > > > So, and this is a problem with ntpd on FC2. On FC6 ncpd seems to > > > > handle an ititial "no Internet connection available" ok, and when I > > > > make the connection to the Internet all the timeservers are listed on > > > > ntpq> pe. Back to the FC2 problem. > > > > > > > > Smoothwall is running, but dialup connection is down. Boot up the > > > > machine on the LAN that has the Internet timeservers in > > > > /etc/ntp.conf. Ntpd is started on bootup, but can't find the > > > > timeservers, as there is no Internet connection, so ntpd decides to > > > > go out to lunch. > > > > > > > > The sort of script that I'm looking for is one that will be either > > > > run from /etc/rc.d/rc.local, but without delaying, hanging, stalling > > > > the bootup sequence, or being run post bootup as root. A cron job > > > > won't do this, as it runs at a specific time. This script needs to be > > > > run either during, or post bootup. > > > > > > > > So this is the script I need. Either started with > > > > /etc/init.d/rc.local. or post boot up > > > > > > > > Ping an Internet address every minute. When a response is received > > > > showing an active Internet connection, then run > > > > /usr/local/bin/ntp-restart. > > > > > > > > Perhaps I'm asking too much. > > > > > > > > Nigel. > > > > > > Why the obsession with ntp? The on board clock should be able maintain > > > accurate time for at least a day or two. > > > > I'm trying to solve a problem here, not trying to start a rant on whether > > to use ntp or not. > > > > This machine has problems with the time, so I'm trying to resolve it. > > That's not much to ask, is it? > > Not trying to start a flame war. Just curious why you don't ping your > ISP. Wouldn't that do serve the same purpose that you are trying to > achieve? I'm not bothered who I ping, as long as they dont't take offence at being pinged. The whole objective is to get a response to a ping, that will verify that the Internet connection is up. A positive response to the ping should then trigger the running of /usr/local/bin/ntp-restart, which should result in all 6 timeservers listed when running ntpq> pe. > > > Nigel.