[精讚] [會員登入]
362

[Freebsd] 定時測試 ADSL 是否斷線並重連

中華電信 ADSL 雖有固定 ip,可是他卻會不定時「斷線」, 使用以下的 方法可以定時測試是否斷線,以及重新撥接。

此文完整連結 http://n.sfs.tw/10056

複製連結 [Freebsd] 定時測試 ADSL 是否斷線並重連@新精讚
(文章歡迎轉載,務必尊重版權註明連結來源)
2016-10-22 09:52:34 最後編修
2016-10-22 09:34:33 By 張○○
 

中華電信 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

你可能感興趣的文章

[Freebsd] 使用者的定時排程 crontab Freebsd 下若使用者要建立自己的 crontab,方法和 root來建有一些不同。

設定友善的FREEBSD shell環境 FREEBSD 的原始SHELL很不友善,以下設定可以讓你的FREEBSD 很友善,和CENTOS差不多,這樣子FREEBSD 就有好用的介面。

[FREEBSD10] 解決vi/vim的中文字亂碼問題 vi, vim在Freebsd10使用UTF8時,中文字會出現亂碼,解決方法

[Freebsd] 查看dhcp客戶端 Freebsd如何能知道目前的租約及有效狀態

[Freebsd10] 使用者的crontab Freebsd 使用者的排程crontab和 root 層級的不太一樣

Freebsd11+sudo 使用sudo模組讓帳號具有root權限 linux系列中很好用的sudo,在freebsd中也可以使用

[FREEBSD] 使用 logrotate 來管理及備份日誌檔 Unix 系統中的日誌檔存放在 /var/log/ 中,可供我們查錯及觀察使用。日誌檔最大的問題是會不斷的長大。

[Freebsd8] PHP<5.5 安裝APC Freebsd8 上(php<5.5版本)安裝 pecl-APC

[FREEBSD] 在FreeBSD 如何使用 USB 隨身碟? 在FreeBSD 如何使用 USB 隨身碟?

[Freebsd] 定時測試 ADSL 是否斷線並重連 中華電信 ADSL 雖有固定 ip,可是他卻會不定時「斷線」, 使用以下的 方法可以定時測試是否斷線,以及重新撥接。

我有話要說


限制:留言最高字數1000字,超過部分會被截掉。請注意:留言不可帶有網址,會被濾掉。 限制:未登入訪客,每則留言間隔需超過10分鐘,每日最多5則留言。

訪客留言

[無留言]

隨機好文

UTF-8 BOM (Byte Order Mark) 的問題 在 Michael Kaplan 那看到 Every character has a story #4: U+feff

Linux shell 的date表示法 linux下SHELL中的date表示法

看懂DSUB DVI HDMI USB等各式影音接頭 看懂DSUB DVI HDMI等各式影音接頭

一個邏輯的錯誤刪了全部檔案的經驗 今天本來想做一件很簡單的事,但卻足足浪費我多一倍的時間,再加上刪掉我全部的檔案,原因只是因為我自己的邏輯錯誤。

[PHP] 檢查IP是否在某個網段內 mtachcidr 要檢查IP是否在某個網段內,要寫幾行?10行?5行? 不用,只要2行。以下是我寫的 code /** * matchCI