中華電信 ADSL 雖有固定 ip,可是他卻會不定時「斷線」,斷線時如果人在外面一定急得跳腳。
因此使用以下的 SHELL 可以定時測試是否斷線,以及重新撥接。
安裝 fping
# cd /usr/ports/net/fping
或
# cd /usr/ports/net/fping+ipv6
# make
# make install
編輯執行SHELL
利用hinet的ip作為是否斷線的依據,把撥接的記錄寫到/var/log/ppp.reconn.log設定檔中
# vi /etc/ppp/ppp.sh
#!/bin/sh checkonline2=`/usr/local/sbin/fping 168.95.0.1` if [ "$checkonline2" = "168.95.0.1 is alive" ] ; then echo "$checkonline2" echo "The ADSL is connected" exit else echo "$checkonline1" echo "$checkonline2" echo "The ADSL is disconnected" curr_day=`/bin/date +%Y%m%d_%H%M%S` echo "$curr_day PPP Reconnection" >> /var/log/ppp.reconn.log /etc/rc.d/ppp stop #FB>6.1 使用 #/usr/bin/killall ppp #FB <=6.0版以前使用 sleep 10 #等10秒 #/usr/sbin/ppp -ddial -unit 0 -nat gykj #FB6.0版以前使用 /etc/rc.d/ppp start #FB >=6.1 使用 fi
加入定時表
#每5分鐘fping一次,斷線重連,記錄檔寫到 /var/log/ppp.reconn.log */5 * * * * /etc/ppp/ppp.sh
後來發現 ppp 真的滿容易斷線的。開機3個月發現他的斷線記錄如下:
20090217_164504 PPP Reconnection
20090218_141004 PPP Reconnection
20090312_131004 PPP Reconnection
20090328_152504 PPP Reconnection
20090328_153004 PPP Reconnection
...
20090423_203504 PPP Reconnection
20090428_085004 PPP Reconnection
20090512_102505 PPP Reconnection
原文編修 2009-02-17 23:18:44