#!/bin/bash
send_o=0
recv_o=0
send_n=0
recv_n=0
while test 1
do
ifconfig dsl0 > .dsl0_ifconfig.txt
if [ $? -eq 0 ]
then
send_n=`grep "TX bytes" .dsl0_ifconfig.txt | awk '{print $6}' | awk -F : '{print $2}'`
recv_n=`grep "RX bytes" .dsl0_ifconfig.txt | awk '{print $2}' | awk -F : '{print $2}'`
else
send_n=0
recv_n=0
fi
echo `date` >> .flow_mon.log
if [ $send_n -eq 0 -a $recv_n -eq 0 ]
then
echo "dsl0 is down" >> .flow_mon.log
ifup dsl0
elif [ $send_n -eq $send_o -a $recv_n -eq $recv_o ]
then
echo "dsl0 except" >> .flow_mon.log
service network restart
else
echo "dsl0 normal" >> .flow_mon.log
send_o=$send_n
recv_o=$recv_n
fi
sleep 300
done
send_o=0
recv_o=0
send_n=0
recv_n=0
while test 1
do
ifconfig dsl0 > .dsl0_ifconfig.txt
if [ $? -eq 0 ]
then
send_n=`grep "TX bytes" .dsl0_ifconfig.txt | awk '{print $6}' | awk -F : '{print $2}'`
recv_n=`grep "RX bytes" .dsl0_ifconfig.txt | awk '{print $2}' | awk -F : '{print $2}'`
else
send_n=0
recv_n=0
fi
echo `date` >> .flow_mon.log
if [ $send_n -eq 0 -a $recv_n -eq 0 ]
then
echo "dsl0 is down" >> .flow_mon.log
ifup dsl0
elif [ $send_n -eq $send_o -a $recv_n -eq $recv_o ]
then
echo "dsl0 except" >> .flow_mon.log
service network restart
else
echo "dsl0 normal" >> .flow_mon.log
send_o=$send_n
recv_o=$recv_n
fi
sleep 300
done