[精讚] [會員登入]
1031

[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

你可能感興趣的文章

[Freebsd14] 登入時自動加載alias (bash shell) alias登入時自動加戴雖然是不起眼的設定,但也讓我找了好久

[FreeBSD] 查看檔案詳細資訊 利用stat查看檔案詳細資訊

Freebsd 設定quota 在Freebsd使用quota以限制使用者容量

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

Freebsd shell 的日期date表示法 Freebsd 的日期date功能超級強大,學會會很方便。

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

隨機好文

[jQuery] textarea 的取值和給值 HTML 的 TEXTAREA 標籤若要用 jquery 取值,不能使用 .text() 或 .html() ,使用 .

[札記] 2016.7~12月札記 札記,只是札記

[Win7] 燒錄 iso 檔 在Windows7 中內建燒錄程式,可以直接把檔案拉到光碟機裡,再執行燒錄。

好用的3+2碼郵遞區號查詢系統推薦 網路上找到用地址輸入判斷3+2碼郵遞區號的辨識率不高,除了這個網站…

APACHE的記錄檔格式 LogFormat 語法 在APACHE中有定義一些記錄的語法模版 在 /etc/httpd/conf/httpd.conf 中: LogForm