[精讚] [會員登入]
251

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

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

此文完整連結 http://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

你可能感興趣的文章

[FREEBSD10] 安裝 dhcp 伺服器 Freebsd10 安裝 dhcp for IPv4伺服器

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

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

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

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

[FREEBSD11] ssh登入時免輸入密碼 自動程式需要進到別台機器時,沒辦法使用交談式方式輸入密碼,發現一個簡單的方法設定

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

[Freebsd] 使用 ADSL 撥接上網 Freebsd上要使用 ADSL 撥接上網,該如何設定?

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

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

我有話要說


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

訪客留言

[無留言]

隨機好文

安裝SPHINX支援中文 新版本的 sphinx 和舊版不同,網路上很多範例和教學是不能用的。此文是安裝和設定方法分享

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

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

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

魔球中小女孩唱的歌 The show 魔球中小女孩唱的歌 The show