[精讚] [會員登入]
834

[FREEBSD] 使用ADSL撥接程式為何

我在家架了一台 FREEBSD 的SERVER,其中ADSL設定和操作

分享此文連結 //n.sfs.tw/11619

分享連結 [FREEBSD] 使用ADSL撥接程式為何 @新精讚
(文章歡迎轉載,務必尊重版權註明連結來源)
2017-08-16 17:54:27 最後編修
2017-08-13 01:01:11 By 張○○
 

自動目錄

編輯 /etc/rc.conf

加入以下內容,讓ADSL撥接後也能當NAT

gateway_enable="YES"
ppp_enable="YES"
ppp_mode="ddial"
ppp_profile="hinet"
ppp_nat="YES"

編輯 /etc/ppp/ppp.conf

hinet:
 set device PPPoE:bge0:
 set mru 1492
 set mtu 1492
 set speed sync
 enable lqr
 set lqrperiod 5
 set cd 5
 set dial
 set login
 set timeout 0
 set authname 87654321@ip.hinet.net <--你的帳號
 set authkey 2axuliar  <--你的密碼
 #set ifaddr 10.200.0.254/0 255.255.0.0 0.0.0.0
 add default HISADDR
 enable dns

這個撥接我取名叫「hinet」,注意除了第一行 hinet: 外,其餘行前都得要有一個空白,否則會出錯:

  Warning: Bad label in /etc/ppp/ppp.conf (line xx) - missing colon

操作指令

撥接

'hinet' 是我設定的撥接名稱

# ppp -nat -ddial hinet

# /etc/rc.d/ppp start

中斷連線

tun0是因為撥接產生的介面,可下ifconfig來查看

# kill `cat /var/run/tun0.pid`

或是

# /etc/rc.d/ppp stop

斷線及重連

後來發現 ppp 真的滿容易自動斷線,所以參考別人的資料自己寫了一個SHELL定時檢查,

# vi /root/check_ppp.sh
#!/bin/sh
# 請務必先裝 fping
checkonline2=`/usr/local/sbin/fping 168.95.1.1`

if [ "$checkonline2" = "168.95.1.1 is alive" ] ; then
    echo "$checkonline2"
    echo "The ADSL is connected"
    exit
else
    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
    sleep 5 #等5秒
    /etc/rc.d/ppp start
fi

修改為可執行

# chmod 711 /root/check_ppp.sh

先測試

# /root/check_ppp.sh

168.95.1.1 is alive
The ADSL is connected

這個SHELL得先裝 fping

# /usr/ports/net/fping
# make install clean

接著使用排程每五分鐘測試一次

*/5 * * * * /root/check_ppp.sh

參考資料

[1] http://redhat.ecenter.idv.tw/bbs/showthread.php?postid=190438


編修 2009-10-07 01:48:52

END

你可能感興趣的文章

Freebsd 套件和套件有關的指令 在 Freebsd 上的套件(packages)要如何安裝,可以自行下載檔案解壓編譯,或是利用 ports。

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

Freebsd 建立/刪除/修改使用者+特權使用者 Freebsd 下使用者建立、刪除、修改使用者,新增特權使用者

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

[Freebsd14] 安裝bind9 安裝dns服務器bind9 記錄

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

我有話要說

>>

限制:留言最高字數1000字。 限制:未登入訪客,每則留言間隔需超過10分鐘,每日最多5則留言。

訪客留言

[無留言]

隨機好文

HP SAS硬碟leds燈號說明 HP SAS硬碟leds燈號(hp g7/g6系統適用)說明

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

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

NETCRAFT發現你的網站及作業系統 NETCRAFT可以發現你的網站及作業系統

[PHP]解決ksort新增的SORT_NATURAL|SORT_FLAG_CASE方法 php>=5.4中ksort函數多了SORT_NATURAL 和 SORT_FLAG_CASE 旗標,對舊版的PHP中要怎麼辦?