[root]# cat pppoe-change.sh
#!/bin/bash
#
#現在接続している IPアドレスを調べる
#
ipnow=`ifconfig ppp0 | grep inet | awk '{print $1}'|cut -f 2 -d ":"`
#現在接続している HOST名を調べる
#
hostnow=`nslookup $ipnow | grep Name | awk '{print $2}'`
#nifty iijどちらが接続しているかを調べる
#
connnow=` ps ax | grep adsl-connect | awk '{print $7}' `
echo $connnow | grep "/etc/ppp/" > /dev/null
if [ $? = 0 ]
then
connnow=`echo $connnow | cut -f 4 -d "/" `
fi
#日付,転送量などを logに書き出し
#
echo $connnow $ipnow $hostnow >> /var/log/ppp-status.log
date >> /var/log/ppp-status.log
snmpget 127.0.0.1 -c net_work ifOutOctets.3 ifInOctets.3 >> /var/log/ppp-status.log
ifconfig ppp0 | grep "RX bytes" >> /var/log/ppp-status.log
#切断処理
#
/usr/sbin/adsl-stop /etc/ppp/$connnow >> /var/log/ppp-status.log
echo >> /var/log/ppp-status.log
#切断成功したかを調べる
#
ls -l /var/run | grep adsl | grep start > /dev/null
if [ $? = 1 ]
then
#切断成功していたら違う側のプロバイダーに接続
#
if [ $connnow = "iij" ]
then
/usr/sbin/adsl-start /etc/ppp/nifty >> /var/log/ppp-status.log
connnew="nifty"
else
/usr/sbin/adsl-start /etc/ppp/iij >> /var/log/ppp-status.log
connnew="iij"
fi
#dyndnsを更新
#
/usr/local/DiCE/diced -e0 >> /var/log/ppp-status.log
else
#切断成功していなかったら ERRORを残す
#
echo **** ERROR still connect $connnow >> /var/log/ppp-status.log
fi
#logに区切りを追加
#
echo --------------------------------------------- >> /var/log/ppp-status.log
|