02-PPPoE配置
本章節下載: 02-PPPoE配置 (294.85 KB)
1.3.4 開啟PPPoE中繼對服務器側報文的Vendor-Specific Tag剝離功能
1.3.5 配置PPPoE中繼對客戶端側PPPoE報文中circuit-id和remote-id的填充格式
1.3.6 配置PPPoE中繼對客戶端側PPPoE報文中Vendor-Specific Tag字段的處理策略
PPPoE(Point-to-Point Protocol over Ethernet,在以太網上承載PPP協議)是對PPP協議的擴展,它在以太網上建立PPPoE會話,將PPP報文封裝在以太網幀之內,在以太網上提供點對點的連接,解決了PPP無法應用於以太網的問題。PPPoE還可以通過遠端接入設備對接入的每台主機實現控製、認證、計費功能。由於很好地結合了以太網的經濟性及PPP良好的可擴展性與管理控製功能,PPPoE被廣泛應用於小區接入組網等環境中。
PPPoE使用Client/Server模型。PPPoE Client向PPPoE Server發起連接請求,兩者之間會話協商通過後,就建立PPPoE會話,此後PPPoE Server向PPPoE Client提供接入控製、認證、計費等功能。
當需要基於PPPoE Client的位置信息對其進行更加精細的管理時,可在PPPoE Client和PPPoE Server之間部署PPPoE Relay。
根據PPPoE會話的起點所在位置的不同,PPPoE分為Router-Initiated和Host-Initiated兩種組網結構。
如圖1-1所示,Router-Initiated組網結構是在兩台路由器之間建立PPPoE會話,所有主機通過同一個PPPoE會話傳送數據,主機上不用安裝PPPoE客戶端撥號軟件,一般是一個企業共用一個賬號接入網絡(圖中PPPoE Client位於企業/公司內部,PPPoE Server是運營商的設備)。
如圖1-2所示,Host-Initiated組網結構是將PPPoE會話建立在Host和運營商的路由器之間,為每一個Host建立一個PPPoE會話,每個Host都是PPPoE Client,每個Host使用一個帳號,方便運營商對用戶進行計費和控製。Host上必須安裝PPPoE客戶端撥號軟件。
圖1-2 Host-Initiated組網結構圖
為了增強PPPoE組網的安全性,避免PPPoE Client賬號被盜時,盜用者在其它地方通過該賬號接入網絡,引入了PPPoE Relay特性。
PPPoE Relay又稱PPPoE+,部署在PPPoE Client和PPPoE Server之間的PPPoE中繼設備(一般為Switch)上。
PPPoE中繼設備將PPPoE Client接入的端口信息(如槽位號/接口號、VLAN、MAC地址等)通過PPPoE協議報文上送給PPPoE Server,由PPPoE Server根據報文信息實現PPPoE Client的用戶賬號與接入端口的綁定認證,增強PPPoE組網的安全性。
PPPoE中繼設備通過偵聽PPPoE Client和PPPoE Server之間協議交互報文來控製協議報文的轉發,具體流程如圖1-3所示。
圖1-3 PPPoE中繼組網中PPPoE Client接入流程圖
(1) PPPoE Client以廣播形式發送PADI報文。
(2) PPPoE中繼收到PADI報文後,為報文添加Vendor-Specific Tag字段(Vendor-Specific Tag是PPPoE報文中用於標識PPPoE Client的接入端口和VLAN等位置信息Tag字段),並將報文從所有的信任端口廣播出去。
(3) PPPoE Server收到PADI報文後,給PPPoE Client回應PADO報文。
(4) PPPoE中繼收到PADO報文後,將報文轉發給PPPoE Client。
(5) PPPoE Client收到PADO後,以單播的形式發送PADR報文向PPPoE Server申請PPPoE服務。
(6) PPPoE中繼收到PADR報文後,為報文添加Vendor-Specific Tag字段,並根據PADR報文中的目的MAC查找對應的出端口,如果出端口是信任端口,則將報文從該端口轉發出去;如果出端口是非信任端口,則丟棄該PADR報文。
(7) PPPoE Server收到PADR報文後,先為PPPoE Client分配會話ID,並將會話ID和Vendor-Specific Tag進行綁定,然後再給PPPoE Client回應PADS報文。
(8) PPPoE中繼收到PADS報文後,將報文轉發給PPPoE Client。
(9) PPPoE Client收到PADS報文後,開始與PPPoE Server進行LCP協商和認證。
(10) 在認證階段,PPPoE Server會將PPPoE Client的位置信息和用戶名/密碼一起發送給RADIUS服務器進行認證。
(11) RADIUS服務器將根據數據庫中已配置好的位置信息和用戶名/密碼對PPPoE Client進行驗證,隻有二者均驗證通過時,才允許PPPoE Client認證通過。
(12) PPPoE Client認證通過後開始與PPPoE Server進行NCP協商。協商通過後,PPPoE Client上線成功。
與PPPoE相關的協議規範有:
· RFC 2516:A Method for Transmitting PPP Over Ethernet (PPPoE)
本係列設備僅支持作為PPPoE Relay。
PPPoE Relay目前支持以下接口類型:
· 二層以太網接口
· 二層聚合接口
PPPoE Relay配置任務如下:
(1) 開啟PPPoE中繼功能
(2) 配置PPPoE中繼信任端口
(3) (可選)開啟PPPoE中繼對服務器側報文的Vendor-Specific Tag剝離功能
(4) (可選)配置PPPoE中繼對客戶端側PPPoE報文中circuit-id和remote-id的填充格式
(5) (可選)配置PPPoE中繼對客戶端側PPPoE報文中Vendor-Specific Tag字段的處理策略
隻有開啟PPPoE中繼功能後,其它相關的PPPoE中繼配置才能生效。
(1) 進入係統視圖。
system-view
(2) 開啟PPPoE中繼功能。
pppoe-relay enable
缺省情況下,PPPoE中繼功能處於關閉狀態。
開啟PPPoE中繼功能後,本設備會對收到的PPPoE協議報文進行以下處理:
· 當從非信任端口收到PADI、PADR和PADT報文時,僅從信任端口轉發出去。
· 當從非信任端口收到的PADO和PADS報文,不轉發直接丟棄。
· 當從信任端口收到的PADO、PADS和PADT報文時,可從任意端口轉發出去。
· 當從信任端口收到PADI和PADR報文時,僅從信任端口轉發出去。
為確保PPPoE中繼設備可以正常處理及轉發PPPoE協議報文,需要將PPPoE中繼設備上連接PPPoE Server側的端口配置為信任端口,連接PPPoE Client側的端口配置為非信任端口。
本命令不支持在二層聚合組的成員端口上配置;如果二層以太網接口在加入二層聚合組之前已配置了本命令,則在加入聚合組後,二層以太網接口上的本命令將被清除。
(1) 進入係統視圖。
system-view
(2) 進入二層以太網接口視圖。
interface interface-type interface-number
(3) 配置當前端口為PPPoE中繼信任端口。
pppoe-relay trust
缺省情況下,當前端口為PPPoE中繼的非信任端口。
在PPPoE中繼信任端口上開啟本功能後,PPPoE中繼從PPPoE Server收到PADO和PADS報文時,將剝離報文中的Vendor-Specific Tag字段後再進行轉發。
本功能僅對PPPoE中繼信任端口入方向收到的報文生效。
本命令不支持在二層聚合組的成員端口上配置;如果二層以太網接口在加入二層聚合組之前已配置了本命令,則在加入聚合組後,二層以太網接口上的本命令將被清除。
(1) 進入係統視圖。
system-view
(2) 進入二層以太網接口視圖。
interface interface-type interface-number
(3) 開啟PPPoE中繼對服務器側報文的Vendor-Specific Tag剝離功能。
pppoe-relay server-information vendor-specific strip
缺省情況下,PPPoE中繼對服務器側報文的Vendor-Specific Tag剝離功能處於關閉狀態。
PPPoE中繼收到PPPoE Client的PPPoE報文後,將按照本特性配置的格式為PPPoE報文填充對應的circuit-id和remote-id內容。
circuit-id和remote-id內容的最大長度都為63個字符,當待填充內容長度大於63個字符時,僅提取前63個字符進行填充。
(1) 進入係統視圖。
system-view
(2) 配置PPPoE中繼對客戶端側PPPoE報文中circuit-id和remote-id的填充格式。
pppoe-relay client-information format { circuit-id | remote-id } { ascii | hex | user-defined text }
缺省情況下,PPPoE中繼對客戶端側PPPoE報文中circuit-id和remote-id填充格式均為字符串格式。
當PPPoE中繼收到PADI或PADR報文後,將根據報文中是否包含Vendor-Specific Tag字段、用戶配置的Vendor-Specific Tag字段的處理策略和填充模式對報文進行相應的處理,並將處理後的報文轉發給PPPoE Server。具體的處理方式請見表1-1。
表1-1 PPPoE中繼對Vendor-Specific Tag字段的處理策略
Vendor-Specific Tag攜帶情況 |
Vendor-Specific Tag的處理策略 |
PPPoE中繼對報文的處理 |
收到的報文中帶有Vendor-Specific Tag |
Drop |
將Vendor-Specific Tag剝離後再進行轉發 |
Keep |
保持Vendor-Specific Tag不變並進行轉發 |
|
Replace |
根據配置的填充格式填充Vendor-Specific Tag,並用該字段替換報文中的原有Vendor-Specific Tag字段後再進行轉發 |
|
收到的報文中不帶有Vendor-Specific Tag |
Drop |
直接進行轉發 |
Keep |
直接進行轉發 |
|
Replace |
根據配置的填充格式填充Vendor-Specific Tag,添加到報文中並進行轉發 |
本功能既可在係統視圖下對所有接口進行全局配置,也可在接口視圖下隻對當前接口進行配置,後者的配置優先級較高。
配置的處理策略僅對接口入方向收到的報文生效。
本命令不支持在二層聚合組的成員端口上配置;如果二層以太網接口在加入二層聚合組之前已配置了本命令,則在加入聚合組後,二層以太網接口上的本命令將被清除。
(1) 進入係統視圖。
system-view
(2) 配置PPPoE中繼對客戶端側PADI和PADR報文的處理策略。
pppoe-relay client-information strategy { drop | keep | replace }
缺省情況下,PPPoE中繼對客戶端側PADI和PADR中Vendor-Specific Tag字段的全局處理策略為Replace。
(1) 進入係統視圖。
system-view
(2) 進入二層以太網接口視圖。
interface interface-type interface-number
(3) 配置PPPoE中繼對客戶端側PADI和PADR報文的處理策略。
pppoe-relay client-information strategy { drop | keep | replace }
缺省情況下,接口上未配置PPPoE中繼對客戶端側PADI和PADR中Vendor-Specific Tag字段的處理策略。
在完成上述配置後,在任意視圖下執行display命令可以顯示PPPoE中繼配置後的運行情況,通過查看顯示信息驗證配置的效果。
在用戶視圖下執行reset命令,可以清除PPPoE中繼的報文統計信息。
表1-2 PPPoE Server顯示和維護
操作 |
命令 |
顯示PPPoE中繼對客戶端側報文中Vendor-Specific Tag處理方式的配置信息 |
display pppoe-relay client-information { format | strategy } |
顯示PPPoE中繼的報文統計信息 |
display pppoe-relay statistics [ interface interface-type interface-number ] |
清除PPPoE中繼的報文統計信息 |
reset pppoe-relay statistics |
Host通過Switch采用PPPoE接入方式接入Router。其中,Switch作為PPPoE中繼,Router作為PPPoE Server並通過PPP地址池為用戶分配IPv4地址等信息。
圖1-4 PPPoE Relay配置組網圖
(1) 配置Swtich作為PPPoE中繼
# 開啟PPPoE中繼功能。
<Switch> system-view
[Switch] pppoe-relay enable
# 配置連接服務器側接口GigabitEthernet1/0/2為PPPoE中繼信任端口。
[Switch] interface gigabitethernet 1/0/2
[Switch-GigabitEthernet1/0/2] pppoe-relay trust
(2) 配置Router作為PPPoE Server
# 創建一個PPPoE用戶。
<Router> system-view
[Router] local-user user1 class network
[Router-luser-network-user1] password simple 123456TESTplat&!
[Router-luser-network-user1] service-type ppp
[Router-luser-network-user1] quit
# 配置虛擬模板接口1的參數,采用CHAP認證對端,並使用PPP地址池為對端分配IP地址,並配置為對端指定DNS服務器的IP地址。
[Router] interface virtual-template 1
[Router-Virtual-Template1] ppp authentication-mode chap domain system
[Router-Virtual-Template1] remote address pool 1
[Router-Virtual-Template1] ppp ipcp dns 8.8.8.8
[Router-Virtual-Template1] quit
# 配置PPP地址池(包含9個可分配的IP地址),和地址池網關地址。
[Router] ip pool 1 1.1.1.2 1.1.1.10
[Router] ip pool 1 gateway 1.1.1.1
# 在接口GigabitEthernet1/0/1上啟用PPPoE Server協議,並將該接口與虛擬模板接口1綁定。
[Router] interface gigabitethernet 1/0/1
[Router-GigabitEthernet1/0/1] pppoe-server bind virtual-template 1
[Router-GigabitEthernet1/0/1] quit
# 在係統缺省的ISP域system下,配置域用戶使用RADIUS認證/授權/計費方案。
[Router] domain system
[Router-isp-system] authentication ppp radius-scheme rs1
[Router-isp-system] authorization ppp radius-scheme rs1
[Router-isp-system] accounting ppp radius-scheme rs1
[Router-isp-system] quit
# 配置RADIUS方案以及RADIUS認證/授權/計費服務器的IP地址。
[Router] radius scheme rs1
[Router-radius-rs1] primary authentication 11.110.91.146
[Router-radius-rs1] primary accounting 11.110.91.146
# 配置與RADIUS服務器交互報文時使用的認證、計費共享密鑰為明文expert。
[Router-radius-rs1] key authentication simple expert
[Router-radius-rs1] key accounting simple expert
[Router-radius-rs1] quit
(3) 配置RADIUS服務器
在RADIUS服務器上配置認證與計費的共享密鑰expert。
在RADIUS服務器上增加一個PPPoE用戶,用戶名為user1,密碼為123456及對應的位置信息。
具體配置過程請參考實際使用的RADIUS服務器的用戶手冊。
以太網上各主機安裝PPPoE客戶端軟件後,配置好用戶名和密碼(此處為user1和123456TESTplat&!)就能使用PPPoE協議,通過設備Router接入到Internet。
不同款型規格的資料略有差異, 詳細信息請向具體銷售和400谘詢。H3C保留在沒有任何通知或提示的情況下對資料內容進行修改的權利!