07-H3C_VPLS典型配置舉例
本章節下載: 07-H3C_VPLS典型配置舉例 (656.31 KB)
資料版本:6W100-20200330
產品版本:Release 7585P05
Copyright © 2020 bobty下载软件 版權所有,保留一切權利。
非經本公司書麵許可,任何單位和個人不得擅自摘抄、複製本文檔內容的部分或全部,並不得以任何形式傳播。
除bobty下载软件 的商標外,本手冊中出現的其它公司的商標、產品標識及商品名稱,由各自權利人擁有。
本文檔中的信息可能變動,恕不另行通知。
目 錄
5 全連接模型的VPLS(BGP自動發現LDP信令方式)典型配置舉例
7 H-VPLS模型的VPLS(LSP接入方式)典型配置舉例
8 H-VPLS模型的VPLS(QinQ接入方式)典型配置舉例
VPLS是一種基於L2VPN的技術,在MPLS網絡中為VPN建立了類似於傳統以太網的廣播式傳輸環境,使VPN用戶得到更接近傳統以太網的使用感受。
VPLS的典型組網分為兩種模型:
· 全連接模型,適用於MPLS網絡層次比較簡單,PE數量較少的MPLS骨幹網。此模型下有三種方式的組網:
¡ LDP方式:采用LDP協議作為信令協議,適用於用戶站點數量少且比較固定的情況。
¡ BGP自動發現LDP信令方式:通過BGP協議自動發現遠端PE,然後采用LDP協議作為信令協議,適用於用戶站點數量多但比較固定的情況。
¡ BGP方式:采用BGP擴展協議作為信令協議,適用於用戶站點數量較多且具有擴充需求的情況。
· H-VPLS模型,適用於MPLS網絡比較複雜,PE數量較多的MPLS骨幹網。該模型采用層次化網絡結構,劃分UPE和NPE設備,UPE負責用戶站點接入以及與最近的NPE間建立連接,而NPE之間進行邏輯全連接,UPE通過NPE與對端站點進行報文交換。此模型下有兩種方式的組網:
¡ LSP接入方式:用戶報文直接進入LSP隧道進行傳輸,適用於UPE設備支持VPLS功能的情況。
¡ QinQ接入方式: 用戶報文被封裝外層VLAN標簽後,再進入LSP隧道進行傳輸,適用於UPE設備不支持VPLS功能的情況。
本文中將根據這兩種模型介紹VPLS在設備上的配置舉例。
本文檔中的配置均是在實驗室環境下進行的配置和驗證,配置前設備的所有參數均采用出廠時的缺省配置。如果您已經對設備進行了配置,為了保證配置效果,請確認現有配置和以下舉例中的配置不衝突。
本文檔假設您已了解VPLS特性。
如圖1所示,某公司有三個位於不同位置的辦公地點:公司總部和兩個分支機構。該公司要求服務提供商提供二層VPN服務,使三個辦公地點實現二層的互聯,能夠相互共享內部資源。
該公司分支機構較少,且後續不會擴容。為滿足用戶需求,可通過部署LDP方式的VPLS技術實現三個用戶站點之間的二層通信。
圖1 配置全連接模型的VPLS組網示意圖(LDP方式)
· 在骨幹網中部署MPLS服務,使用LSP作為公網隧道。
· 在任意兩台PE之間配置並建立LDP方式的PW,實現PW的全互聯。
· 在PE設備的下行端口上配置服務實例和相應的匹配規則,用來識別用戶網絡中需要使用VPLS隧道進行傳輸的報文。
· 為了實現站點間的VLAN隔離,需要創建VSI實例“user_a”和“user_b”分別於VLAN100和VLAN200的報文綁定。
· 配置PE 1
# 配置環回口地址。
<PE1> system-view
[PE1] interface loopback 0
[PE1-LoopBack0] ip address 1.1.1.9 32
[PE1-LoopBack0] quit
# 創建VLAN2,並將Ten-GigabitEthernet1/0/2端口加入VLAN2。
[PE1] vlan 2
[PE1-vlan2] port ten-gigabitethernet 1/0/2
[PE1-vlan2] quit
# 創建接口Vlan-interface2。
[PE1] interface vlan-interface 2
[PE1-Vlan-interface2] ip address 10.1.1.1 24
[PE1-Vlan-interface2] quit
# 在PE 1上運行OSPF。
[PE1] ospf
[PE1-ospf-1] area 0
[PE1-ospf-1-area-0.0.0.0] network 10.1.1.0 0.0.0.255
[PE1-ospf-1-area-0.0.0.0] network 1.1.1.9 0.0.0.0
[PE1-ospf-1-area-0.0.0.0] quit
[PE1-ospf-1] quit
· 配置PE 2
# 配置環回口地址。
<PE2> system-view
[PE2] interface loopback 0
[PE2-LoopBack0] ip address 3.3.3.9 32
[PE2-LoopBack0] quit
# 創建VLAN3,並將Ten-GigabitEthernet1/0/1端口加入VLAN3。
[PE2] vlan 3
[PE2-vlan3] port ten-gigabitethernet 1/0/1
[PE2-vlan3] quit
# 創建接口Vlan-interface3。
[PE2] interface vlan-interface 3
[PE2-Vlan-interface3] ip address 10.1.2.2 24
[PE2-Vlan-interface3] quit
# 在PE 2上運行OSPF。
[PE2] ospf
[PE2-ospf-1] area 0
[PE2-ospf-1-area-0.0.0.0] network 10.1.2.0 0.0.0.255
[PE2-ospf-1-area-0.0.0.0] network 3.3.3.9 0.0.0.0
[PE2-ospf-1-area-0.0.0.0] quit
[PE2-ospf-1] quit
· 配置PE 3
# 配置環回口地址。
<PE3> system-view
[PE3] interface loopback 0
[PE3-LoopBack0] ip address 4.4.4.9 32
[PE3-LoopBack0] quit
# 創建VLAN4,並將Ten-GigabitEthernet1/0/1端口加入VLAN4。
[PE3] vlan 4
[PE3-vlan4] port ten-gigabitethernet 1/0/1
[PE3-vlan4] quit
# 創建接口Vlan-interface4。
[PE3] interface vlan-interface 4
[PE3-Vlan-interface4] ip address 10.1.3.2 24
[PE3-Vlan-interface4] quit
# 在PE 3上運行OSPF。
[PE3] ospf
[PE3-ospf-1] area 0
[PE3-ospf-1-area-0.0.0.0] network 10.1.3.0 0.0.0.255
[PE3-ospf-1-area-0.0.0.0] network 4.4.4.9 0.0.0.0
[PE3-ospf-1-area-0.0.0.0] quit
[PE3-ospf-1] quit
· 配置P
# 配置環回口地址。
<P> system-view
[P] interface loopback 0
[P-LoopBack0] ip address 2.2.2.9 32
[P-LoopBack0] quit
# 創建VLAN2,將端口Ten-GigabitEthernet1/0/2加入VLAN2。
[P] vlan 2
[P-vlan2] port ten-gigabitethernet 1/0/2
[P-vlan2] quit
# 配置接口Vlan-interface2。
[P] interface vlan-interface 2
[P-Vlan-interface2] ip address 10.1.1.2 24
[P-Vlan-interface2] quit
# 創建VLAN3,將端口Ten-GigabitEthernet1/0/3加入VLAN3。
[P] vlan 3
[P-vlan3] port ten-gigabitethernet 1/0/3
[P-vlan3] quit
# 配置接口Vlan-interface3。
[P] interface vlan-interface 3
[P-Vlan-interface3] ip address 10.1.2.1 24
[P-Vlan-interface3] quit
# 創建VLAN4,將端口Ten-GigabitEthernet1/0/4加入VLAN4。
[P] vlan 4
[P-vlan4] port ten-gigabitethernet 1/0/4
[P-vlan4] quit
# 配置接口Vlan-interface4。
[P] interface vlan-interface 4
[P-Vlan-interface4] ip address 10.1.3.1 24
[P-Vlan-interface4] quit
# 在P上運行OSPF。
[P] ospf
[P-ospf-1] area 0
[P-ospf-1-area-0.0.0.0] network 10.1.1.0 0.0.0.255
[P-ospf-1-area-0.0.0.0] network 10.1.2.0 0.0.0.255
[P-ospf-1-area-0.0.0.0] network 10.1.3.0 0.0.0.255
[P-ospf-1-area-0.0.0.0] network 2.2.2.9 0.0.0.0
[P-ospf-1-area-0.0.0.0] quit
[P-ospf-1] quit
· 配置PE 1
# 配置LSR ID。
[PE1] mpls lsr-id 1.1.1.9
# 全局使能LDP。
[PE1] mpls ldp
[PE1-ldp] quit
# 配置接口Vlan-interface2使能MPLS和LDP。
[PE1] interface vlan-interface 2
[PE1-Vlan-interface2] mpls enable
[PE1-Vlan-interface2] mpls ldp enable
[PE1-Vlan-interface2] quit
· 配置PE 2
# 配置LSR ID。
[PE2] mpls lsr-id 3.3.3.9
# 全局使能LDP。
[PE2] mpls ldp
[PE2-ldp] quit
# 配置接口Vlan-interface3使能MPLS和LDP。
[PE2] interface vlan-interface 3
[PE2-Vlan-interface3] mpls enable
[PE2-Vlan-interface3] mpls ldp enable
[PE2-Vlan-interface3] quit
· 配置PE 3
# 配置LSR ID。
[PE3] mpls lsr-id 4.4.4.9
# 全局使能LDP。
[PE3] mpls ldp
[PE3-ldp] quit
# 配置接口Vlan-interface4使能MPLS和LDP。
[PE3] interface vlan-interface 4
[PE3-Vlan-interface4] mpls enable
[PE3-Vlan-interface4] mpls ldp enable
[PE3-Vlan-interface4] quit
· 配置P
# 配置LSR ID。
[P] mpls lsr-id 2.2.2.9
# 全局使能LDP。
[P] mpls ldp
[P-ldp] quit
# 配置接口Vlan-interface2使能MPLS和LDP。
[P] interface vlan-interface 2
[P-Vlan-interface2] mpls enable
[P-Vlan-interface2] mpls ldp enable
[P-Vlan-interface2] quit
# 配置接口Vlan-interface3,使能MPLS和LDP。
[P] interface vlan-interface 3
[P-Vlan-interface3] mpls enable
[P-Vlan-interface3] mpls ldp enable
[P-Vlan-interface3] quit
# 配置接口Vlan-interface4,使能MPLS和LDP。
[P] interface vlan-interface 4
[P-Vlan-interface4] mpls enable
[P-Vlan-interface4] mpls ldp enable
[P-Vlan-interface4] quit
· 配置PE 1
# 全局使能MPLS L2VPN。
[PE1] l2vpn enable
# 創建VSI實例user_a,並配置該VSI實例采用LDP信令協議。
[PE1] vsi user_a
[PE1-vsi-user_a] pwsignaling ldp
# 在該VSI實例下配置PE 2和PE 3為遠端PE,並指定PW ID為500。
[PE1-vsi-user_a-ldp] peer 3.3.3.9 pw-id 500
[PE1-vsi-user_a-ldp-3.3.3.9-500] quit
[PE1-vsi-user_a-ldp] peer 4.4.4.9 pw-id 500
[PE1-vsi-user_a-ldp-4.4.4.9-500] quit
[PE1-vsi-user_a-ldp] quit
[PE1-vsi-user_a] quit
# 創建VSI實例user_b,並配置該VSI實例采用LDP信令協議。
[PE1] vsi user_b
[PE1-vsi-user_b] pwsignaling ldp
# 在該VSI實例下配置PE 2和PE 3為遠端PE,並指定PW ID為600。
[PE1-vsi-user_b-ldp] peer 3.3.3.9 pw-id 600
[PE1-vsi-user_b-ldp-3.3.3.9-600] quit
[PE1-vsi-user_b-ldp] peer 4.4.4.9 pw-id 600
[PE1-vsi-user_b-ldp-4.4.4.9-600] quit
[PE1-vsi-user_b-ldp] quit
[PE1-vsi-user_b] quit
· 配置PE 2
# 全局使能MPLS L2VPN。
[PE2] l2vpn enable
# 創建VSI實例user_a,並配置該VSI實例采用LDP信令協議。
[PE2] vsi user_a
[PE2-vsi-user_a] pwsignaling ldp
# 在該VSI實例下配置PE 1和PE 3為遠端PE,並指定PW ID為500。
[PE2-vsi-user_a-ldp] peer 1.1.1.9 pw-id 500
[PE2-vsi-user_a-ldp-1.1.1.9-500] quit
[PE2-vsi-user_a-ldp] peer 4.4.4.9 pw-id 500
[PE2-vsi-user_a-ldp-4.4.4.9-500] quit
[PE2-vsi-user_a-ldp] quit
[PE2-vsi-user_a] quit
# 創建VSI實例user_b,並配置該VSI實例采用LDP信令協議。
[PE2] vsi user_b
[PE2-vsi-user_b] pwsignaling ldp
# 在該VSI實例下配置PE 1和PE 3為遠端PE,並指定PW ID為600。
[PE2-vsi-user_b-ldp] peer 1.1.1.9 pw-id 600
[PE2-vsi-user_b-ldp-1.1.1.9-600] quit
[PE2-vsi-user_b-ldp] peer 4.4.4.9 pw-id 600
[PE2-vsi-user_b-ldp-4.4.4.9-600] quit
[PE2-vsi-user_b-ldp] quit
[PE2-vsi-user_b] quit
· 配置PE 3
# 全局使能MPLS L2VPN。
[PE3] l2vpn enable
# 創建VSI實例user_a,並配置該VSI實例采用LDP信令協議。
[PE3] vsi user_a
[PE3-vsi-user_a] pwsignaling ldp
# 在該VSI實例下配置PE 1和PE 2為遠端PE,並指定PW ID為500。
[PE3-vsi-user_a-ldp] peer 1.1.1.9 pw-id 500
[PE3-vsi-user_a-ldp-1.1.1.9-500] quit
[PE3-vsi-user_a-ldp] peer 3.3.3.9 pw-id 500
[PE3-vsi-user_a-ldp-3.3.3.9-500] quit
[PE3-vsi-user_a-ldp] quit
[PE3-vsi-user_a] quit
# 創建VSI實例user_b,並配置該VSI實例采用LDP信令協議。
[PE3] vsi user_b
[PE3-vsi-user_b] pwsignaling ldp
# 在該VSI實例下配置PE 1和PE 2為遠端PE,並指定PW ID為600。
[PE3-vsi-user_b-ldp] peer 1.1.1.9 pw-id 600
[PE3-vsi-user_b-ldp-1.1.1.9-600] quit
[PE3-vsi-user_b-ldp] peer 3.3.3.9 pw-id 600
[PE3-vsi-user_b-ldp-3.3.3.9-600] quit
[PE3-vsi-user_b-ldp] quit
[PE3-vsi-user_b] quit
· 配置PE 1
# 在接入CE 1的端口Ten-GigabitEthernet1/0/1上創建服務實例100,匹配用戶網絡中VLAN100的報文,並將其與VSI實例“user_a”進行綁定。
[PE1] interface ten-gigabitethernet 1/0/1
[PE1-Ten-GigabitEthernet1/0/1] service-instance 100
[PE1-Ten-GigabitEthernet1/0/1-srv100] encapsulation s-vid 100
[PE1-Ten-GigabitEthernet1/0/1-srv100] xconnect vsi user_a
[PE1-Ten-GigabitEthernet1/0/1-srv100] quit
# 在接入CE 1的端口Ten-GigabitEthernet1/0/1上創建服務實例200,匹配用戶網絡中VLAN200的報文,並將其與VSI實例“user_b”進行綁定。
[PE1-Ten-GigabitEthernet1/0/1] service-instance 200
[PE1-Ten-GigabitEthernet1/0/1-srv200] encapsulation s-vid 200
[PE1-Ten-GigabitEthernet1/0/1-srv200] xconnect vsi user_b
[PE1-Ten-GigabitEthernet1/0/1-srv200] quit
[PE1-Ten-GigabitEthernet1/0/1] quit
· 配置PE 2
# 在接入CE 2的端口Ten-GigabitEthernet1/0/2上創建服務實例100,匹配用戶網絡中VLAN100的報文,並將其與VSI實例“user_a”進行綁定。
[PE2] interface ten-gigabitethernet 1/0/2
[PE2-Ten-GigabitEthernet1/0/2] service-instance 100
[PE2-Ten-GigabitEthernet1/0/2-srv100] encapsulation s-vid 100
[PE2-Ten-GigabitEthernet1/0/2-srv100] xconnect vsi user_a
[PE2-Ten-GigabitEthernet1/0/2-srv100] quit
# 在接入CE 2的端口Ten-GigabitEthernet1/0/2上創建服務實例200,匹配用戶網絡中VLAN200的報文,並將其與VSI實例“user_b”進行綁定。
[PE2-Ten-GigabitEthernet1/0/2] service-instance 200
[PE2-Ten-GigabitEthernet1/0/2-srv200] encapsulation s-vid 200
[PE2-Ten-GigabitEthernet1/0/2-srv200] xconnect vsi user_b
[PE2-Ten-GigabitEthernet1/0/2-srv200] quit
[PE2-Ten-GigabitEthernet1/0/2] quit
· 配置PE 3
# 在接入CE 3的端口Ten-GigabitEthernet1/0/2上創建服務實例100,匹配用戶網絡中VLAN100的報文,並將其與VSI實例“user_a”進行綁定。
[PE3] interface ten-gigabitethernet 1/0/2
[PE3-Ten-GigabitEthernet1/0/2] service-instance 100
[PE3-Ten-GigabitEthernet1/0/2-srv100] encapsulation s-vid 100
[PE3-Ten-GigabitEthernet1/0/2-srv100] xconnect vsi user_a
[PE3-Ten-GigabitEthernet1/0/2-srv100] quit
# 在接入CE 3的端口Ten-GigabitEthernet1/0/2上創建服務實例200,匹配用戶網絡中VLAN200的報文,並將其與VSI實例“user_b”進行綁定。
[PE3-Ten-GigabitEthernet1/0/2] service-instance 200
[PE3-Ten-GigabitEthernet1/0/2-srv200] encapsulation s-vid 200
[PE3-Ten-GigabitEthernet1/0/2-srv200] xconnect vsi user_b
[PE3-Ten-GigabitEthernet1/0/2-srv200] quit
[PE3-Ten-GigabitEthernet1/0/2] quit
# 對於各個CE來說,隻要配置上行到PE的端口允許本站點內的報文攜帶Tag通過即可,這裏以CE 1為例,CE 2和CE 3的配置與CE 1完全相同,這裏不再贅述。
<CE1> system-view
[CE1] vlan 100
[CE1-vlan100] quit
[CE1] vlan 200
[CE1-vlan200] quit
[CE1] interface ten-gigabitethernet 1/0/1
[CE1-Ten-GigabitEthernet1/0/1] port link-type trunk
[CE1-Ten-GigabitEthernet1/0/1] port trunk permit vlan 100 200
# 在MPLS網絡內各設備上執行display mpls ldp lsp命令,可以看到LDP LSP的建立情況。以PE 1為例。
[PE1] display mpls ldp lsp
Status Flags: * - stale, L - liberal
Statistics:
FECs: 4 Ingress LSPs: 3 Transit LSPs: 3 Egress LSPs: 1
FEC In/Out Label Nexthop OutInterface
1.1.1.9/32 3/-
-/1151(L)
-/1151(L)
-/1151(L)
2.2.2.9/32 -/3 10.1.1.2 Vlan2
1151/3 10.1.1.2 Vlan2
-/1150(L)
-/1150(L)
3.3.3.9/32 -/1150 10.1.1.2 Vlan2
1150/1150 10.1.1.2 Vlan2
-/3(L)
-/1149(L)
4.4.4.9/32 -/1149 10.1.1.2 Vlan2
1149/1149 10.1.1.2 Vlan2
-/1149(L)
-/3(L)
# 完成上述配置後,在各個PE上執行display l2vpn pw命令,可以看到建立了PW連接,且狀態為up。以PE 1為例。
[PE1] display l2vpn pw
Flags: M - main, B - backup, H - hub link, S - spoke link, N - no split horizon
Total number of PWs: 4
4 up, 0 blocked, 0 down, 0 defect, 0 idle, 0 duplicate
VSI Name: user_a
Peer PW ID/Rmt Site In/Out Label Proto Flag Link ID State
3.3.3.9 500 131198/131198 LDP M 64 Up
4.4.4.9 500 131199/1150 LDP M 65 Up
VSI Name: user_b
Peer PW ID/Rmt Site In/Out Label Proto Flag Link ID State
3.3.3.9 600 131196/131196 LDP M 64 Up
4.4.4.9 600 131197/1147 LDP M 65 Up
# 檢測相同VLAN內不同站點的主機之間是否可以ping通,如可以ping通,則表示VPLS建立成功。
· PE 1
#
ospf 1
area 0.0.0.0
network 1.1.1.9 0.0.0.0
network 10.1.1.0 0.0.0.255
#
mpls lsr-id 1.1.1.9
#
vlan 2
#
mpls ldp
#
l2vpn enable
#
vsi user_a
pwsignaling ldp
peer 3.3.3.9 pw-id 500
peer 4.4.4.9 pw-id 500
vsi user_b
pwsignaling ldp
peer 3.3.3.9 pw-id 600
peer 4.4.4.9 pw-id 600
#
interface LoopBack0
ip address 1.1.1.9 255.255.255.255
#
interface Vlan-interface2
ip address 10.1.1.1 255.255.255.0
mpls enable
mpls ldp enable
#
interface Ten-GigabitEthernet1/0/1
port link-mode bridge
service-instance 100
encapsulation s-vid 100
xconnect vsi user_a
service-instance 200
encapsulation s-vid 200
xconnect vsi user_b
#
interface Ten-GigabitEthernet1/0/2
port link-mode bridge
port access vlan 2
#
· PE 2
ospf 1
area 0.0.0.0
network 10.1.2.0 0.0.0.255
network 3.3.3.9 0.0.0.0
#
mpls lsr-id 3.3.3.9
#
vlan 3
#
mpls ldp
#
l2vpn enable
#
vsi user_a
pwsignaling ldp
peer 1.1.1.9 pw-id 500
peer 4.4.4.9 pw-id 500
#
vsi user_b
pwsignaling ldp
peer 1.1.1.9 pw-id 600
peer 4.4.4.9 pw-id 600
#
interface LoopBack0
ip address 3.3.3.9 255.255.255.255
#
interface Vlan-interface3
ip address 10.1.2.2 255.255.255.0
mpls enable
mpls ldp enable
#
interface Ten-GigabitEthernet1/0/1
port link-mode bridge
port access vlan 3
#
interface Ten-GigabitEthernet1/0/2
port link-mode bridge
service-instance 100
encapsulation s-vid 100
xconnect vsi user_a
service-instance 200
encapsulation s-vid 200
xconnect vsi user_b
#
· PE 3
#
ospf 1
area 0.0.0.0
network 10.1.3.0 0.0.0.255
network 4.4.4.9 0.0.0.0
#
mpls lsr-id 4.4.4.9
#
vlan 4
#
mpls ldp
#
l2vpn enable
#
vsi user_a
pwsignaling ldp
peer 1.1.1.9 pw-id 500
peer 3.3.3.9 pw-id 500
#
vsi user_b
pwsignaling ldp
peer 1.1.1.9 pw-id 600
peer 3.3.3.9 pw-id 600
#
interface LoopBack0
ip address 4.4.4.9 255.255.255.255
#
interface Vlan-interface4
ip address 10.1.3.2 255.255.255.0
mpls enable
mpls ldp enable
#
interface Ten-GigabitEthernet1/0/1
port link-mode bridge
port access vlan 4
#
interface Ten-GigabitEthernet1/0/2
port link-mode bridge
service-instance 100
encapsulation s-vid 100
xconnect vsi user_a
service-instance 200
encapsulation s-vid 200
xconnect vsi user_b
#
· P
#
ospf 1
area 0.0.0.0
network 10.1.1.0 0.0.0.255
network 10.1.2.0 0.0.0.255
network 10.1.3.0 0.0.0.255
network 2.2.2.9 0.0.0.0
#
mpls lsr-id 2.2.2.9
#
vlan 2 to 4
#
mpls ldp
#
interface LoopBack0
ip address 2.2.2.9 255.255.255.255
#
interface Vlan-interface2
ip address 10.1.1.2 255.255.255.0
mpls enable
mpls ldp enable
#
interface Vlan-interface3
ip address 10.1.2.1 255.255.255.0
mpls enable
mpls ldp enable
#
interface Vlan-interface4
ip address 10.1.3.1 255.255.255.0
mpls enable
mpls ldp enable
#
interface Ten-GigabitEthernet1/0/2
port link-mode bridge
port access vlan 2
#
interface Ten-GigabitEthernet1/0/3
port link-mode bridge
port access vlan 3
#
interface Ten-GigabitEthernet1/0/4
port link-mode bridge
port access vlan 4
#
· CE 1~CE 3
#
vlan 100
#
vlan 200
#
interface Ten-GigabitEthernet1/0/1
port link-mode bridge
port link-type trunk
port trunk permit vlan 100 200
#
如圖2所示,某公司有多個位於不同位置的辦公地點:公司總部和n個分支機構。該公司要求服務提供商提供二層VPN服務,使所有的辦公地點實現二層的互聯,能夠相互共享內部資源。
該公司分支機構較多,但後續不會擴容。為滿足用戶需求且減少配置及維護工作量,可通過部署BGP自動發現LDP信令方式的VPLS技術實現所有用戶站點之間的二層通信。
圖2 配置全連接模型的VPLS組網示意圖(BGP自動發現LDP信令方式)
· 在骨幹網中部署MPLS服務,使用LSP作為公網隧道。
· 在任意兩台PE之間配置並建立BGP發現LDP信令方式的PW,實現PW的全互聯。
· 在PE設備的下行端口上配置服務實例和相應的匹配規則,用來識別用戶網絡中需要使用VPLS隧道進行傳輸的報文。
· 為了實現站點間的VLAN隔離,需要創建VSI實例“user_a”和“user_b”分別於VLAN100和VLAN200的報文綁定。
· 配置PE 1
# 配置環回口地址。
<PE1> system-view
[PE1] interface loopback 0
[PE1-LoopBack0] ip address 1.1.1.9 32
[PE1-LoopBack0] quit
# 創建VLAN2,並將Ten-GigabitEthernet1/0/2端口加入VLAN2。
[PE1] vlan 2
[PE1-vlan2] port ten-gigabitethernet 1/0/2
[PE1-vlan2] quit
# 創建接口Vlan-interface2。
[PE1] interface vlan-interface 2
[PE1-Vlan-interface2] ip address 10.1.1.1 24
[PE1-Vlan-interface2] quit
# 在PE 1上運行OSPF。
[PE1] ospf
[PE1-ospf-1] area 0
[PE1-ospf-1-area-0.0.0.0] network 10.1.1.0 0.0.0.255
[PE1-ospf-1-area-0.0.0.0] network 1.1.1.9 0.0.0.0
[PE1-ospf-1-area-0.0.0.0] quit
[PE1-ospf-1] quit
· 配置PE 2
# 配置環回口地址。
<PE2> system-view
[PE2] interface loopback 0
[PE2-LoopBack0] ip address 3.3.3.9 32
[PE2-LoopBack0] quit
# 創建VLAN3,並將Ten-GigabitEthernet1/0/1端口加入VLAN3。
[PE2] vlan 3
[PE2-vlan3] port ten-gigabitethernet 1/0/1
[PE2-vlan3] quit
# 創建接口Vlan-interface3。
[PE2] interface vlan-interface 3
[PE2-Vlan-interface3] ip address 10.1.2.2 24
[PE2-Vlan-interface3] quit
# 在PE 2上運行OSPF。
[PE2] ospf
[PE2-ospf-1] area 0
[PE2-ospf-1-area-0.0.0.0] network 10.1.2.0 0.0.0.255
[PE2-ospf-1-area-0.0.0.0] network 3.3.3.9 0.0.0.0
[PE2-ospf-1-area-0.0.0.0] quit
[PE2-ospf-1] quit
· 配置PE 3
# 配置環回口地址。
<PE3> system-view
[PE3] interface loopback 0
[PE3-LoopBack0] ip address 4.4.4.9 32
[PE3-LoopBack0] quit
# 創建VLAN4,並將Ten-GigabitEthernet1/0/1端口加入VLAN4。
[PE3] vlan 4
[PE3-vlan4] port ten-gigabitethernet 1/0/1
[PE3-vlan4] quit
# 創建接口Vlan-interface4。
[PE3] interface vlan-interface 4
[PE3-Vlan-interface4] ip address 10.1.3.2 24
[PE3-Vlan-interface4] quit
# 在PE 3上運行OSPF。
[PE3] ospf
[PE3-ospf-1] area 0
[PE3-ospf-1-area-0.0.0.0] network 10.1.3.0 0.0.0.255
[PE3-ospf-1-area-0.0.0.0] network 4.4.4.9 0.0.0.0
[PE3-ospf-1-area-0.0.0.0] quit
[PE3-ospf-1] quit
· 配置P
# 配置環回口地址。
<P> system-view
[P] interface loopback 0
[P-LoopBack0] ip address 2.2.2.9 32
[P-LoopBack0] quit
# 創建VLAN2,將端口Ten-GigabitEthernet1/0/2加入VLAN2。
[P] vlan 2
[P-vlan2] port ten-gigabitethernet 1/0/2
[P-vlan2] quit
# 配置接口Vlan-interface2。
[P] interface vlan-interface 2
[P-Vlan-interface2] ip address 10.1.1.2 24
[P-Vlan-interface2] quit
# 創建VLAN3,將端口Ten-GigabitEthernet1/0/3加入VLAN3。
[P] vlan 3
[P-vlan3] port ten-gigabitethernet 1/0/3
[P-vlan3] quit
# 配置接口Vlan-interface3。
[P] interface vlan-interface 3
[P-Vlan-interface3] ip address 10.1.2.1 24
[P-Vlan-interface3] quit
# 創建VLAN4,將端口Ten-GigabitEthernet1/0/4加入VLAN4。
[P] vlan 4
[P-vlan4] port ten-gigabitethernet 1/0/4
[P-vlan4] quit
# 配置接口Vlan-interface4。
[P] interface vlan-interface 4
[P-Vlan-interface4] ip address 10.1.3.1 24
[P-Vlan-interface4] quit
# 在P上運行OSPF。
[P] ospf
[P-ospf-1] area 0
[P-ospf-1-area-0.0.0.0] network 10.1.1.0 0.0.0.255
[P-ospf-1-area-0.0.0.0] network 10.1.2.0 0.0.0.255
[P-ospf-1-area-0.0.0.0] network 10.1.3.0 0.0.0.255
[P-ospf-1-area-0.0.0.0] network 2.2.2.9 0.0.0.0
[P-ospf-1-area-0.0.0.0] quit
[P-ospf-1] quit
· 配置PE 1
# 配置LSR ID。
[PE1] mpls lsr-id 1.1.1.9
# 全局使能LDP。
[PE1] mpls ldp
[PE1-ldp] quit
# 配置接口Vlan-interface2使能MPLS和LDP。
[PE1] interface vlan-interface 2
[PE1-Vlan-interface2] mpls enable
[PE1-Vlan-interface2] mpls ldp enable
[PE1-Vlan-interface2] quit
· 配置PE 2
# 配置LSR ID。
[PE2] mpls lsr-id 3.3.3.9
# 全局使能LDP。
[PE2] mpls ldp
[PE2-ldp] quit
# 配置接口Vlan-interface3使能MPLS和LDP。
[PE2] interface vlan-interface 3
[PE2-Vlan-interface3] mpls enable
[PE2-Vlan-interface3] mpls ldp enable
[PE2-Vlan-interface3] quit
· 配置PE 3
# 配置LSR ID。
[PE3] mpls lsr-id 4.4.4.9
# 全局使能LDP。
[PE3] mpls ldp
[PE3-ldp] quit
# 配置接口Vlan-interface4使能MPLS和LDP。
[PE3] interface vlan-interface 4
[PE3-Vlan-interface4] mpls enable
[PE3-Vlan-interface4] mpls ldp enable
[PE3-Vlan-interface4] quit
· 配置P
# 配置LSR ID。
[P] mpls lsr-id 2.2.2.9
# 全局使能LDP。
[P] mpls ldp
[P-ldp] quit
# 配置接口Vlan-interface2使能MPLS和LDP。
[P] interface vlan-interface 2
[P-Vlan-interface2] mpls enable
[P-Vlan-interface2] mpls ldp enable
[P-Vlan-interface2] quit
# 配置接口Vlan-interface3,使能MPLS和LDP。
[P] interface vlan-interface 3
[P-Vlan-interface3] mpls enable
[P-Vlan-interface3] mpls ldp enable
[P-Vlan-interface3] quit
# 配置接口Vlan-interface4,使能MPLS和LDP。
[P] interface vlan-interface 4
[P-Vlan-interface4] mpls enable
[P-Vlan-interface4] mpls ldp enable
[P-Vlan-interface4] quit
· 配置PE 1
# 與PE 2、PE 3分別建立IBGP連接。
[PE1] bgp 100
[PE1-bgp] peer 3.3.3.9 as-number 100
[PE1-bgp] peer 3.3.3.9 connect-interface loopback 0
[PE1-bgp] peer 4.4.4.9 as-number 100
[PE1-bgp] peer 4.4.4.9 connect-interface loopback 0
# 使能在PE之間交換BGP L2VPN信息的能力。
[PE1-bgp] address-family l2vpn
[PE1-bgp-l2vpn] peer 3.3.3.9 enable
[PE1-bgp-l2vpn] peer 4.4.4.9 enable
[PE1-bgp-l2vpn] quit
[PE1-bgp] quit
# 全局使能MPLS L2VPN。
[PE1] l2vpn enable
# 創建VSI實例user_a,並配置該VSI實例采用BGP方式自動發現鄰居。
[PE1] vsi user_a
[PE1-vsi-user_a] auto-discovery bgp
# 配置該VSI實例的RD和Route Target屬性,用以區分其它VSI實例。
[PE1-vsi-user_a-auto] route-distinguisher 100:1
[PE1-vsi-user_a-auto] vpn-target 111:1
# 配置通過BGP自動發現遠端PE後,采用LDP信令協議與該PE建立PW。
[PE1-vsi-user_a-auto] signaling-protocol ldp
# 配置該VSI實例的VPLS ID為100:100。
[PE1-vsi-user_a-auto-ldp] vpls-id 100:100
[PE1-vsi-user_a-auto-ldp] quit
[PE1-vsi-user_a-auto] quit
[PE1-vsi-user_a] quit
# 創建VSI實例user_b,並配置該VSI實例采用BGP方式自動發現鄰居。
[PE1] vsi user_b
[PE1-vsi-user_b] auto-discovery bgp
# 配置該VSI實例的RD和Route Target屬性,用以區分其它VSI實例。
[PE1-vsi-user_b-auto] route-distinguisher 200:1
[PE1-vsi-user_b-auto] vpn-target 222:1
# 配置通過BGP自動發現遠端PE後,采用LDP信令協議與該PE建立PW。
[PE1-vsi-user_b-auto] signaling-protocol ldp
# 配置該VSI實例的VPLS ID為200:200。
[PE1-vsi-user_b-auto-ldp] vpls-id 200:200
[PE1-vsi-user_b-auto-ldp] quit
[PE1-vsi-user_b-auto] quit
[PE1-vsi-user_b] quit
· 配置PE 2
# 與PE 1、PE 3分別建立IBGP連接。
[PE2] bgp 100
[PE2-bgp] peer 1.1.1.9 as-number 100
[PE2-bgp] peer 1.1.1.9 connect-interface loopback 0
[PE2-bgp] peer 4.4.4.9 as-number 100
[PE2-bgp] peer 4.4.4.9 connect-interface loopback 0
# 使能在PE之間交換BGP L2VPN信息的能力。
[PE2-bgp] address-family l2vpn
[PE2-bgp-l2vpn] peer 1.1.1.9 enable
[PE2-bgp-l2vpn] peer 4.4.4.9 enable
[PE2-bgp-l2vpn] quit
[PE2-bgp] quit
# 全局使能MPLS L2VPN。
[PE2] l2vpn enable
# 創建VSI實例user_a,並配置該VSI實例采用BGP方式自動發現鄰居。
[PE2] vsi user_a
[PE2-vsi-user_a] auto-discovery bgp
# 配置該VSI實例的RD和Route Target屬性,用以區分其它VSI實例。
[PE2-vsi-user_a-auto] route-distinguisher 100:1
[PE2-vsi-user_a-auto] vpn-target 111:1
# 配置通過BGP自動發現遠端PE後,采用LDP信令協議與該PE建立PW。
[PE2-vsi-user_a-auto] signaling-protocol ldp
# 配置該VSI實例的VPLS ID為100:100。
[PE2-vsi-user_a-auto-ldp] vpls-id 100:100
[PE2-vsi-user_a-auto-ldp] quit
[PE2-vsi-user_a-auto] quit
[PE2-vsi-user_a] quit
# 創建VSI實例user_b,並配置該VSI實例采用BGP方式自動發現鄰居。
[PE2] vsi user_b
[PE2-vsi-user_b] auto-discovery bgp
# 配置該VSI實例的RD和Route Target屬性,用以區分其它VSI實例。
[PE2-vsi-user_b-auto] route-distinguisher 200:1
[PE2-vsi-user_b-auto] vpn-target 222:1
# 配置通過BGP自動發現遠端PE後,采用LDP信令協議與該PE建立PW。
[PE2-vsi-user_b-auto] signaling-protocol ldp
# 配置該VSI實例的VPLS ID為200:200。
[PE2-vsi-user_b-auto-ldp] vpls-id 200:200
[PE2-vsi-user_b-auto-ldp] quit
[PE2-vsi-user_b-auto] quit
[PE2-vsi-user_b] quit
· 配置PE 3
# 與PE 1、PE 2分別建立IBGP連接。
[PE3] bgp 100
[PE3-bgp] peer 1.1.1.9 as-number 100
[PE3-bgp] peer 1.1.1.9 connect-interface loopback 0
[PE3-bgp] peer 3.3.3.9 as-number 100
[PE3-bgp] peer 3.3.3.9 connect-interface loopback 0
# 使能在PE之間交換BGP L2VPN信息的能力。
[PE3-bgp] address-family l2vpn
[PE3-bgp-l2vpn] peer 1.1.1.9 enable
[PE3-bgp-l2vpn] peer 3.3.3.9 enable
[PE3-bgp-l2vpn] quit
[PE3-bgp] quit
# 全局使能MPLS L2VPN。
[PE3] l2vpn enable
# 創建VSI實例user_a,並配置該VSI實例采用BGP方式自動發現鄰居。
[PE3] vsi user_a
[PE3-vsi-user_a] auto-discovery bgp
# 配置該VSI實例的RD和Route Target屬性,用以區分其它VSI實例。
[PE3-vsi-user_a-auto] route-distinguisher 100:1
[PE3-vsi-user_a-auto] vpn-target 111:1
# 配置通過BGP自動發現遠端PE後,采用LDP信令協議與該PE建立PW。
[PE3-vsi-user_a-auto] signaling-protocol ldp
# 配置該VSI實例的VPLS ID為100:100。
[PE3-vsi-user_a-auto-ldp] vpls-id 100:100
[PE3-vsi-user_a-auto-ldp] quit
[PE3-vsi-user_a-auto] quit
[PE3-vsi-user_a] quit
# 創建VSI實例user_b,並配置該VSI實例采用BGP方式自動發現鄰居。
[PE3] vsi user_b
[PE3-vsi-user_b] auto-discovery bgp
# 配置該VSI實例的RD和Route Target屬性,用以區分其它VSI實例。
[PE3-vsi-user_b-auto] route-distinguisher 200:1
[PE3-vsi-user_b-auto] vpn-target 222:1
# 配置通過BGP自動發現遠端PE後,采用LDP信令協議與該PE建立PW。
[PE3-vsi-user_b-auto] signaling-protocol ldp
# 配置該VSI實例的VPLS ID為200:200。
[PE3-vsi-user_b-auto-ldp] vpls-id 200:200
[PE3-vsi-user_b-auto-ldp] quit
[PE3-vsi-user_b-auto] quit
[PE3-vsi-user_b] quit
· 配置PE 1
# 在接入CE 1的端口Ten-GigabitEthernet1/0/1上創建服務實例100,匹配用戶網絡中VLAN100的報文,並將其與VSI實例“user_a”進行綁定。
[PE1] interface ten-gigabitethernet 1/0/1
[PE1-Ten-GigabitEthernet1/0/1] service-instance 100
[PE1-Ten-GigabitEthernet1/0/1-srv100] encapsulation s-vid 100
[PE1-Ten-GigabitEthernet1/0/1-srv100] xconnect vsi user_a
[PE1-Ten-GigabitEthernet1/0/1-srv100] quit
# 在接入CE 1的端口Ten-GigabitEthernet1/0/1上創建服務實例200,匹配用戶網絡中VLAN200的報文,並將其與VSI實例“user_b”進行綁定。
[PE1-Ten-GigabitEthernet1/0/1] service-instance 200
[PE1-Ten-GigabitEthernet1/0/1-srv200] encapsulation s-vid 200
[PE1-Ten-GigabitEthernet1/0/1-srv200] xconnect vsi user_b
[PE1-Ten-GigabitEthernet1/0/1-srv200] quit
[PE1-Ten-GigabitEthernet1/0/1] quit
· 配置PE 2
# 在接入CE 2的端口Ten-GigabitEthernet1/0/2上創建服務實例100,匹配用戶網絡中VLAN100的報文,並將其與VSI實例“user_a”進行綁定。
[PE2] interface ten-gigabitethernet 1/0/2
[PE2-Ten-GigabitEthernet1/0/2] service-instance 100
[PE2-Ten-GigabitEthernet1/0/2-srv100] encapsulation s-vid 100
[PE2-Ten-GigabitEthernet1/0/2-srv100] xconnect vsi user_a
[PE2-Ten-GigabitEthernet1/0/2-srv100] quit
# 在接入CE 2的端口Ten-GigabitEthernet1/0/2上創建服務實例200,匹配用戶網絡中VLAN200的報文,並將其與VSI實例“user_b”進行綁定。
[PE2-Ten-GigabitEthernet1/0/2] service-instance 200
[PE2-Ten-GigabitEthernet1/0/2-srv200] encapsulation s-vid 200
[PE2-Ten-GigabitEthernet1/0/2-srv200] xconnect vsi user_b
[PE2-Ten-GigabitEthernet1/0/2-srv200] quit
[PE2-Ten-GigabitEthernet1/0/2] quit
· 配置PE 3
# 在接入CE 3的端口Ten-GigabitEthernet1/0/2上創建服務實例100,匹配用戶網絡中VLAN100的報文,並將其與VSI實例“user_a”進行綁定。
[PE3] interface ten-gigabitethernet 1/0/2
[PE3-Ten-GigabitEthernet1/0/2] service-instance 100
[PE3-Ten-GigabitEthernet1/0/2-srv100] encapsulation s-vid 100
[PE3-Ten-GigabitEthernet1/0/2-srv100] xconnect vsi user_a
[PE3-Ten-GigabitEthernet1/0/2-srv100] quit
# 在接入CE 3的端口Ten-GigabitEthernet1/0/2上創建服務實例200,匹配用戶網絡中VLAN200的報文,並將其與VSI實例“user_b”進行綁定。
[PE3-Ten-GigabitEthernet1/0/2] service-instance 200
[PE3-Ten-GigabitEthernet1/0/2-srv200] encapsulation s-vid 200
[PE3-Ten-GigabitEthernet1/0/2-srv200] xconnect vsi user_b
[PE3-Ten-GigabitEthernet1/0/2-srv200] quit
[PE3-Ten-GigabitEthernet1/0/2] quit
# 接入其它CE的端口上的配置與Ten-GigabitEthernet1/0/2上的配置類似,這裏不再贅述。
# 對於各個CE來說,隻要配置上行到PE的端口允許本站點內的報文攜帶Tag通過即可,這裏以CE 1為例,其它CE的配置與CE 1完全相同,這裏不再贅述。
<CE1> system-view
[CE1] vlan 100
[CE1-vlan100] quit
[CE1] vlan 200
[CE1-vlan200] quit
[CE1] interface ten-gigabitethernet 1/0/1
[CE1-Ten-GigabitEthernet1/0/1] port link-type trunk
[CE1-Ten-GigabitEthernet1/0/1] port trunk permit vlan 100 200
# 在MPLS網絡內各設備上執行display mpls ldp lsp命令,可以看到LDP LSP的建立情況。以PE 1為例。
[PE1] display mpls ldp lsp
Status Flags: * - stale, L - liberal
Statistics:
FECs: 4 Ingress LSPs: 3 Transit LSPs: 3 Egress LSPs: 1
FEC In/Out Label Nexthop OutInterface
1.1.1.9/32 3/-
-/1148(L)
-/1151(L)
-/1151(L)
2.2.2.9/32 -/3 10.1.1.2 Vlan2
1151/3 10.1.1.2 Vlan2
-/1150(L)
-/1150(L)
3.3.3.9/32 -/1146 10.1.1.2 Vlan2
1149/1146 10.1.1.2 Vlan2
-/1149(L)
-/3(L)
4.4.4.9/32 -/1147 10.1.1.2 Vlan2
1150/1147 10.1.1.2 Vlan2
-/3(L)
-/1149(L)
# 完成上述配置後,在各個PE上執行display l2vpn pw命令,可以看到建立了PW連接,且狀態為up。以PE 1為例。
[PE1] display l2vpn pw
Flags: M - main, B - backup, H - hub link, S - spoke link, N - no split horizon
Total number of PWs: 4
4 up, 0 blocked, 0 down, 0 defect, 0 idle, 0 duplicate
VSI Name: user_a
Peer PW ID/Rmt Site In/Out Label Proto Flag Link ID State
3.3.3.9 - 131195/131195 LDP M 64 Up
4.4.4.9 - 131194/1145 LDP M 65 Up
VSI Name: user_b
Peer PW ID/Rmt Site In/Out Label Proto Flag Link ID State
4.4.4.9 - 131193/1143 LDP M 64 Up
3.3.3.9 - 131192/131192 LDP M 65 Up
# 檢測相同VLAN內不同站點的主機之間是否可以ping通,如可以ping通,則表示VPLS建立成功。
· PE 1
#
ospf 1
area 0.0.0.0
network 1.1.1.9 0.0.0.0
network 10.1.1.0 0.0.0.255
#
mpls lsr-id 1.1.1.9
#
vlan 2
#
mpls ldp
#
l2vpn enable
#
vsi user_a
auto-discovery bgp
route-distinguisher 100:1
vpn-target 111:1 export-extcommunity
vpn-target 111:1 import-extcommunity
signaling-protocol ldp
vpls-id 100:100
#
vsi user_b
auto-discovery bgp
route-distinguisher 200:1
vpn-target 222:1 export-extcommunity
vpn-target 222:1 import-extcommunity
signaling-protocol ldp
vpls-id 200:200
#
interface LoopBack0
ip address 1.1.1.9 255.255.255.255
#
interface Vlan-interface2
ip address 10.1.1.1 255.255.255.0
mpls enable
mpls ldp enable
#
interface Ten-GigabitEthernet1/0/1
port link-mode bridge
service-instance 100
encapsulation s-vid 100
xconnect vsi user_a
service-instance 200
encapsulation s-vid 200
xconnect vsi user_b
#
interface Ten-GigabitEthernet1/0/2
port link-mode bridge
port access vlan 2
#
bgp 100
peer 3.3.3.9 as-number 100
peer 3.3.3.9 connect-interface LoopBack0
peer 4.4.4.9 as-number 100
peer 4.4.4.9 connect-interface LoopBack0
#
address-family l2vpn
peer 3.3.3.9 enable
peer 4.4.4.9 enable
#
· PE 2
#
ospf 1
area 0.0.0.0
network 10.1.2.0 0.0.0.255
network 3.3.3.9 0.0.0.0
#
mpls lsr-id 3.3.3.9
#
vlan 3
#
mpls ldp
#
l2vpn enable
#
vsi user_a
auto-discovery bgp
route-distinguisher 100:1
vpn-target 111:1 export-extcommunity
vpn-target 111:1 import-extcommunity
signaling-protocol ldp
vpls-id 100:100
#
vsi user_b
auto-discovery bgp
route-distinguisher 200:1
vpn-target 222:1 export-extcommunity
vpn-target 222:1 import-extcommunity
signaling-protocol ldp
vpls-id 200:200
#
interface LoopBack0
ip address 3.3.3.9 255.255.255.255
#
interface Vlan-interface3
ip address 10.1.2.2 255.255.255.0
mpls enable
mpls ldp enable
#
interface Ten-GigabitEthernet1/0/1
port link-mode bridge
port access vlan 3
#
interface Ten-GigabitEthernet1/0/2
port link-mode bridge
service-instance 100
encapsulation s-vid 100
xconnect vsi user_a
service-instance 200
encapsulation s-vid 200
xconnect vsi user_b
#
bgp 100
peer 1.1.1.9 as-number 100
peer 1.1.1.9 connect-interface LoopBack0
peer 4.4.4.9 as-number 100
peer 4.4.4.9 connect-interface LoopBack0
#
address-family l2vpn
peer 1.1.1.9 enable
peer 4.4.4.9 enable
#
· PE 3
#
ospf 1
area 0.0.0.0
network 10.1.3.0 0.0.0.255
network 4.4.4.9 0.0.0.0
#
mpls lsr-id 4.4.4.9
#
vlan 4
#
mpls ldp
#
l2vpn enable
#
vsi user_a
auto-discovery bgp
route-distinguisher 100:1
vpn-target 111:1 export-extcommunity
vpn-target 111:1 import-extcommunity
signaling-protocol ldp
vpls-id 100:100
#
vsi user_b
auto-discovery bgp
route-distinguisher 200:1
vpn-target 222:1 export-extcommunity
vpn-target 222:1 import-extcommunity
signaling-protocol ldp
vpls-id 200:200
#
interface LoopBack0
ip address 4.4.4.9 255.255.255.255
#
interface Vlan-interface4
ip address 10.1.3.2 255.255.255.0
mpls enable
mpls ldp enable
#
interface Ten-GigabitEthernet1/0/1
port link-mode bridge
port access vlan 4
#
interface Ten-GigabitEthernet1/0/2
port link-mode bridge
service-instance 100
encapsulation s-vid 100
xconnect vsi user_a
service-instance 200
encapsulation s-vid 200
xconnect vsi user_b
#
bgp 100
peer 1.1.1.9 as-number 100
peer 1.1.1.9 connect-interface LoopBack0
peer 3.3.3.9 as-number 100
peer 3.3.3.9 connect-interface LoopBack0
#
address-family l2vpn
peer 1.1.1.9 enable
peer 3.3.3.9 enable
#
· P
#
ospf 1
area 0.0.0.0
network 10.1.1.0 0.0.0.255
network 10.1.2.0 0.0.0.255
network 10.1.3.0 0.0.0.255
network 2.2.2.9 0.0.0.0
#
mpls lsr-id 2.2.2.9
#
vlan 2 to 4
#
mpls ldp
#
interface LoopBack0
ip address 2.2.2.9 255.255.255.255
#
interface Vlan-interface2
ip address 10.1.1.2 255.255.255.0
mpls enable
mpls ldp enable
#
interface Vlan-interface3
ip address 10.1.2.1 255.255.255.0
mpls enable
mpls ldp enable
#
interface Vlan-interface4
ip address 10.1.3.1 255.255.255.0
mpls enable
mpls ldp enable
#
interface Ten-GigabitEthernet1/0/2
port link-mode bridge
port access vlan 2
#
interface Ten-GigabitEthernet1/0/3
port link-mode bridge
port access vlan 3
#
interface Ten-GigabitEthernet1/0/4
port link-mode bridge
port access vlan 4
#
· CE 1~CE n
#
vlan 100
#
vlan 200
#
interface Ten-GigabitEthernet1/0/1
port link-mode bridge
port link-type trunk
port trunk permit vlan 100 200
#
如圖3所示,某公司正在搭建數據中心,目前已搭建了10個數據中心且分別位於不同的地理位置,後續還會計劃增加15個數據中心。該公司要求服務提供商提供二層VPN的服務,使所有的數據中心能夠實現二層互聯,共享數據資源。
該公司的數據中心站點較多,且有大規模擴容的需求,為滿足用戶需求,需要部署BGP方式的VPLS服務。
圖3 配置全連接模型的VPLS組網示意圖(BGP方式)
· 在骨幹網中部署MPLS服務,使用LSP作為公網隧道。
· 在PE設備上部署BGP方式的VPLS服務,通過配置標簽塊滿足擴容需求。
· 為了實現站點間的VLAN隔離,需要創建VSI實例“user_a”和“user_b”分別於VLAN100和VLAN200的報文綁定。
· 配置PE 1
# 配置環回口地址。
<PE1> system-view
[PE1] interface loopback 0
[PE1-LoopBack0] ip address 1.1.1.9 32
[PE1-LoopBack0] quit
# 創建VLAN2,並將Ten-GigabitEthernet1/0/2端口加入VLAN2。
[PE1] vlan 2
[PE1-vlan2] port ten-gigabitethernet 1/0/2
[PE1-vlan2] quit
# 創建接口Vlan-interface2。
[PE1] interface vlan-interface 2
[PE1-Vlan-interface2] ip address 10.1.1.1 24
[PE1-Vlan-interface2] quit
# 在PE 1上運行OSPF。
[PE1] ospf
[PE1-ospf-1] area 0
[PE1-ospf-1-area-0.0.0.0] network 10.1.1.0 0.0.0.255
[PE1-ospf-1-area-0.0.0.0] network 1.1.1.9 0.0.0.0
[PE1-ospf-1-area-0.0.0.0] quit
[PE1-ospf-1] quit
· 配置PE 2
# 配置環回口地址。
<PE2> system-view
[PE2] interface loopback 0
[PE2-LoopBack0] ip address 3.3.3.9 32
[PE2-LoopBack0] quit
# 創建VLAN3,並將Ten-GigabitEthernet1/0/1端口加入VLAN3。
[PE2] vlan 3
[PE2-vlan3] port ten-gigabitethernet 1/0/1
[PE2-vlan3] quit
# 創建接口Vlan-interface3。
[PE2] interface vlan-interface 3
[PE2-Vlan-interface3] ip address 10.1.2.2 24
[PE2-Vlan-interface3] quit
# 在PE 2上運行OSPF。
[PE2] ospf
[PE2-ospf-1] area 0
[PE2-ospf-1-area-0.0.0.0] network 10.1.2.0 0.0.0.255
[PE2-ospf-1-area-0.0.0.0] network 3.3.3.9 0.0.0.0
[PE2-ospf-1-area-0.0.0.0] quit
[PE2-ospf-1] quit
· 配置PE 3
# 配置環回口地址。
<PE3> system-view
[PE3] interface loopback 0
[PE3-LoopBack0] ip address 4.4.4.9 32
[PE3-LoopBack0] quit
# 創建VLAN4,並將Ten-GigabitEthernet1/0/1端口加入VLAN4。
[PE3] vlan 4
[PE3-vlan4] port ten-gigabitethernet 1/0/1
[PE3-vlan4] quit
# 創建接口Vlan-interface4。
[PE3] interface vlan-interface 4
[PE3-Vlan-interface4] ip address 10.1.3.2 24
[PE3-Vlan-interface4] quit
# 在PE 3上運行OSPF。
[PE3] ospf
[PE3-ospf-1] area 0
[PE3-ospf-1-area-0.0.0.0] network 10.1.3.0 0.0.0.255
[PE3-ospf-1-area-0.0.0.0] network 4.4.4.9 0.0.0.0
[PE3-ospf-1-area-0.0.0.0] quit
[PE3-ospf-1] quit
· 配置P
# 配置環回口地址。
<P> system-view
[P] interface loopback 0
[P-LoopBack0] ip address 2.2.2.9 32
[P-LoopBack0] quit
# 創建VLAN2,將端口Ten-GigabitEthernet1/0/2加入VLAN2。
[P] vlan 2
[P-vlan2] port ten-gigabitethernet 1/0/2
[P-vlan2] quit
# 配置接口Vlan-interface2。
[P] interface vlan-interface 2
[P-Vlan-interface2] ip address 10.1.1.2 24
[P-Vlan-interface2] quit
# 創建VLAN3,將端口Ten-GigabitEthernet1/0/3加入VLAN3。
[P] vlan 3
[P-vlan3] port ten-gigabitethernet 1/0/3
[P-vlan3] quit
# 配置接口Vlan-interface3。
[P] interface vlan-interface 3
[P-Vlan-interface3] ip address 10.1.2.1 24
[P-Vlan-interface3] quit
# 創建VLAN4,將端口Ten-GigabitEthernet1/0/4加入VLAN4。
[P] vlan 4
[P-vlan4] port ten-gigabitethernet 1/0/4
[P-vlan4] quit
# 配置接口Vlan-interface4。
[P] interface vlan-interface 4
[P-Vlan-interface4] ip address 10.1.3.1 24
[P-Vlan-interface4] quit
# 在P上運行OSPF。
[P] ospf
[P-ospf-1] area 0
[P-ospf-1-area-0.0.0.0] network 10.1.1.0 0.0.0.255
[P-ospf-1-area-0.0.0.0] network 10.1.2.0 0.0.0.255
[P-ospf-1-area-0.0.0.0] network 10.1.3.0 0.0.0.255
[P-ospf-1-area-0.0.0.0] network 2.2.2.9 0.0.0.0
[P-ospf-1-area-0.0.0.0] quit
[P-ospf-1] quit
· 配置PE 1
# 配置LSR ID。
[PE1] mpls lsr-id 1.1.1.9
# 全局使能LDP。
[PE1] mpls ldp
[PE1-ldp] quit
# 配置接口Vlan-interface2使能MPLS和LDP。
[PE1] interface vlan-interface 2
[PE1-Vlan-interface2] mpls enable
[PE1-Vlan-interface2] mpls ldp enable
[PE1-Vlan-interface2] quit
· 配置PE 2
# 配置LSR ID。
[PE2] mpls lsr-id 3.3.3.9
# 全局使能LDP。
[PE2] mpls ldp
[PE2-ldp] quit
# 配置接口Vlan-interface3使能MPLS和LDP。
[PE2] interface vlan-interface 3
[PE2-Vlan-interface3] mpls enable
[PE2-Vlan-interface3] mpls ldp enable
[PE2-Vlan-interface3] quit
· 配置PE 3
# 配置LSR ID。
[PE3] mpls lsr-id 4.4.4.9
# 全局使能LDP。
[PE3] mpls ldp
[PE3-ldp] quit
# 配置接口Vlan-interface4使能MPLS和LDP。
[PE3] interface vlan-interface 4
[PE3-Vlan-interface4] mpls enable
[PE3-Vlan-interface4] mpls ldp enable
[PE3-Vlan-interface4] quit
· 配置P
# 配置LSR ID。
[P] mpls lsr-id 2.2.2.9
# 全局使能LDP。
[P] mpls ldp
[P-ldp] quit
# 配置接口Vlan-interface2使能MPLS和LDP。
[P] interface vlan-interface 2
[P-Vlan-interface2] mpls enable
[P-Vlan-interface2] mpls ldp enable
[P-Vlan-interface2] quit
# 配置接口Vlan-interface3使能MPLS和LDP。
[P] interface vlan-interface 3
[P-Vlan-interface3] mpls enable
[P-Vlan-interface3] mpls ldp enable
[P-Vlan-interface3] quit
# 配置接口Vlan-interface4使能MPLS和LDP。
[P] interface vlan-interface 4
[P-Vlan-interface4] mpls enable
[P-Vlan-interface4] mpls ldp enable
[P-Vlan-interface4] quit
· 配置PE 1
# 與PE 2、PE 3分別建立IBGP連接。
[PE1] bgp 100
[PE1-bgp] peer 3.3.3.9 as-number 100
[PE1-bgp] peer 3.3.3.9 connect-interface loopback 0
[PE1-bgp] peer 4.4.4.9 as-number 100
[PE1-bgp] peer 4.4.4.9 connect-interface loopback 0
# 使能在PE之間交換BGP L2VPN信息的能力。
[PE1-bgp] address-family l2vpn
[PE1-bgp-l2vpn] peer 3.3.3.9 enable
[PE1-bgp-l2vpn] peer 4.4.4.9 enable
[PE1-bgp-l2vpn] quit
[PE1-bgp] quit
# 全局使能MPLS L2VPN。
[PE1] l2vpn enable
# 創建VSI實例user_a,並配置該VSI實例采用BGP方式自動發現鄰居。
[PE1] vsi user_a
[PE1-vsi-user_a] auto-discovery bgp
# 配置該VSI實例的RD和Route Target屬性,用以區分其它VSI實例。
[PE1-vsi-user_a-auto] route-distinguisher 100:1
[PE1-vsi-user_a-auto] vpn-target 111:1
# 配置通過BGP自動發現遠端PE後,采用BGP信令協議與該PE建立PW。
[PE1-vsi-user_a-auto] signaling-protocol bgp
# 配置PE 1在該實例中的站點編號(以1為例),以及在該實例中能夠建立連接的PE數量(目前網絡中有10個站點且後續計劃再增加15個站點,這裏取值應為25)。
[PE1-vsi-user_a-auto-bgp] site 1 range 25
[PE1-vsi-user_a-auto-bgp] quit
[PE1-vsi-user_a-auto] quit
[PE1-vsi-user_a] quit
# 創建VSI實例user_b,並配置該VSI實例采用BGP方式自動發現鄰居。
[PE1] vsi user_b
[PE1-vsi-user_b] auto-discovery bgp
# 配置該VSI實例的RD和Route Target屬性,用以區分其它VSI實例。
[PE1-vsi-user_b-auto] route-distinguisher 200:1
[PE1-vsi-user_b-auto] vpn-target 222:1
# 配置通過BGP自動發現遠端PE後,采用BGP信令協議與該PE建立PW。
[PE1-vsi-user_b-auto] signaling-protocol bgp
# 配置PE 1在該實例中的站點編號(以1為例),以及在該實例中能夠建立連接的PE數量(目前網絡中有10個站點且後續計劃再增加15個站點,這裏取值應為25)。
[PE1-vsi-user_b-auto-bgp] site 1 range 25
[PE1-vsi-user_b-auto-bgp] quit
[PE1-vsi-user_b-auto] quit
[PE1-vsi-user_b] quit
· 配置PE 2
# 與PE 1、PE 3分別建立IBGP連接。
[PE2] bgp 100
[PE2-bgp] peer 1.1.1.9 as-number 100
[PE2-bgp] peer 1.1.1.9 connect-interface loopback 0
[PE2-bgp] peer 4.4.4.9 as-number 100
[PE2-bgp] peer 4.4.4.9 connect-interface loopback 0
# 使能在PE之間交換BGP L2VPN信息的能力。
[PE2-bgp] address-family l2vpn
[PE2-bgp-l2vpn] peer 1.1.1.9 enable
[PE2-bgp-l2vpn] peer 4.4.4.9 enable
[PE2-bgp-l2vpn] quit
[PE2-bgp] quit
# 全局使能MPLS L2VPN。
[PE2] l2vpn enable
# 創建VSI實例user_a,並配置該VSI實例采用BGP方式自動發現鄰居。
[PE2] vsi user_a
[PE2-vsi-user_a] auto-discovery bgp
# 配置該VSI實例的RD和Route Target屬性,用以區分其它VSI實例。
[PE2-vsi-user_a-auto] route-distinguisher 100:1
[PE2-vsi-user_a-auto] vpn-target 111:1
# 配置通過BGP自動發現遠端PE後,采用BGP信令協議與該PE建立PW。
[PE2-vsi-user_a-auto] signaling-protocol bgp
# 配置PE 2在該實例中的站點編號(以2為例),以及在該實例中能夠建立連接的PE數量(目前網絡中有10個站點且後續計劃再增加15個站點,這裏取值應為25)。
[PE2-vsi-user_a-auto-bgp] site 2 range 25
[PE2-vsi-user_a-auto-bgp] quit
[PE2-vsi-user_a-auto] quit
[PE2-vsi-user_a] quit
# 創建VSI實例user_b,並配置該VSI實例采用BGP方式自動發現鄰居。
[PE2] vsi user_b
[PE2-vsi-user_b] auto-discovery bgp
# 配置該VSI實例的RD和Route Target屬性,用以區分其它VSI實例。
[PE2-vsi-user_b-auto] route-distinguisher 200:1
[PE2-vsi-user_b-auto] vpn-target 222:1
# 配置通過BGP自動發現遠端PE後,采用BGP信令協議與該PE建立PW。
[PE2-vsi-user_b-auto] signaling-protocol bgp
# 配置PE 2在該實例中的站點編號(以2為例),以及在該實例中能夠建立連接的PE數量(目前網絡中有10個站點且後續計劃再增加15個站點,這裏取值應為25)。
[PE2-vsi-user_b-auto-bgp] site 2 range 25
[PE2-vsi-user_b-auto-bgp] quit
[PE2-vsi-user_b-auto] quit
[PE2-vsi-user_b] quit
· 配置PE 3
# 與PE 1、PE 2分別建立IBGP連接。
[PE3] bgp 100
[PE3-bgp] peer 1.1.1.9 as-number 100
[PE3-bgp] peer 1.1.1.9 connect-interface loopback 0
[PE3-bgp] peer 3.3.3.9 as-number 100
[PE3-bgp] peer 3.3.3.9 connect-interface loopback 0
# 使能在PE之間交換BGP L2VPN信息的能力。
[PE3-bgp] address-family l2vpn
[PE3-bgp-l2vpn] peer 1.1.1.9 enable
[PE3-bgp-l2vpn] peer 3.3.3.9 enable
[PE3-bgp-l2vpn] quit
[PE3-bgp] quit
# 全局使能MPLS L2VPN。
[PE3] l2vpn enable
# 創建VSI實例user_a,並配置該VSI實例采用BGP方式自動發現鄰居。
[PE3] vsi user_a
[PE3-vsi-user_a] auto-discovery bgp
# 配置該VSI實例的RD和Route Target屬性,用以區分其它VSI實例。
[PE3-vsi-user_a-auto] route-distinguisher 100:1
[PE3-vsi-user_a-auto] vpn-target 111:1
# 配置通過BGP自動發現遠端PE後,采用BGP信令協議與該PE建立PW。
[PE3-vsi-user_a-auto] signaling-protocol bgp
# 配置PE 3在該實例中的站點編號(以3為例),以及在該實例中能夠建立連接的PE數量(目前網絡中有10個站點且後續計劃再增加15個站點,這裏取值應為25)。
[PE3-vsi-user_a-auto-bgp] site 3 range 25
[PE3-vsi-user_a-auto-bgp] quit
[PE3-vsi-user_a-auto] quit
[PE3-vsi-user_a] quit
# 創建VSI實例user_b,並配置該VSI實例采用BGP方式自動發現鄰居。
[PE3] vsi user_b
[PE3-vsi-user_b] auto-discovery bgp
# 配置該VSI實例的RD和Route Target屬性,用以區分其它VSI實例。
[PE3-vsi-user_b-auto] route-distinguisher 200:1
[PE3-vsi-user_b-auto] vpn-target 222:1
# 配置通過BGP自動發現遠端PE後,采用BGP信令協議與該PE建立PW。
[PE3-vsi-user_b-auto] signaling-protocol bgp
# 配置PE 3在該實例中的站點編號(以3為例),以及在該實例中能夠建立連接的PE數量(目前網絡中有10個站點且後續計劃再增加15個站點,這裏取值應為25)。
[PE3-vsi-user_b-auto-bgp] site 3 range 25
[PE3-vsi-user_b-auto-bgp] quit
[PE3-vsi-user_b-auto] quit
[PE3-vsi-user_b] quit
· 配置PE 1
# 在接入CE 1的端口Ten-GigabitEthernet1/0/1上創建服務實例100,匹配用戶網絡中VLAN100的報文,並將其與VSI實例“user_a”進行綁定。
[PE1] interface ten-gigabitethernet 1/0/1
[PE1-Ten-GigabitEthernet1/0/1] service-instance 100
[PE1-Ten-GigabitEthernet1/0/1-srv100] encapsulation s-vid 100
[PE1-Ten-GigabitEthernet1/0/1-srv100] xconnect vsi user_a
[PE1-Ten-GigabitEthernet1/0/1-srv100] quit
# 在接入CE 1的端口Ten-GigabitEthernet1/0/1上創建服務實例200,匹配用戶網絡中VLAN200的報文,並將其與VSI實例“user_b”進行綁定。
[PE1-Ten-GigabitEthernet1/0/1] service-instance 200
[PE1-Ten-GigabitEthernet1/0/1-srv200] encapsulation s-vid 200
[PE1-Ten-GigabitEthernet1/0/1-srv200] xconnect vsi user_b
[PE1-Ten-GigabitEthernet1/0/1-srv200] quit
[PE1-Ten-GigabitEthernet1/0/1] quit
· 配置PE 2
# 在接入CE 2的端口Ten-GigabitEthernet1/0/2上創建服務實例100,匹配用戶網絡中VLAN100的報文,並將其與VSI實例“user_a”進行綁定。
[PE2] interface ten-gigabitethernet 1/0/2
[PE2-Ten-GigabitEthernet1/0/2] service-instance 100
[PE2-Ten-GigabitEthernet1/0/2-srv100] encapsulation s-vid 100
[PE2-Ten-GigabitEthernet1/0/2-srv100] xconnect vsi user_a
[PE2-Ten-GigabitEthernet1/0/2-srv100] quit
# 在接入CE 2的端口Ten-GigabitEthernet1/0/2上創建服務實例200,匹配用戶網絡中VLAN200的報文,並將其與VSI實例“user_b”進行綁定。
[PE2-Ten-GigabitEthernet1/0/2] service-instance 200
[PE2-Ten-GigabitEthernet1/0/2-srv200] encapsulation s-vid 200
[PE2-Ten-GigabitEthernet1/0/2-srv200] xconnect vsi user_b
[PE2-Ten-GigabitEthernet1/0/2-srv200] quit
[PE2-Ten-GigabitEthernet1/0/2] quit
· 配置PE 3
# 在接入CE 3的端口Ten-GigabitEthernet1/0/2上創建服務實例100,匹配用戶網絡中VLAN100的報文,並將其與VSI實例“user_a”進行綁定。
[PE3] interface ten-gigabitethernet 1/0/2
[PE3-Ten-GigabitEthernet1/0/2] service-instance 100
[PE3-Ten-GigabitEthernet1/0/2-srv100] encapsulation s-vid 100
[PE3-Ten-GigabitEthernet1/0/2-srv100] xconnect vsi user_a
[PE3-Ten-GigabitEthernet1/0/2-srv100] quit
# 在接入CE 3的端口Ten-GigabitEthernet1/0/2上創建服務實例200,匹配用戶網絡中VLAN200的報文,並將其與VSI實例“user_b”進行綁定。
[PE3-Ten-GigabitEthernet1/0/2] service-instance 200
[PE3-Ten-GigabitEthernet1/0/2-srv200] encapsulation s-vid 200
[PE3-Ten-GigabitEthernet1/0/2-srv200] xconnect vsi user_b
[PE3-Ten-GigabitEthernet1/0/2-srv200] quit
[PE3-Ten-GigabitEthernet1/0/2] quit
# 接入其它CE的端口上的配置與Ten-GigabitEthernet1/0/2上的配置類似,這裏不再贅述。
# 對於各個CE來說,隻要配置上行到PE的端口允許本站點內的報文攜帶Tag通過即可,這裏以CE 1為例,其它CE的配置與CE 1完全相同,這裏不再贅述。
<CE1> system-view
[CE1] vlan 100
[CE1-vlan100] quit
[CE1] vlan 200
[CE1-vlan200] quit
[CE1] interface ten-gigabitethernet 1/0/1
[CE1-Ten-GigabitEthernet1/0/1] port link-type trunk
[CE1-Ten-GigabitEthernet1/0/1] port trunk permit vlan 100 200
# 在MPLS網絡內各設備上執行display mpls ldp lsp命令,可以看到LDP LSP的建立情況。以PE 1為例。
[PE1] display mpls ldp lsp
Status Flags: * - stale, L - liberal
Statistics:
FECs: 4 Ingress LSPs: 3 Transit LSPs: 3 Egress LSPs: 1
FEC In/Out Label Nexthop OutInterface
1.1.1.9/32 3/-
-/1151(L)
2.2.2.9/32 -/3 10.1.1.2 Vlan2
1151/3 10.1.1.2 Vlan2
3.3.3.9/32 -/1150 10.1.1.2 Vlan2
1150/1150 10.1.1.2 Vlan2
4.4.4.9/32 -/1149 10.1.1.2 Vlan2
1149/1149 10.1.1.2 Vlan2
# 完成上述配置後,在各個PE上執行display l2vpn pw命令,可以看到建立了PW連接,且狀態為up。以PE 1為例。
[PE1] display l2vpn pw
Flags: M - main, B - backup, H - hub link, S - spoke link, N - no split horizon
Total number of PWs: 2, 2 up, 0 blocked, 0 down, 0 defect
VSI Name: user_a
Peer PW ID/Rmt Site In/Out Label Proto Flag Link ID State
3.3.3.9 2 131074/131073 BGP M 257 Up
4.4.4.9 3 131075/131073 BGP M 258 Up
VSI Name: user_b
Peer PW ID/Rmt Site In/Out Label Proto Flag Link ID State
3.3.3.9 2 131071/131070 BGP M 257 Up
4.4.4.9 3 131072/131070 BGP M 258 Up
# 檢測相同VLAN內不同站點的主機之間是否可以ping通,如可以ping通,則表示VPLS建立成功。
· PE 1
#
ospf 1
area 0.0.0.0
network 1.1.1.9 0.0.0.0
network 10.1.1.0 0.0.0.255
#
mpls lsr-id 1.1.1.9
#
vlan 2
#
mpls ldp
#
l2vpn enable
#
vsi user_a
auto-discovery bgp
route-distinguisher 100:1
vpn-target 111:1 export-extcommunity
vpn-target 111:1 import-extcommunity
signaling-protocol bgp
site 1 range 25 default-offset 0
#
vsi user_b
auto-discovery bgp
route-distinguisher 200:1
vpn-target 222:1 export-extcommunity
vpn-target 222:1 import-extcommunity
signaling-protocol bgp
site 1 range 25 default-offset 0
#
interface LoopBack0
ip address 1.1.1.9 255.255.255.255
#
interface Vlan-interface2
ip address 10.1.1.1 255.255.255.0
mpls enable
mpls ldp enable
#
interface Ten-GigabitEthernet1/0/1
port link-mode bridge
service-instance 100
encapsulation s-vid 100
xconnect vsi user_a
service-instance 200
encapsulation s-vid 200
xconnect vsi user_b
#
interface Ten-GigabitEthernet1/0/2
port link-mode bridge
port access vlan 2
#
bgp 100
peer 3.3.3.9 as-number 100
peer 3.3.3.9 connect-interface LoopBack0
peer 4.4.4.9 as-number 100
peer 4.4.4.9 connect-interface LoopBack0
#
address-family l2vpn
peer 3.3.3.9 enable
peer 4.4.4.9 enable
#
· PE 2
#
ospf 1
area 0.0.0.0
network 10.1.2.0 0.0.0.255
network 3.3.3.9 0.0.0.0
#
mpls lsr-id 3.3.3.9
#
vlan 3
#
mpls ldp
#
l2vpn enable
#
vsi user_a
auto-discovery bgp
route-distinguisher 100:1
vpn-target 111:1 export-extcommunity
vpn-target 111:1 import-extcommunity
signaling-protocol bgp
site 2 range 25 default-offset 0
#
vsi user_b
auto-discovery bgp
route-distinguisher 200:1
vpn-target 222:1 export-extcommunity
vpn-target 222:1 import-extcommunity
signaling-protocol bgp
site 2 range 25 default-offset 0
#
interface LoopBack0
ip address 3.3.3.9 255.255.255.255
#
interface Vlan-interface3
ip address 10.1.2.2 255.255.255.0
mpls enable
mpls ldp enable
#
interface Ten-GigabitEthernet1/0/1
port link-mode bridge
port access vlan 3
#
interface Ten-GigabitEthernet1/0/2
port link-mode bridge
service-instance 100
encapsulation s-vid 100
xconnect vsi user_a
service-instance 200
encapsulation s-vid 200
xconnect vsi user_b
#
bgp 100
peer 1.1.1.9 as-number 100
peer 1.1.1.9 connect-interface LoopBack0
peer 4.4.4.9 as-number 100
peer 4.4.4.9 connect-interface LoopBack0
#
address-family l2vpn
peer 1.1.1.9 enable
peer 4.4.4.9 enable
#
· PE 3
#
ospf 1
area 0.0.0.0
network 10.1.3.0 0.0.0.255
network 4.4.4.9 0.0.0.0
#
mpls lsr-id 4.4.4.9
#
vlan 4
#
mpls ldp
#
l2vpn enable
#
vsi user_a
auto-discovery bgp
route-distinguisher 100:1
vpn-target 111:1 export-extcommunity
vpn-target 111:1 import-extcommunity
signaling-protocol bgp
site 3 range 25 default-offset 0
#
vsi user_b
auto-discovery bgp
route-distinguisher 200:1
vpn-target 222:1 export-extcommunity
vpn-target 222:1 import-extcommunity
signaling-protocol bgp
site 3 range 25 default-offset 0
#
interface LoopBack0
ip address 4.4.4.9 255.255.255.255
#
interface Vlan-interface4
ip address 10.1.3.2 255.255.255.0
mpls enable
mpls ldp enable
#
interface Ten-GigabitEthernet1/0/1
port link-mode bridge
port access vlan 4
#
interface Ten-GigabitEthernet1/0/2
port link-mode bridge
service-instance 100
encapsulation s-vid 100
xconnect vsi user_a
service-instance 200
encapsulation s-vid 200
xconnect vsi user_b
#
bgp 100
peer 1.1.1.9 as-number 100
peer 1.1.1.9 connect-interface LoopBack0
peer 3.3.3.9 as-number 100
peer 3.3.3.9 connect-interface LoopBack0
#
address-family l2vpn
peer 1.1.1.9 enable
peer 3.3.3.9 enable
#
· P
#
ospf 1
area 0.0.0.0
network 10.1.1.0 0.0.0.255
network 10.1.2.0 0.0.0.255
network 10.1.3.0 0.0.0.255
network 2.2.2.9 0.0.0.0
#
mpls lsr-id 2.2.2.9
#
vlan 2 to 4
#
mpls ldp
#
interface LoopBack0
ip address 2.2.2.9 255.255.255.255
#
interface Vlan-interface2
ip address 10.1.1.2 255.255.255.0
mpls enable
mpls ldp enable
#
interface Vlan-interface3
ip address 10.1.2.1 255.255.255.0
mpls enable
mpls ldp enable
#
interface Vlan-interface4
ip address 10.1.3.1 255.255.255.0
mpls enable
mpls ldp enable
#
interface Ten-GigabitEthernet1/0/2
port link-mode bridge
port access vlan 2
#
interface Ten-GigabitEthernet1/0/3
port link-mode bridge
port access vlan 3
#
interface Ten-GigabitEthernet1/0/4
port link-mode bridge
port access vlan 4
#
· CE 1~CE 10
#
vlan 100
#
vlan 200
#
interface Ten-GigabitEthernet1/0/1
port link-mode bridge
port link-type trunk
port trunk permit vlan 100 200
#
某服務提供商正在搭建VPLS網絡,用於提供VPLS服務。該服務提供商的用戶較多,且位於不同的地理位置,為了簡化網絡結構,降低設備負載壓力和配置維護的工作量,現通過部署H-VPLS,向用戶提供VPLS服務。
如圖4所示,具體需求如下:
· 位於不同位置的用戶分支機構分別通過UPE設備(支持MPLS L2VPN功能)接入運營商MPLS網絡;
· NPE設備通過LSP接入方式接入UPE;
· 采用UPE雙歸屬組網方式,即UPE雙上行至兩台NPE設備,提高可靠性。
圖4 配置H-VPLS模型的VPLS(LSP接入方式)
設備 |
接口 |
IP地址 |
設備 |
接口 |
IP地址 |
UPE 1 |
Loop0 |
11.1.1.1/32 |
UPE 2 |
Loop0 |
14.1.1.1/32 |
|
Vlan-int10 |
11.1.2.1/24 |
|
Vlan-int12 |
20.1.1.1/24 |
|
Vlan-int11 |
11.1.3.1/24 |
|
Vlan-int13 |
20.1.2.1/24 |
NPE 1 |
Loop0 |
1.1.1.1/32 |
NPE 3 |
Loop0 |
3.3.3.3/32 |
|
Vlan-int10 |
11.1.2.2/24 |
|
Vlan-int13 |
20.1.2.2/24 |
NPE 2 |
Loop0 |
2.2.2.2/32 |
NPE 4 |
Loop0 |
4.4.4.4/32 |
|
Vlan-int11 |
11.1.3.2/24 |
|
Vlan-int12 |
20.1.1.2/24 |
· 為了實現內層標簽的協商,需要在UPE和與其相連的所有NPE設備之間,以及任意兩個NPE之間,都建立遠程LDP對等體關係。
· 在UPE設備上設定主用/備用對等體,用來確定鏈路的主備狀態。
· 在UPE的下行端口上配置服務實例和相應的匹配規則,用來識別用戶網絡中需要使用VPLS隧道進行傳輸的報文。
· 為了實現站點間的VLAN隔離,需要創建VSI實例“user_a”和“user_b”分別於VLAN100和VLAN200的報文綁定。
(1) 如圖4所示創建UPE和NPE設備的各個接口,並配置IP地址,具體配置略。
(2) 在MPLS骨幹網絡上配置IGP協議,使所有NPE和UPE的各接口之間路由可達,具體配置略。
(3) 在MPLS骨幹網絡上配置MPLS基本能力和MPLS LDP,建立LDP LSP,具體配置略。
(4) 配置各CE連接UPE的端口為Trunk端口,允許VLAN100和VLAN200的報文攜帶Tag通過,具體配置略。
# 配置MPLS基本能力。
<UPE1> system-view
[UPE1] mpls lsr-id 11.1.1.1
[UPE1] mpls ldp
[UPE1-ldp] quit
# 配置與NPE 1相連接口的MPLS基本能力。
[UPE1] interface vlan-interface 10
[UPE1-Vlan-interface10] mpls enable
[UPE1-Vlan-interface10] mpls ldp enable
[UPE1-Vlan-interface10] quit
# 配置與NPE 2相連接口的MPLS基本能力。
[UPE1] interface vlan-interface 11
[UPE1-Vlan-interface11] mpls enable
[UPE1-Vlan-interface11] mpls ldp enable
[UPE1-Vlan-interface11] quit
# 開啟MPLS L2VPN功能。
[UPE1] l2vpn enable
# 創建VSI實例user_a,並配置該VSI實例使用LDP信令協議。
[UPE1] vsi user_a
[UPE1-vsi-user_a] pwsignaling ldp
# 配置在主備PW切換後,當主PW鏈路恢複120秒時,流量切換回主PW傳輸。
[UPE1-vsi-user_a-ldp] revertive wtr 120
# 在UPE 1和NPE 1之間建立主PW、在UPE 1和NPE 2之間建立備份PW。
[UPE1-vsi-user_a-ldp] peer 1.1.1.1 pw-id 500
[UPE1-vsi-user_a-ldp-1.1.1.1-500] backup-peer 2.2.2.2 pw-id 500
[UPE1-vsi-user_a-ldp-1.1.1.1-500-backup] quit
[UPE1-vsi-user_a-ldp-1.1.1.1-500] quit
[UPE1-vsi-user_a-ldp] quit
[UPE1-vsi-user_a] quit
# 創建VSI實例user_b,並配置該VSI實例使用LDP信令協議。
[UPE1] vsi user_b
[UPE1-vsi-user_b] pwsignaling ldp
# 配置在主備PW切換後,當主PW鏈路恢複120秒時,流量切換回主PW傳輸。
[UPE1-vsi-user_b-ldp] revertive wtr 120
# 在UPE 1和NPE 1之間建立主PW、在UPE 1和NPE 2之間建立備份PW。
[UPE1-vsi-user_b-ldp] peer 1.1.1.1 pw-id 600
[UPE1-vsi-user_b-ldp-1.1.1.1-600] backup-peer 2.2.2.2 pw-id 600
[UPE1-vsi-user_b-ldp-1.1.1.1-600-backup] quit
[UPE1-vsi-user_b-ldp-1.1.1.1-600] quit
[UPE1-vsi-user_b-ldp] quit
[UPE1-vsi-user_b] quit
# 在連接Site A的端口Ten-GigabitEthernet1/0/1上創建服務實例1000,並將該端口收到的VLAN100的報文與VSI實例user_a進行綁定,通過該實例進行傳輸。
[UPE1] interface ten-gigabitethernet 1/0/1
[UPE1-Ten-GigabitEthernet1/0/1] service-instance 1000
[UPE1-Ten-GigabitEthernet1/0/1-srv1000] encapsulation s-vid 100
[UPE1-Ten-GigabitEthernet1/0/1-srv1000] xconnect vsi user_a
[UPE1-Ten-GigabitEthernet1/0/1-srv1000] quit
# 在端口Ten-GigabitEthernet1/0/1上創建服務實例2000,並將該端口收到的VLAN200的報文與VSI實例user_b進行綁定,通過該實例進行傳輸。
[UPE1-Ten-GigabitEthernet1/0/1] service-instance 2000
[UPE1-Ten-GigabitEthernet1/0/1-srv2000] encapsulation s-vid 200
[UPE1-Ten-GigabitEthernet1/0/1-srv2000] xconnect vsi user_b
[UPE1-Ten-GigabitEthernet1/0/1-srv2000] quit
# 按同樣方法在連接Site B的端口Ten-GigabitEthernet1/0/2上創建兩個服務實例,分別將VLAN100綁定到user_a實例,VLAN200綁定到user_b實例。
[UPE1] interface ten-gigabitethernet 1/0/2
[UPE1-Ten-GigabitEthernet1/0/2] service-instance 1000
[UPE1-Ten-GigabitEthernet1/0/2-srv1000] encapsulation s-vid 100
[UPE1-Ten-GigabitEthernet1/0/2-srv1000] xconnect vsi user_a
[UPE1-Ten-GigabitEthernet1/0/2-srv1000] quit
[UPE1-Ten-GigabitEthernet1/0/2] service-instance 2000
[UPE1-Ten-GigabitEthernet1/0/2-srv2000] encapsulation s-vid 200
[UPE1-Ten-GigabitEthernet1/0/2-srv2000] xconnect vsi user_b
[UPE1-Ten-GigabitEthernet1/0/2-srv2000] quit
# 配置與UPE 1相連接口的MPLS基本能力。
<NPE1> system-view
[NPE1] interface vlan-interface 10
[NPE1-Vlan-interface10] mpls enable
[NPE1-Vlan-interface10] mpls ldp enable
[NPE1-Vlan-interface10] quit
# 開啟MPLS L2VPN功能。
[NPE1] l2vpn enable
# 在NPE 1上創建VSI實例user_a,並配置該VSI實例使用LDP信令協議。
[NPE1] vsi user_a
[NPE1-vsi-user_a] pwsignaling ldp
# 配置UPE 1為UPE對等體。
[NPE1-vsi-user_a-ldp] peer 11.1.1.1 pw-id 500 no-split-horizon
[NPE1-vsi-user_a-ldp-11.1.1.1-500] quit
# 配置NPE 2、NPE 3和NPE 4為NPE對等體。
[NPE1-vsi-user_a-ldp] peer 2.2.2.2 pw-id 500
[NPE1-vsi-user_a-ldp-2.2.2.2-500] quit
[NPE1-vsi-user_a-ldp] peer 3.3.3.3 pw-id 500
[NPE1-vsi-user_a-ldp-3.3.3.3-500] quit
[NPE1-vsi-user_a-ldp] peer 4.4.4.4 pw-id 500
[NPE1-vsi-user_a-ldp-4.4.4.4-500] quit
[NPE1-vsi-user_a-ldp] quit
[NPE1-vsi-user_a] quit
# 在NPE 1上創建VSI實例user_b,並配置該VSI實例使用LDP信令協議。
[NPE1] vsi user_b
[NPE1-vsi-user_b] pwsignaling ldp
# 配置UPE 1為UPE對等體。
[NPE1-vsi-user_b-ldp] peer 11.1.1.1 pw-id 600 no-split-horizon
[NPE1-vsi-user_b-ldp-11.1.1.1-500] quit
# 配置NPE 2、NPE 3和NPE 4為NPE對等體。
[NPE1-vsi-user_b-ldp] peer 2.2.2.2 pw-id 600
[NPE1-vsi-user_b-ldp-2.2.2.2-600] quit
[NPE1-vsi-user_b-ldp] peer 3.3.3.3 pw-id 600
[NPE1-vsi-user_b-ldp-3.3.3.3-600] quit
[NPE1-vsi-user_b-ldp] peer 4.4.4.4 pw-id 600
[NPE1-vsi-user_b-ldp-4.4.4.4-600] quit
[NPE1-vsi-user_b-ldp] quit
[NPE1-vsi-user_b] quit
NPE 2的配置與NPE 1類似,僅與UPE相連的VLAN接口編號及NPE對等體存在不同,配置過程這裏省略,請參考配置文件部分。
# 配置MPLS基本能力。
<UPE2> system-view
[UPE2] mpls lsr-id 14.1.1.1
[UPE2] mpls ldp
[UPE2-ldp] quit
# 配置與NPE 3相連接口的MPLS基本能力。
[UPE2] interface vlan-interface 13
[UPE2-Vlan-interface13] mpls enable
[UPE2-Vlan-interface13] mpls ldp enable
[UPE2-Vlan-interface13] quit
# 配置與NPE 4相連接口的MPLS基本能力。
[UPE2] interface vlan-interface 12
[UPE2-Vlan-interface12] mpls enable
[UPE2-Vlan-interface12] mpls ldp enable
[UPE2-Vlan-interface12] quit
# 開啟MPLS L2VPN功能。
[UPE2] l2vpn enable
# 創建VSI實例user_a,並配置該VSI實例使用LDP信令協議。
[UPE2] vsi user_a
[UPE2-vsi-user_a] pwsignaling ldp
# 配置在主備PW切換後,當主PW鏈路恢複120秒時,流量切換回主PW傳輸。
[UPE2-vsi-user_a-ldp] revertive wtr 120
# 在UPE 2和NPE 3之間建立主PW、在UPE 2和NPE 4之間建立備份PW。
[UPE2-vsi-user_a-ldp] peer 3.3.3.3 pw-id 500
[UPE2-vsi-user_a-ldp-3.3.3.3-500] backup-peer 4.4.4.4 pw-id 500
[UPE2-vsi-user_a-ldp-3.3.3.3-500-backup] quit
[UPE2-vsi-user_a-ldp-3.3.3.3-500] quit
[UPE2-vsi-user_a-ldp] quit
[UPE2-vsi-user_a] quit
# 創建VSI實例user_b,並配置該VSI實例使用LDP信令協議。
[UPE2] vsi user_b
[UPE2-vsi-user_b] pwsignaling ldp
# 配置在主備PW切換後,當主PW鏈路恢複120秒時,流量切換回主PW傳輸。
[UPE2-vsi-user_b-ldp] revertive wtr 120
# 在UPE 2和NPE 3之間建立主PW、在UPE 2和NPE 4之間建立備份PW。
[UPE2-vsi-user_b-ldp] peer 3.3.3.3 pw-id 600
[UPE2-vsi-user_b-ldp-3.3.3.3-600] backup-peer 4.4.4.4 pw-id 600
[UPE2-vsi-user_b-ldp-3.3.3.3-600-backup] quit
[UPE2-vsi-user_b-ldp-3.3.3.3-600] quit
[UPE2-vsi-user_b-ldp] quit
[UPE2-vsi-user_b] quit
# 在連接Site E的端口Ten-GigabitEthernet1/0/1上創建服務實例1000,並將該端口收到的VLAN100的報文與VSI實例user_a進行綁定,通過該實例進行傳輸。
[UPE2] interface ten-gigabitethernet 1/0/1
[UPE2-Ten-GigabitEthernet1/0/1] service-instance 1000
[UPE2-Ten-GigabitEthernet1/0/1-srv1000] encapsulation s-vid 100
[UPE2-Ten-GigabitEthernet1/0/1-srv1000] xconnect vsi user_a
[UPE2-Ten-GigabitEthernet1/0/1-srv1000] quit
# 在端口Ten-GigabitEthernet1/0/1上創建服務實例2000,並將該端口收到的VLAN200的報文與VSI實例user_b進行綁定,通過該實例進行傳輸。
[UPE2-Ten-GigabitEthernet1/0/1] service-instance 2000
[UPE2-Ten-GigabitEthernet1/0/1-srv2000] encapsulation s-vid 200
[UPE2-Ten-GigabitEthernet1/0/1-srv2000] xconnect vsi user_b
[UPE2-Ten-GigabitEthernet1/0/1-srv2000] quit
# 配置與UPE 2相連接口的MPLS基本能力。
[NPE3] interface vlan-interface 13
[NPE3-Vlan-interface13] mpls enable
[NPE3-Vlan-interface13] mpls ldp enable
[NPE3-Vlan-interface13] quit
# 配置MPLS L2VPN
[NPE3] l2vpn enable
# 在NPE 3上創建VSI實例user_a,並配置該VSI實例使用LDP信令協議。
[NPE3] vsi user_a
[NPE3-vsi-user_a] pwsignaling ldp
# 配置UPE 2為UPE對等體。
[NPE3-vsi-user_a-ldp] peer 14.1.1.1 pw-id 500 no-split-horizon
[NPE3-vsi-user_a-ldp-14.1.1.1-500] quit
# 配置NPE 1、NPE 2和NPE 4為NPE對等體。
[NPE3-vsi-user_a-ldp] peer 1.1.1.1 pw-id 500
[NPE3-vsi-user_a-ldp-1.1.1.1-500] quit
[NPE3-vsi-user_a-ldp] peer 2.2.2.2 pw-id 500
[NPE3-vsi-user_a-ldp-2.2.2.2-500] quit
[NPE3-vsi-user_a-ldp] peer 4.4.4.4 pw-id 500
[NPE3-vsi-user_a-ldp-4.4.4.4-500] quit
[NPE3-vsi-user_a-ldp] quit
[NPE3-vsi-user_a] quit
# 在NPE 3上創建VSI實例user_b,並配置該VSI實例使用LDP信令協議。
[NPE3] vsi user_b
[NPE3-vsi-user_b] pwsignaling ldp
# 配置UPE 2為UPE對等體。
[NPE3-vsi-user_b-ldp] peer 14.1.1.1 pw-id 600 no-split-horizon
[NPE3-vsi-user_b-ldp-14.1.1.1-600] quit
# 配置NPE 1、NPE 2和NPE 4為NPE對等體。
[NPE3-vsi-user_b-ldp] peer 1.1.1.1 pw-id 600
[NPE3-vsi-user_b-ldp-1.1.1.1-600] quit
[NPE3-vsi-user_b-ldp] peer 2.2.2.2 pw-id 600
[NPE3-vsi-user_b-ldp-2.2.2.2-600] quit
[NPE3-vsi-user_b-ldp] peer 4.4.4.4 pw-id 600
[NPE3-vsi-user_b-ldp-4.4.4.4-600] quit
[NPE3-vsi-user_b-ldp] quit
[NPE3-vsi-user_b] quit
NPE 4的配置與NPE 3類似,僅與UPE相連的VLAN接口編號及NPE對等體存在不同,配置過程這裏省略,請參考配置文件部分。
在各UPE和NPE上查看PW的狀態,這裏以UPE 1和NPE 1為例。
# 在UPE 1上使用display l2vpn pw命令查看PW連接狀態。
[UPE1] display l2vpn pw
Flags: M - main, B - backup, H - hub link, S - spoke link, N - no split horizon
Total number of PWs: 4, 4 up, 0 blocked, 0 down, 0 defect
VSI Name: user_a
Peer PW ID/Rmt Site In/Out Label Proto Flag Link ID State
1.1.1.1 500 131199/131199 LDP M 256 Up
2.2.2.2 500 131198/131199 LDP B 257 Blocked
VSI Name: user_b
Peer PW ID/Rmt Site In/Out Label Proto Flag Link ID State
1.1.1.1 600 131195/131195 LDP M 256 Up
2.2.2.2 600 131194/131195 LDP B 257 Blocked
# 在NPE 1上使用display l2vpn pw命令查看PW連接狀態。
[NPE1] display l2vpn pw
Flags: M - main, B - backup, H - hub link, S - spoke link, N - no split horizon
Total number of PWs: 4, 4 up, 0 blocked, 0 down, 0 defect
VSI Name: user_a
Peer PW ID/Rmt Site In/Out Label Proto Flag Link ID State
2.2.2.2 500 131199/131199 LDP M 256 Up
3.3.3.3 500 131198/131198 LDP M 257 Up
4.4.4.4 500 131197/131197 LDP M 258 Up
11.1.1.1 500 131196/131196 LDP MN 259 Up
VSI Name: user_b
Peer PW ID/Rmt Site In/Out Label Proto Flag Link ID State
2.2.2.2 600 131195/131195 LDP M 256 Up
3.3.3.3 600 131194/131194 LDP M 257 Up
4.4.4.4 600 131193/131193 LDP M 258 Up
11.1.1.1 600 131192/131192 LDP MN 259 Up
# 檢測相同VLAN內不同站點的主機之間是否可以ping通,如可以ping通,則表示VPLS建立成功。
由於手冊篇幅有限,此處僅列出關於H-VPLS的配置文件,CE的配置以及PE間路由協議的配置這裏省略。
· UPE 1
#
mpls lsr-id 11.1.1.1
#
vlan 10 to 11
#
mpls ldp
#
l2vpn enable
#
vsi user_a
pwsignaling ldp
revertive wtr 120
peer 1.1.1.1 pw-id 500
backup-peer 2.2.2.2 pw-id 500
#
vsi user_b
pwsignaling ldp
revertive wtr 120
peer 1.1.1.1 pw-id 600
backup-peer 2.2.2.2 pw-id 600
#
interface LoopBack0
ip address 11.1.1.1 255.255.255.255
#
interface Vlan-interface10
ip address 11.1.2.1 255.255.255.0
mpls enable
mpls ldp enable
#
interface Vlan-interface11
ip address 11.1.3.1 255.255.255.0
mpls enable
mpls ldp enable
#
interface Ten-GigabitEthernet1/0/1
port link-mode bridge
service-instance 1000
encapsulation s-vid 100
xconnect vsi user_a
service-instance 2000
encapsulation s-vid 200
xconnect vsi user_b
#
interface Ten-GigabitEthernet1/0/2
port link-mode bridge
service-instance 1000
encapsulation s-vid 100
xconnect vsi user_a
service-instance 2000
encapsulation s-vid 200
xconnect vsi user_b
#
· NPE 1
#
mpls lsr-id 1.1.1.1
#
vlan 10
#
mpls ldp
#
l2vpn enable
#
vsi user_a
pwsignaling ldp
peer 2.2.2.2 pw-id 500
peer 3.3.3.3 pw-id 500
peer 4.4.4.4 pw-id 500
peer 11.1.1.1 pw-id 500 no-split-horizon
#
vsi user_b
pwsignaling ldp
peer 2.2.2.2 pw-id 600
peer 3.3.3.3 pw-id 600
peer 4.4.4.4 pw-id 600
peer 11.1.1.1 pw-id 600 no-split-horizon
#
interface LoopBack0
ip address 1.1.1.1 255.255.255.255
#
interface Vlan-interface10
ip address 11.1.2.2 255.255.255.0
mpls enable
mpls ldp enable
#
· NPE 2
#
mpls lsr-id 2.2.2.2
#
vlan 11
#
mpls ldp
#
l2vpn enable
#
vsi user_a
pwsignaling ldp
peer 1.1.1.1 pw-id 500
peer 3.3.3.3 pw-id 500
peer 4.4.4.4 pw-id 500
peer 11.1.1.1 pw-id 500 no-split-horizon
#
vsi user_b
pwsignaling ldp
peer 1.1.1.1 pw-id 600
peer 3.3.3.3 pw-id 600
peer 4.4.4.4 pw-id 600
peer 11.1.1.1 pw-id 600 no-split-horizon
#
interface LoopBack0
ip address 2.2.2.2 255.255.255.255
#
interface Vlan-interface11
ip address 11.1.3.2 255.255.255.0
mpls enable
mpls ldp enable
#
· UPE 2
#
mpls lsr-id 14.1.1.1
#
vlan 12 to 13
#
mpls ldp
#
l2vpn enable
#
vsi user_a
pwsignaling ldp
revertive wtr 120
peer 3.3.3.3 pw-id 500
backup-peer 4.4.4.4 pw-id 500
#
vsi user_b
pwsignaling ldp
revertive wtr 120
peer 3.3.3.3 pw-id 600
backup-peer 4.4.4.4 pw-id 600
#
interface LoopBack0
ip address 14.1.1.1 255.255.255.255
#
interface Vlan-interface12
ip address 20.1.1.1 255.255.255.0
mpls enable
mpls ldp enable
#
interface Vlan-interface13
ip address 20.1.2.1 255.255.255.0
mpls enable
mpls ldp enable
#
interface Ten-GigabitEthernet1/0/1
port link-mode bridge
service-instance 1000
encapsulation s-vid 100
xconnect vsi user_a
service-instance 2000
encapsulation s-vid 200
xconnect vsi user_b
#
· NPE 3
#
mpls lsr-id 3.3.3.3
#
vlan 13
#
mpls ldp
#
l2vpn enable
#
vsi user_a
pwsignaling ldp
peer 1.1.1.1 pw-id 500
peer 2.2.2.2 pw-id 500
peer 4.4.4.4 pw-id 500
peer 14.1.1.1 pw-id 500 no-split-horizon
#
vsi user_b
pwsignaling ldp
peer 1.1.1.1 pw-id 600
peer 2.2.2.2 pw-id 600
peer 4.4.4.4 pw-id 600
peer 14.1.1.1 pw-id 600 no-split-horizon
#
interface LoopBack0
ip address 3.3.3.3 255.255.255.255
#
interface Vlan-interface13
ip address 20.1.2.2 255.255.255.0
mpls enable
mpls ldp enable
#
· NPE 4
#
mpls lsr-id 4.4.4.4
#
vlan 12
#
mpls ldp
#
l2vpn enable
#
vsi user_a
pwsignaling ldp
peer 1.1.1.1 pw-id 600
peer 2.2.2.2 pw-id 600
peer 3.3.3.3 pw-id 600
peer 14.1.1.1 pw-id 600 no-split-horizon
#
vsi user_b
pwsignaling ldp
peer 1.1.1.1 pw-id 600
peer 2.2.2.2 pw-id 600
peer 3.3.3.3 pw-id 600
peer 14.1.1.1 pw-id 600 no-split-horizon
#
interface LoopBack0
ip address 4.4.4.4 255.255.255.255
#
interface Vlan-interface12
ip address 20.1.1.2 255.255.255.0
mpls enable
mpls ldp enable
#
某服務提供商正在搭建VPLS網絡,用於提供VPLS服務。該服務提供商的用戶較多,且位於不同的地理位置,為了簡化網絡結構,降低設備負載壓力和配置維護的工作量,現通過部署H-VPLS,向用戶提供VPLS服務。
如圖5所示,具體需求如下:
· 位於不同位置的用戶分支機構分別通過UPE設備(不支持MPLS L2VPN功能)接入運營商MPLS網絡;
· NPE設備使用QinQ接入方式接入UPE;
· 采用UPE雙歸屬組網方式,即UPE雙上行至兩台NPE設備,提高可靠性。
圖5 配置H-VPLS模型的VPLS(QinQ接入方式)
· 在UPE的下行端口上配置QinQ功能,為用戶上行的報文封裝外層標簽(該標簽使用運營商網絡的VLAN資源),NPE將使用該外層標簽識別用戶流量。
· 使用STP功能實現鏈路的環路保護和備份功能。
· 在NPE的下行端口上配置服務實例,匹配規則為UPE為用戶報文封裝的外層標簽,用來將用戶報文使用綁定的PW進行傳輸。
· 為了實現內層標簽的協商,需要在任意兩台NPE設備之間建立遠程LDP對等體關係。
(1) 在MPLS骨幹網絡上配置IGP協議,使各NPE接口之間路由可達,具體配置略。
(2) 在MPLS骨幹網絡上配置MPLS基本能力和MPLS LDP,建立LDP LSP,具體配置略。
(3) 配置各CE連接UPE的端口為Trunk端口,允許VLAN100和VLAN200的報文攜帶Tag通過,具體配置略。
# 配置UPE1使能PVST功能,避免環路。
<UPE1> system-view
[UPE1] stp global enable
[UPE1] stp mode pvst
# 在Ten-GigabitEthernet1/0/1端口開啟QinQ功能,為報文封裝運營商外層VLAN標簽,此處以1000為例。
[UPE1] vlan 1000
[UPE1-vlan1000] quit
[UPE1] interface ten-gigabitethernet 1/0/1
[UPE1-Ten-GigabitEthernet1/0/1] port access vlan 1000
[UPE1-Ten-GigabitEthernet1/0/1] qinq enable
[UPE1-Ten-GigabitEthernet1/0/1] quit
# 在Ten-GigabitEthernet1/0/2端口開啟QinQ功能,為報文封裝運營商外層VLAN標簽1000。
[UPE1] interface ten-gigabitethernet 1/0/2
[UPE1-Ten-GigabitEthernet1/0/2] port access vlan 1000
[UPE1-Ten-GigabitEthernet1/0/2] qinq enable
[UPE1-Ten-GigabitEthernet1/0/2] quit
# 配置Ten-GigabitEthernet1/0/3為Trunk端口,允許VLAN1000的報文攜帶Tag發送給NPE 1。
[UPE1] interface ten-gigabitethernet 1/0/3
[UPE1-Ten-GigabitEthernet1/0/3] port link-type trunk
[UPE1-Ten-GigabitEthernet1/0/3] port trunk permit vlan 1000
[UPE1-Ten-GigabitEthernet1/0/3] quit
# 配置Ten-GigabitEthernet1/0/4為Trunk端口,允許VLAN1000的報文攜帶Tag發送給NPE 2。
[UPE1] interface ten-gigabitethernet 1/0/4
[UPE1-Ten-GigabitEthernet1/0/4] port link-type trunk
[UPE1-Ten-GigabitEthernet1/0/4] port trunk permit vlan 1000
[UPE1-Ten-GigabitEthernet1/0/4] quit
# 開啟MPLS L2VPN功能。
[NPE1] l2vpn enable
# 創建VSI實例user_a,並配置該VSI實例使用LDP信令協議。
[NPE1] vsi user_a
[NPE1-vsi-user_a] pwsignaling ldp
# 在該VSI實例下配置NPE 2、NPE 3和NPE 4為遠端NPE對等體。
[NPE1-vsi-user_a-ldp] peer 2.2.2.2 pw-id 500
[NPE1-vsi-user_a-ldp-2.2.2.2-500] quit
[NPE1-vsi-user_a-ldp] peer 3.3.3.3 pw-id 500
[NPE1-vsi-user_a-ldp-3.3.3.3-500] quit
[NPE1-vsi-user_a-ldp] peer 4.4.4.4 pw-id 500
[NPE1-vsi-user_a-ldp-4.4.4.4-500] quit
[NPE1-vsi-user_a-ldp] quit
[NPE1-vsi-user_a] quit
# 在接入UPE 1的端口Ten-GigabitEthernet1/0/1上創建服務實例1000,匹配UPE 1上行的VLAN1000的報文,並將其與VSI實例“user_a”進行綁定。由於上行報文攜帶運營商的VLAN,因此這裏AC的接入方式應該是VLAN方式(可選配置,缺省為VLAN方式)。
[NPE1] interface ten-gigabitethernet 1/0/1
[NPE1-Ten-GigabitEthernet1/0/1] service-instance 1000
[NPE1-Ten-GigabitEthernet1/0/1-srv1000] encapsulation s-vid 1000
[NPE1-Ten-GigabitEthernet1/0/1-srv1000] xconnect vsi user_a access-mode vlan
[NPE1-Ten-GigabitEthernet1/0/1-srv1000] quit
NPE 2的配置與NPE 1類似,僅NPE對等體存在不同,配置過程這裏省略,請參考配置文件部分。
# 配置UPE2使能PVST功能,避免環路。
<UPE2> system-view
[UPE2] stp global enable
[UPE2] stp mode pvst
# 在Ten-GigabitEthernet1/0/1端口開啟QinQ功能,為報文封裝運營商外層VLAN標簽,此處應與UPE 1保持一致,VLAN ID為1000。
[UPE2] vlan 1000
[UPE2-vlan1000] quit
[UPE2] interface ten-gigabitethernet 1/0/1
[UPE2-Ten-GigabitEthernet1/0/1] port access vlan 1000
[UPE2-Ten-GigabitEthernet1/0/1] qinq enable
[UPE2-Ten-GigabitEthernet1/0/1] quit
# 配置Ten-GigabitEthernet1/0/3為Trunk端口,允許VLAN1000的報文攜帶Tag發送給NPE 3。
[UPE2] interface ten-gigabitethernet 1/0/3
[UPE2-Ten-GigabitEthernet1/0/3] port link-type trunk
[UPE2-Ten-GigabitEthernet1/0/3] port trunk permit vlan 1000
[UPE2-Ten-GigabitEthernet1/0/3] quit
# 配置Ten-GigabitEthernet1/0/4為Trunk端口,允許VLAN1000的報文攜帶Tag發送給NPE 4。
[UPE2] interface ten-gigabitethernet 1/0/4
[UPE2-Ten-GigabitEthernet1/0/4] port link-type trunk
[UPE2-Ten-GigabitEthernet1/0/4] port trunk permit vlan 1000
[UPE2-Ten-GigabitEthernet1/0/4] quit
# 開啟MPLS L2VPN功能。
[NPE3] l2vpn enable
# 創建VSI實例user_a,並配置該VSI實例使用LDP信令協議。
[NPE3] vsi user_a
[NPE3-vsi-user_a] pwsignaling ldp
# 配置NPE 1、NPE 2和NPE 4為NPE對等體。
[NPE3-vsi-user_a-ldp] peer 1.1.1.1 pw-id 500
[NPE3-vsi-user_a-ldp-1.1.1.1-500] quit
[NPE3-vsi-user_a-ldp] peer 2.2.2.2 pw-id 500
[NPE3-vsi-user_a-ldp-2.2.2.2-500] quit
[NPE3-vsi-user_a-ldp] peer 4.4.4.4 pw-id 500
[NPE3-vsi-user_a-ldp-4.4.4.4-500] quit
[NPE3-vsi-user_a-ldp] quit
[NPE3-vsi-user_a] quit
# 在接入UPE 2的端口Ten-GigabitEthernet1/0/1上創建服務實例1000,匹配UPE 2上行的VLAN1000的報文,並將其與VSI實例“user_a”進行綁定。由於上行報文攜帶運營商的VLAN,因此這裏AC的接入方式應該是VLAN方式(可選配置,缺省為VLAN方式)。
[NPE3] interface ten-gigabitethernet 1/0/1
[NPE3-Ten-GigabitEthernet1/0/1] service-instance 1000
[NPE3-Ten-GigabitEthernet1/0/1-srv1000] encapsulation s-vid 1000
[NPE3-Ten-GigabitEthernet1/0/1-srv1000] xconnect vsi user_a access-mode vlan
[NPE3-Ten-GigabitEthernet1/0/1-srv1000] quit
NPE 4的配置與NPE 3類似,僅NPE對等體存在不同,配置過程這裏省略,請參考配置文件部分。
在各NPE上查看PW的狀態,這裏以NPE 1為例。
# 在NPE 1上使用display l2vpn pw命令查看PW連接狀態。
[NPE1] display l2vpn pw
Flags: M - main, B - backup, H - hub link, S - spoke link, N - no split horizon
Total number of PWs: 3, 3 up, 0 blocked, 0 down, 0 defect
VSI Name: user_a
Peer PW ID/Rmt Site In/Out Label Proto Flag Link ID State
2.2.2.2 500 131199/131199 LDP M 256 Up
3.3.3.3 500 131198/131198 LDP M 257 Up
4.4.4.4 500 131197/131197 LDP M 258 Up
# 檢測相同VLAN內不同站點的主機之間是否可以ping通,如可以ping通,則表示VPLS建立成功。
由於手冊篇幅有限,此處僅列出關於H-VPLS的配置文件,CE的配置以及PE間路由協議的配置這裏省略。
· UPE 1
#
vlan 1000
#
interface Ten-GigabitEthernet1/0/1
port link-mode bridge
port access vlan 1000
qinq enable
#
interface Ten-GigabitEthernet1/0/2
port link-mode bridge
port access vlan 1000
qinq enable
#
interface Ten-GigabitEthernet1/0/3
port link-mode bridge
port link-type trunk
port trunk permit vlan 1 1000
#
interface Ten-GigabitEthernet1/0/4
port link-mode bridge
port link-type trunk
port trunk permit vlan 1 1000
#
· NPE 1
#
mpls lsr-id 1.1.1.1
#
mpls ldp
#
l2vpn enable
#
vsi user_a
pwsignaling ldp
peer 2.2.2.2 pw-id 500
peer 3.3.3.3 pw-id 500
peer 4.4.4.4 pw-id 500
#
interface Ten-GigabitEthernet1/0/1
port link-mode bridge
service-instance 1000
encapsulation s-vid 1000
xconnect vsi user_a
#
· NPE 2
#
mpls lsr-id 2.2.2.2
#
mpls ldp
#
l2vpn enable
#
vsi user_a
pwsignaling ldp
peer 1.1.1.1 pw-id 500
peer 3.3.3.3 pw-id 500
peer 4.4.4.4 pw-id 500
#
interface Ten-GigabitEthernet1/0/1
port link-mode bridge
service-instance 1000
encapsulation s-vid 1000
xconnect vsi user_a
#
· UPE 2
#
vlan 1000
#
interface Ten-GigabitEthernet1/0/1
port link-mode bridge
port access vlan 1000
qinq enable
#
interface Ten-GigabitEthernet1/0/3
port link-mode bridge
port link-type trunk
port trunk permit vlan 1 1000
#
interface Ten-GigabitEthernet1/0/4
port link-mode bridge
port link-type trunk
port trunk permit vlan 1 1000
#
· NPE 3
#
mpls lsr-id 3.3.3.3
#
mpls ldp
#
l2vpn enable
#
vsi user_a
pwsignaling ldp
peer 1.1.1.1 pw-id 500
peer 2.2.2.2 pw-id 500
peer 4.4.4.4 pw-id 500
#
interface Ten-GigabitEthernet1/0/1
port link-mode bridge
service-instance 1000
encapsulation s-vid 1000
xconnect vsi user_a
#
· NPE 4
#
mpls lsr-id 4.4.4.4
#
mpls ldp
#
l2vpn enable
#
vsi user_a
pwsignaling ldp
peer 1.1.1.1 pw-id 500
peer 2.2.2.2 pw-id 500
peer 3.3.3.3 pw-id 500
#
interface Ten-GigabitEthernet1/0/1
port link-mode bridge
service-instance 1000
encapsulation s-vid 1000
xconnect vsi user_a
#
· H3C S10500係列交換機 MPLS配置指導-R758X
· H3C S10500係列交換機 MPLS命令參考-R758X
不同款型規格的資料略有差異, 詳細信息請向具體銷售和400谘詢。H3C保留在沒有任何通知或提示的情況下對資料內容進行修改的權利!