Raspberry Pi 的基礎 - 直接連線 ADSL 或光纖撥接上網

by 2月 03, 2015 2 意見        

在實作 Raspberry Pi 的應用 - Wifi 無線基地台Raspberry Pi 的應用 - 防止被追蹤與監控的改良版 Wifi 無線基地台 的時候,因為對外網路是掛在 Asus RT-N16 後端,不用煩惱撥接的問題。

可是在沒有 IP 分享器、無線基地台的狀況下,總得讓 Raspberry Pi 自己先上網才能做後續的動作吧,所以 Let's do it,來搞定 PPPoE 撥接的設定吧。

事前準備

  • Raspberry Pi Type B / B+,Type A / A+ 必須自行插上 USB 網路卡。
  • Raspbian 作業系統。
  • ADSL / FTTB 網路。
  • 依照 Raspberry Pi 的基礎 - 系統設定的調教 的步驟,把 Raspbian 安裝完畢並做好基本設定。
  • pppoeconf 及 rp-pppoe 兩種套件,只要選擇其中一種即可。

使用 pppoeconf 套件


直接從官方套件庫安裝 PPPoE 撥接程式。
sudo apt-get -y install pppoeconf

準備設定撥接參數。
sudo pppoeconf

別忘了打開小烏龜的電源,把網路線接到小烏龜上,否則會顯示撥接設備沒有回應 。

輸入撥接的相關設定值。
  • 提示程式會把設定值寫到 /etc/ppp/peers/dsl-provider 檔案裡。
  • 使用常見的撥接參數。
  • 輸入撥接帳號。
  • 輸入撥接密碼。
  • 讓 ISP 提供的 DNS 設定值,直接存到本機的 DNS 設定檔裡。
  • 配合 ADSL / FTTB,修改 MSS (Maximum Segment Size) 的數值。
  • 開機後自動撥接。
  • 現在立刻進行撥接連線。
  • 設定完成。

程式已經自動幫我們撥接成功了。

這裡可以看到出現了 ppp0 的網路介面。

查詢一下目前撥接的狀態。
plog

要斷線的話,直接輸入指令即可。
sudo poff

不過,如果同時產生了多個 ppp 撥接介面的話,就要加「-a」的參數才可以強制斷線。
sudo poff -a

重新撥接連線可以用「pon」指令。
sudo pon dsl-provider

可是別忘了,要有「root」權限才可以正確的撥接成功。


使用 rp-pppoe 套件


RP-PPPoE 目前的版本為 3.1.1,它可以提供 PPPoE Client 撥接上網功能,也可以做 PPPoE 伺服器,讓其他的用戶端連上來。

首先下載原始碼。
wget https://www.roaringpenguin.com/files/download/rp-pppoe-3.11.tar.gz

將它解壓縮。
tar zxvf rp-pppoe-3.11.tar.gz

檔案並不多。

先看一下 README 的說明。

RP-PPPoE 支援 Linux Kernel 2.2.9、FreeBSD、NetBSD、OpenBSD ... 等 Unix-like 系統,此外必須安裝相依套件 PPP Daemon 才可以正常啟動。
sudo apt-get -y install ppp

我們直接用預設值進行編譯與安裝。
./go

編譯過程很順利,不過在安裝時權限不足。

所以要用 root 權限去執行才可以。
sudo ./go

這樣子才會跳到設定畫面來。

接著就是設定 ADSL / FTTB 撥接的相關資料。
  1. 輸入撥接帳號。
  2. 選擇網路介面。
  3. 持續連線 (no),或是有需求時自動撥接 (yes)。
  4. 設定第一台 DNS 伺服器。
  5. 設定第二台 DNS 伺服器。
  6. 輸入撥接密碼。
  7. 是否使用建議的防火牆設定,0 是自己設定 iptables 規則,1 是設定成普通上網用的電腦,2 是打開 NAT 功能,讓其他人透過它連線上網。
  8. 確認所有的設定值是否正確。
  9. 設定完成。
全部設定完成後,就可以開始撥接上網了。
sudo pppoe-start

成功之後,就會看到多了一個 ppp0 的網路介面出現了。

查詢目前的連線狀況。
sudo pppoe-status

若是不需要再連線,可以下指令要求它斷線,ppp0 介面就會消失。
sudo pppoe-stop


如果在撥接時顯示「TIME OUT」的錯誤訊息,別忘了檢查一下小烏龜的電源有沒有開、網路線接好了沒、ADSL / FTTB 燈號有沒有問題。

此外,別忘了要用 root 權限才可以進行撥接。


參考資料


圖片來源


更新紀錄

  • 2015/02/03 撰文。

Heracles Jam,江湖人稱「海公公」

IT 技術家 - 創站部落客

一個常用 Windows、慣用 macOS、愛用 Linux 的 3C 阿宅
現職 MIS / 業界講師 / 資訊顧問 / 部落客

2 則留言 :

  1. 阿都沒網路了 是要怎麼載套件???

    回覆刪除
    回覆
    1. 是的,你提到了一個非常重要的關鍵....

      一般我們在使用 Raspberry Pi 時,會透過 ssh 連線管理,這個時候通常會有對外網路。
      我自己的習慣就會先把基本的套件先安裝好,或是先把它下載下來,如果沒有事先準備好的話,真的就只就無能為力了。

      刪除