#!/bin/sh
###############################################################################
LOCATE_PING=`which ping`
LOCATE_PPP=`which ppp`
LOCATE_KILLALL=`which killall`
LOCATE_SLEEP=`which sleep`
LOCATE_IFCONFIG=`which ifconfig`
PING_FLAGS="-c5"
PPP_FLAGS="-quiet -ddial ERTELECOM"
KILLALL_FLAGS="-9"
SLEEP_FLAGS_1="3"
SLEEP_FLAGS_2="10"
IFCONFIG_FLAGS="destroy"
HOST="ya.ru"
MSG_TRUE="[`date`] __Access to the Internet is successful ;)"
MSG_FALSE="[`date`] __Access to the Internet is failed ;("
MSG_WARNING="[`date`] __Connection restarting!!!"
#
PPPOE_LOG="/var/log/test_pppoe_coonect"
###############################################################################
### PING
$LOCATE_PING $PING_FLAGS $HOST > /dev/null 2>&1
if [ $? -eq 0 ]
then
echo $MSG_TRUE >> $PPPOE_LOG
else
echo $MSG_FALSE >> $PPPOE_LOG
echo $MSG_WARNING >> $PPPOE_LOG
### KILL DAEMONS
$LOCATE_KILLALL $KILLALL_FLAGS ppp > /dev/null 2>&1
$LOCATE_SLEEP $SLEEP_FLAGS_1 > /dev/null 2>&1
### DESTROY tunX
for i in 0 1 2 3 4 5 6 7 8 9
do
$LOCATE_IFCONFIG tun$i $IFCONFIG_FLAGS > /dev/null 2>&1
done
### RECONNECT
$LOCATE_SLEEP $SLEEP_FLAGS > /dev/null 2>&1
$LOCATE_PPP $PPP_FLAGS > /dev/null 2>&1
### PING
$LOCATE_SLEEP $SLEEP_FLAGS_2 > /dev/null 2>&1
$LOCATE_PING $PING_FLAGS $HOST > /dev/null 2>&1
if [ $? -eq 0 ]
then
echo $MSG_TRUE >> $PPPOE_LOG
else
echo $MSG_FALSE >> $PPPOE_LOG
fi
fi