配置LDP VPLS以HVPLS方式接入BGP AD VPLS的示例
组网需求
如图6-37所示,PE3、PE4、PE5是已经部署的网络,它们之间通过BGP AD方式建立全连接的VPLS网络。PE1和PE2之间建立了LDP VPLS。PE1和PE2只支持LDP方式的VPLS,PE3支持LDP和BGP AD方式的VPLS。现在要求CE1与CE2能互访,PE1和PE2作为UPE设备,以HVPLS方式接入PE3。
- PE1与PE2、PE3之间建立LDP方式的PW
- PE2与PE1、PE3之间建立LDP方式的PW
- PE3与PE1、PE2之间建立LDP方式的PW,PE3与PE4、PE5之间建立BGP AD方式的PW
- PE4与PE3、PE5之间建立BGP AD方式的PW
- PE5与PE3、PE4之间建立BGP AD方式的PW
请确保该场景下互联接口的STP处于未使能状态。同时将互连接口退出VLAN1,避免形成环路。因为在使能STP的环形网络中,如果用交换机的VLANIF接口构建三层网络,会导致某个端口被阻塞,从而导致三层业务不能正常运行。
交换机 |
接口 |
对应的VLANIF |
IP地址 |
---|---|---|---|
PE1 |
Loopback1 |
- |
1.1.1.9/32 |
PE1 |
GE1/0/0 |
VLANIF20 |
192.168.1.1/24 |
PE1 |
GE2/0/0 |
VLANIF40 |
192.168.2.1/24 |
PE1 |
GE3/0/0 |
VLANIF10 |
- |
PE2 |
Loopback1 |
- |
2.2.2.9/32 |
PE2 |
GE1/0/0 |
VLANIF20 |
192.168.1.2/24 |
PE2 |
GE2/0/0 |
VLANIF30 |
192.168.3.1/24 |
PE3 |
Loopback1 |
- |
3.3.3.9/32 |
PE3 |
GE1/0/0 |
VLANIF50 |
192.168.4.2/24 |
PE3 |
GE2/0/0 |
VLANIF30 |
192.168.3.2/24 |
PE3 |
GE3/0/0 |
VLANIF60 |
192.168.5.2/24 |
PE3 |
GE4/0/0 |
VLANIF40 |
192.168.2.2/24 |
PE4 |
Loopback1 |
- |
4.4.4.9/32 |
PE4 |
GE2/0/0 |
VLANIF70 |
192.168.6.2/24 |
PE4 |
GE3/0/0 |
VLANIF60 |
192.168.5.1/24 |
PE5 |
Loopback1 |
- |
5.5.5.9/32 |
PE5 |
GE1/0/0 |
VLANIF50 |
192.168.4.1/24 |
PE5 |
GE2/0/0 |
VLANIF70 |
192.168.6.1/24 |
PE5 |
GE3/0/0 |
VLANIF80 |
- |
CE1 |
GE1/0/0 |
VLANIF10 |
192.168.10.1/24 |
CE2 |
GE3/0/0 |
VLANIF80 |
192.168.10.2/24 |
配置思路
采用如下的思路配置LDP VPLS以HVPLS方式接入BGP AD VPLS:
- 配置网络中设备各接口的IP地址和路由协议,实现PE设备之间网络层互通。本示例配置OSPF路由协议。
配置MPLS和公网隧道,用来承载PW。在本示例中,PE之间使用LDP LSP隧道。
在PE1、PE2、PE3之间配置Martini方式的VPLS。
在PE3上配置LDP PW时,需要指定对端为UPE。在PE3、PE4、PE5之间配置BGP AD方式的VPLS。
操作步骤
- 配置骨干网各接口的IP地址和路由协议,实现PE设备之间网络层互通
本示例中配置OSPF协议,具体配置请参见后面的配置文件。
配置完成后,在PE上执行display ip routing-table命令可以看到PE之间已学到彼此的Loopback接口地址。
- 配置MPLS和公网隧道
本示例中配置LDP LSP隧道,具体配置请参见后面的配置文件。
配置完成后,在PE上执行display mpls ldp session命令可以看到PE之间的对等体Status项为“Operational”,即对等体关系已建立。执行display mpls lsp命令可以看到LSP的建立情况。
- 在PE1、PE2、PE3之间配置Martini方式的VPLS
# 配置PE1。
[PE1] mpls l2vpn [PE1-l2vpn] quit [PE1] vsi vsi1 static [PE1-vsi-vsi1] pwsignal ldp [PE1-vsi-vsi1-ldp] vsi-id 1 [PE1-vsi-vsi1-ldp] peer 2.2.2.9 [PE1-vsi-vsi1-ldp] peer 3.3.3.9 [PE1-vsi-vsi1-ldp] quit [PE1-vsi-vsi1] quit
# 配置PE2。
[PE2] mpls l2vpn [PE2-l2vpn] quit [PE2] vsi vsi1 static [PE2-vsi-vsi1] pwsignal ldp [PE2-vsi-vsi1-ldp] vsi-id 1 [PE2-vsi-vsi1-ldp] peer 1.1.1.9 [PE2-vsi-vsi1-ldp] peer 3.3.3.9 [PE2-vsi-vsi1-ldp] quit [PE2-vsi-vsi1] quit
# 配置PE3。
[PE3] mpls l2vpn [PE3-l2vpn] quit [PE3] vsi vsi1 [PE3-vsi-vsi1] pwsignal ldp [PE3-vsi-vsi1-ldp] vsi-id 1 [PE3-vsi-vsi1-ldp] peer 1.1.1.9 upe [PE3-vsi-vsi1-ldp] peer 2.2.2.9 upe [PE3-vsi-vsi1-ldp] quit [PE3-vsi-vsi1] quit
# 在PE1上配置VSI绑定AC接口。
[PE1] interface vlanif 10 [PE1-Vlanif10] l2 binding vsi vsi1 [PE1-Vlanif10] quit
- 在PE3、PE4、PE5之间配置BGP AD方式的VPLS
- 配置CE
# 配置CE1。
[CE1] interface gigabitethernet 1/0/0 [CE1-GigabitEthernet1/0/0] port link-type trunk [CE1-GigabitEthernet1/0/0] port trunk allow-pass vlan 10 [CE1-GigabitEthernet1/0/0] quit [CE1] interface vlanif 10 [CE1-Vlanif10] ip address 192.168.10.1 255.255.255.0 [CE1-Vlanif10] quit
# 配置CE2。
[CE2] interface gigabitethernet 3/0/0 [CE2-GigabitEthernet3/0/0] port link-type trunk [CE2-GigabitEthernet3/0/0] port trunk allow-pass vlan 80 [CE2-GigabitEthernet3/0/0] quit [CE2] interface vlanif 80 [CE2-Vlanif80] ip address 192.168.10.2 255.255.255.0 [CE2-Vlanif80] quit
- 检验配置结果,CE1可以ping通CE2
[CE1] ping 192.168.10.2 PING 192.168.10.2: 56 data bytes, press CTRL_C to break Reply from 192.168.10.2: bytes=56 Sequence=1 ttl=255 time=190 ms Reply from 192.168.10.2: bytes=56 Sequence=2 ttl=255 time=190 ms Reply from 192.168.10.2: bytes=56 Sequence=3 ttl=255 time=140 ms Reply from 192.168.10.2: bytes=56 Sequence=4 ttl=255 time=140 ms Reply from 192.168.10.2: bytes=56 Sequence=5 ttl=255 time=110 ms --- 192.168.10.2 ping statistics --- 5 packet(s) transmitted 5 packet(s) received 0.00% packet loss round-trip min/avg/max = 110/154/190 ms
配置文件
PE1的配置文件
# sysname PE1 # vlan batch 10 20 40 # mpls lsr-id 1.1.1.9 mpls # mpls l2vpn # vsi vsi1 static pwsignal ldp vsi-id 1 peer 2.2.2.9 peer 3.3.3.9 # mpls ldp # interface Vlanif10 l2 binding vsi vsi1 # interface Vlanif20 ip address 192.168.1.1 255.255.255.0 mpls mpls ldp # interface Vlanif40 ip address 192.168.2.1 255.255.255.0 mpls mpls ldp # interface GigabitEthernet1/0/0 port link-type trunk port trunk allow-pass vlan 20 # interface GigabitEthernet2/0/0 port link-type trunk port trunk allow-pass vlan 40 # interface GigabitEthernet3/0/0 port link-type trunk port trunk allow-pass vlan 10 # interface LoopBack1 ip address 1.1.1.9 255.255.255.255 # ospf 1 area 0.0.0.0 network 1.1.1.9 0.0.0.0 network 192.168.1.0 0.0.0.255 network 192.168.2.0 0.0.0.255 # return
PE2的配置文件
# sysname PE2 # vlan batch 20 30 # mpls lsr-id 2.2.2.9 mpls # mpls l2vpn # vsi vsi1 static pwsignal ldp vsi-id 1 peer 1.1.1.9 peer 3.3.3.9 # mpls ldp # interface Vlanif20 ip address 192.168.1.2 255.255.255.0 mpls mpls ldp # interface Vlanif30 ip address 192.168.3.1 255.255.255.0 mpls mpls ldp # interface GigabitEthernet1/0/0 port link-type trunk port trunk allow-pass vlan 20 # interface GigabitEthernet2/0/0 port link-type trunk port trunk allow-pass vlan 30 # interface LoopBack1 ip address 2.2.2.9 255.255.255.255 # ospf 1 area 0.0.0.0 network 2.2.2.9 0.0.0.0 network 192.168.1.0 0.0.0.255 network 192.168.3.0 0.0.0.255 # return
PE3的配置文件
# sysname PE3 # vlan batch 30 40 50 60 # mpls lsr-id 3.3.3.9 mpls # mpls l2vpn # vsi vsi1 pwsignal ldp vsi-id 1 peer 1.1.1.9 upe peer 2.2.2.9 upe bgp-ad vpls-id 192.168.0.0:1 vpn-target 100:1 import-extcommunity vpn-target 100:1 export-extcommunity # mpls ldp # interface Vlanif30 ip address 192.168.3.2 255.255.255.0 mpls mpls ldp # interface Vlanif40 ip address 192.168.2.2 255.255.255.0 mpls mpls ldp # interface Vlanif50 ip address 192.168.4.2 255.255.255.0 mpls mpls ldp # interface Vlanif60 ip address 192.168.5.2 255.255.255.0 mpls mpls ldp # interface GigabitEthernet1/0/0 port link-type trunk port trunk allow-pass vlan 50 # interface GigabitEthernet2/0/0 port link-type trunk port trunk allow-pass vlan 30 # interface GigabitEthernet3/0/0 port link-type trunk port trunk allow-pass vlan 60 # interface GigabitEthernet4/0/0 port link-type trunk port trunk allow-pass vlan 40 # interface LoopBack1 ip address 3.3.3.9 255.255.255.255 # bgp 100 peer 4.4.4.9 as-number 100 peer 4.4.4.9 connect-interface LoopBack1 peer 5.5.5.9 as-number 100 peer 5.5.5.9 connect-interface LoopBack1 # ipv4-family unicast undo synchronization peer 4.4.4.9 enable peer 5.5.5.9 enable # l2vpn-ad-family policy vpn-target peer 4.4.4.9 enable peer 5.5.5.9 enable # ospf 1 area 0.0.0.0 network 3.3.3.9 0.0.0.0 network 192.168.2.0 0.0.0.255 network 192.168.3.0 0.0.0.255 network 192.168.4.0 0.0.0.255 network 192.168.5.0 0.0.0.255 # return
PE4的配置文件
# sysname PE4 # vlan batch 60 70 # mpls lsr-id 4.4.4.9 mpls # mpls l2vpn # vsi vsi1 bgp-ad vpls-id 192.168.0.0:1 vpn-target 100:1 import-extcommunity vpn-target 100:1 export-extcommunity # mpls ldp # interface Vlanif60 ip address 192.168.5.1 255.255.255.0 mpls mpls ldp # interface Vlanif70 ip address 192.168.6.2 255.255.255.0 mpls mpls ldp # interface GigabitEthernet2/0/0 port link-type trunk port trunk allow-pass vlan 70 # interface GigabitEthernet3/0/0 port link-type trunk port trunk allow-pass vlan 60 # interface LoopBack1 ip address 4.4.4.9 255.255.255.255 # bgp 100 peer 3.3.3.9 as-number 100 peer 3.3.3.9 connect-interface LoopBack1 peer 5.5.5.9 as-number 100 peer 5.5.5.9 connect-interface LoopBack1 # ipv4-family unicast undo synchronization peer 3.3.3.9 enable peer 5.5.5.9 enable # l2vpn-ad-family policy vpn-target peer 3.3.3.9 enable peer 5.5.5.9 enable # ospf 1 area 0.0.0.0 network 4.4.4.9 0.0.0.0 network 192.168.5.0 0.0.0.255 network 192.168.6.0 0.0.0.255 # return
PE5的配置文件
# sysname PE5 # vlan batch 50 70 80 # mpls lsr-id 5.5.5.9 mpls # mpls l2vpn # vsi vsi1 bgp-ad vpls-id 192.168.0.0:1 vpn-target 100:1 import-extcommunity vpn-target 100:1 export-extcommunity # mpls ldp # interface Vlanif50 ip address 192.168.4.1 255.255.255.0 mpls mpls ldp # interface Vlanif70 ip address 192.168.6.1 255.255.255.0 mpls mpls ldp # interface Vlanif80 l2 binding vsi vsi1 # interface GigabitEthernet1/0/0 port link-type trunk port trunk allow-pass vlan 50 # interface GigabitEthernet2/0/0 port link-type trunk port trunk allow-pass vlan 70 # interface GigabitEthernet3/0/0 port link-type trunk port trunk allow-pass vlan 80 # interface LoopBack1 ip address 5.5.5.9 255.255.255.255 # bgp 100 peer 3.3.3.9 as-number 100 peer 3.3.3.9 connect-interface LoopBack1 peer 4.4.4.9 as-number 100 peer 4.4.4.9 connect-interface LoopBack1 # ipv4-family unicast undo synchronization peer 3.3.3.9 enable peer 4.4.4.9 enable # l2vpn-ad-family policy vpn-target peer 3.3.3.9 enable peer 4.4.4.9 enable # ospf 1 area 0.0.0.0 network 5.5.5.9 0.0.0.0 network 192.168.4.0 0.0.0.255 network 192.168.6.0 0.0.0.255 # return
CE1的配置文件
# sysname CE1 # vlan batch 10 # interface Vlanif10 ip address 192.168.10.1 255.255.255.0 # interface GigabitEthernet1/0/0 port link-type trunk port trunk allow-pass vlan 10 # return
CE2的配置文件
# sysname CE2 # vlan batch 80 # interface Vlanif80 ip address 192.168.10.2 255.255.255.0 # interface GigabitEthernet3/0/0 port link-type trunk port trunk allow-pass vlan 80 # return