|
PPP 簡介
PPP 是 Poing-to-Point Protocol 的縮寫, 透過 PPP 我們可以
1.在一個點對點的連接上傳輸各種不同通訊協定的封包(datagram encapsulation)
2.PPP 會自動偵測這個連接的狀態及偵測資料在傳輸過程是否產生錯誤(LCP, link control protocol)
3.針對不同的通訊協定, PPP 也有一系列的方法能夠在連接建立時, 自動去設定兩端的網路協定的組態.
(NCP, network control protocol)
PPP 運作架構
上圖是一個 PPP client 透過撥接連上 ISP 的 PPP server 的一個範例, 在 ISP 端, 主要是由一部 Terminal server(內建 PPP 軟體), 很多部 modem 及一台作密碼確認的主機所組成.
當使用者 PPP client 透過 modem 撥接上線後, Terminal server 的 PPP server 軟體會要求 PPP client 送出 name/passwd, 然後將這組 username/passwd 送給密碼確認主機檢查, 確認通過後, PPP server 會給PPP client 一個 IP(168.95.229.55), 並且告訴它 PPP server 的 IP(168.95.231.215) 及其他有關的一些設定(DNS,WINS server...).
在上圖中有幾點要注意
1. PPP client 分到的 IP 其實和 PPP server 所在的區域網路是同一 subnet(168.95.229.0), PPP server 會幫 client 作 Proxy Arp, 因此對 168.95.229.0 其它主機而言, PPP client 就好像真的用網路卡直接接在 168.95.229.0 上一樣.
2. PPP server 必須做類似 router 的 packet forwarding 動作, 所有 PPP client 送來的封包, 到達 PPP server 後, PPP server 會把這些封包轉由 168.95.229.1 送往 internet, 否則 PPP client 就只能連 PPP server 而不能連往廣大的 internet 了.
3. PPP client 要把 PPP server 端的 IP(168.95.231.215) 設為 default gateway, 才能連上 internet, 不然的話會只有屬於 168.95.231.215 的資料會被送往 PPP server, 其它的會被 PPP client 認為無法送達.
因為之後我們會介紹 FreeBSD 下 PPP client 及 server 的安裝方式, 這些原則請務必記住, 不然您的 PPP server/client 就不能動了.
FreeBSD 下的 PPP 軟體
在 FreeBSD 下的 PPP 軟體主要有兩套, 一套是 Kernel PPP, 一套是 User PPP,
Kernel PPP 是將 PPP 的 support 作在 Kernel 裡頭, 而 User PPP 則是將 PPP 寫成一個 daemon在 user space 執行. 這兩套 PPP 軟體都能讓你的 FreeBSD PPP client 與 PPP server, 不過 User PPP 的功能較完善, 也一直持續在改進中, 所以我們介紹的是 User PPP, 以下有時也稱 PPP daemon.
UserPPP 這套軟體提供的功能有哪些呢?
1. PPP client
support NAT
support dial on demand
support multi link ppp
support unix login, pap, chap authentication
support ppp over tcp
interactive mode with terminal support
2. PPP server
support mutli link ppp
support call back
support unix login, pap, chap authentication
support ppp over tcp
proxy arp for peer
proxy arp for whole net of peer
3. external control program- pppctl
attach to running ppp daemon
monitor traffic
close, shutdown link
總而言之, 功能十分強大就對啦
|
|