服務器維護小知識搭建PPPoE,成功了的話,就覺得超級簡單,在CentOS Linux更是5步左右就能搞定。
服務器維護小知識1、安裝pppoe,安裝完成后,會有pppoe-server命令
yum install rp-pppoe
服務器維護小知識2、安裝完成后,會在動在/etc/ppp目錄下生成pppoe-server-options文件,文件內容如下,照著改就可以了
寫道
# PPP options for the PPPoE server
# LIC: GPL
require-pap
require-chap
login
lcp-echo-interval 10
lcp-echo-failure 2
logfile /var/log/pppoe.log
服務器維護小知識3、添加用戶名密碼,修改/etc/chap-secrets文件,添加下列一行
寫道
pppoe * "123456" *
很通俗,用戶名:pppoe,密碼是:123456
服務器維護http://www.richjn.cn/小知識4、添加防火墻規則,做nat轉換
寫道
iptables -A POSTROUTING -t nat -s 10.10.10.0/24 -j MASQUERADE
iptables -A FORWARD -p tcp --syn -s 10.10.10.0/24 -j TCPMSS --set-mss 1256
echo 1 > /proc/sys/net/ipv4/ip_forward
sysctl -w net.ipv4.ip_forward=1
第一條是添加nat,轉換來自10.10.10.0/24網段的ip
第二天是修改mtu,根據自身需求改了
第三條打開轉發
第四條是修改轉發文件
服務器維護小知識5、啟動pppoe
寫道
pppoe-server -I eth0 -L 10.10.10.1 -R 10.10.10.100-200
這條命令的作用是:-I eth0 在eth0端口上檢測pppoe discover包
-L 10.10.10.1 虛擬網關的意思,就是pppoe服務器端虛擬網關ip
-R 10.10.10.100-200 分配虛擬IP,分別是10.10.10.100到10.10.10.200
還有一些其他的參數你可以參考一下,直接man pppoe-server自己看了,每個參數都有默認值
服務器維護小知識成功完成上述步驟,就完成了搭建pppoe服務器端了,下面就是windows驗證了
我的是windows xp系統,win7或者路由器應該都沒問題
不過要改下驗證方式,在“屬性”--》“安全”--》“高級--設置”--》將“數據加密”改為“可選加密”,然后勾選上chap或者pap驗證就可以了
輸入用戶名密碼,不可意外就可以連接成功了
不過只是局域網的,意義并不大。
服務器維護小知識順帶貼一下pppoe建立的原理過程
寫道
PPPoE 的驗證過程
PPPoE 的驗證過程包括 2 個階段,Discovery 階段和 PPP Session 階段。
Discovery 階段,包含 4 個步驟:
Step 1: PADI
PPPoE 客戶端發送主動發現初始包(PPPoE Active Discovery Initiation,PADI),以太頭中的目的地址是以太廣播地址 FF:FF:FF:FF:FF:FF,PPPOE 頭中的 CODE 為 0x09,SESSION_ID 值必須為 0,負載部分必須只包含一個 Service-Name 類型的 TAG 表示請求的服務類型,另外可以包含其他 TAG,整個 PPPOE 包不能超過 1484 字節;
Step 2: PADO
服務器端 PPPoE 進程在網絡接口偵聽到 PADI 包后,發送主動發現提議包(PPPoEActive Discovery Offer, PADO),用來回應客戶機的 PADI 包,以太頭中的目的地址是客戶機的MAC 地址,PPPOE 頭中的 CODE 為 0x07, SESSION_ID 值必須為 0,負載部分必須包含一個 AC-Name 類型的
TAG,用來指示本 AC 的名稱,一個在 PADI 包中指定的Service- Name 的 TAG,另外可以包含其他 Service-Name 的 TAG。如果 AC 不對該客戶機提供服務,AC 就不回應 PADO 包。
Step 3: PADR
PPPoE 客戶端收到 PADO 包后,在 PADO 包中選擇一個(可能有多個 PPPoE 服務器,通常選取最快的一個)發送主動發現請求包(PPPoEActive Discovery Request,PADR),以太頭中的目的地址是所選取的 PADO 包的源以太頭地址(即 PPPoE 服務器的 MAC 地址),PPPOE 頭中的 CODE
為 0x19,SESSION_ID 值必須為 0,負載部分必須只包含一個 Service-Name 類型的 TAG 表示請求的服務類型,另外可以包含其他 TAG。
Step 4: PADS
MAC 地址匹配的 PPPoE 服務器收到 PADR 包后,發送主動發現會話確認包(PPPoE Active Discovery Session-confirmation, PADS),將產生一個 SEESSION_ID 值用來標志本次 PPP 會話,以 PADR 包方式發送給客戶機。以太頭中的目的地址是客戶機的 MAC 地址,PPPOE 頭中 的 CODE 為 0x65,SESSION_ID 值必須為所生成的那個SESSION_ID,負載部分必須只包含一個 Service-Name 類型的 TAG, 表示該服務類型被 PPPoE 服務器接受,另外可以包含其他 TAG。如果 PPPoE 服務器不接受 PADR 中的
Server-Name,PADS 中則包含一個 Service-Name -Error 類型的 TAG,這時 SESSION_ID 設置為 0。
服務器維護小知識PPP Session 階段:
當客戶端與服務器端遠成發現階段之后,即進入會話階段,在 PPP 會話階段,PPP 包被封裝在 PPPOE 以太幀中,以太包目的地址都是單一的,以太協議為 0x8864,PPPOE 頭的CODE必須為0,SESSION_ID必須一直為發現階段協商出的SEESION_ID值,PPPOE的負載是整個 PPP 包,PPP 包前是兩字節的 PPP 協議 ID 值。
在 Session 階段,主機或服務器任何一方都可發 PADT(PPPoE Active Discovery Terminate)報文通知對方結束 Session。
PPPoE 的身份驗證發生在會話(PPP Session)階段。可以這樣更解,rp-pppoe 包負責Discovery 及會話終止 PADT,ppp 包負責會話階段的數據傳輸。
IT運維 我們選擇北京艾銻無限
以上文章由北京艾銻無限科技發展有限公司整理
相關文章