配置VPNv6路由反射器示例
VPN骨干网的PE之间MP-IBGP连接的数量较多时,通过配置反射器优化VPN骨干层,可以减少MP-IBGP连接的数量,减轻PE的负担。
组网需求
在IPv6 VPN骨干网上,如果PE两两之间需要建立的VPNv6对等体数目很多,配置的工作量会很大并且PE的负担也会加大,为此可以在骨干网中选择一台VPNv6路由反射器RR(可以为P设备、PE设备等)。部署了VPNv6路由反射器后,其他的PE只需要与该RR建立VPNv6对等体关系,这将会大大减少配置的工作量,减轻PE的负担。
为了增加带有路由反射器组网的可靠性,可以配置两台RR互为备份。
如图8-24,设备PE1、PE2、RR1都在骨干网AS100内。CE1和CE2属于vpna。要求选择设备RR1作为反射器,配置带有一台反射器的IPv6 VPN网络。
配置思路
本例配置主要思路是:
PE与反射器RR之间建立MP-IBGP连接;PE之间不再建立MP-IBGP连接。
PE与CE之间建立EBGP连接。
骨干网上PE与RR之间建立LDP LSP。
RR接收所有的VPNv6路由信息,不对它们进行VPN Target过滤。
数据准备
完成本例配置需准备如下数据:
PE及RR1上的MPLS LSR-ID
PE1和PE2上创建的VPN实例的名称、VPN实例IPv6地址族下的RD及VPN Target
PE与CE之间交换路由的路由协议,本例使用EBGP
操作步骤
- 配置各接口的IP地址,具体配置请参见后面的配置文件
- 在MPLS骨干网配置IGP,实现骨干网上各设备之间能相互学习到Loopback接口路由
本例使用OSPF,具体配置略。
配置完成后,各设备上运行命令display ip routing-table,可以查看到已学习到其他设备的Loopback接口路由。
# 以PE1的显示为例:
<PE1> display ip routing-table
Route Flags: R - relay, D - download to fib, T - to vpn-instance, B - black hole route ------------------------------------------------------------------------------
Routing Tables: _public_
Destinations : 11 Routes : 11
Destination/Mask Proto Pre Cost Flags NextHop Interface
1.1.1.9/32 Direct 0 0 D 127.0.0.1 InLoopBack0
2.2.2.9/32 OSPF 10 1 D 10.10.2.2 GigabitEthernet1/0/0
3.3.3.9/32 OSPF 10 3 D 10.10.2.2 GigabitEthernet1/0/0
10.10.2.0/24 Direct 0 0 D 10.10.2.1 GigabitEthernet1/0/0
10.10.2.1/32 Direct 0 0 D 127.0.0.1 GigabitEthernet1/0/0
10.10.2.255/32 Direct 0 0 D 127.0.0.1 GigabitEthernet1/0/0
10.20.3.0/24 OSPF 10 2 D 10.10.2.2 GigabitEthernet1/0/0
127.0.0.0/8 Direct 0 0 D 127.0.0.1 InLoopBack0
127.0.0.1/32 Direct 0 0 D 127.0.0.1 InLoopBack0
127.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0
255.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0
- MPLS骨干网上全局及接口下使能MPLS、MPLS LDP,建立RR1与PE之间的LDP LSP
在PE1、RR1、PE2全局及公网接口下使能MPLS、MPLS LDP,具体配置请参见后面的配置文件。
配置完成后,在各PE和RR1设备上执行display mpls ldp session命令可以看到显示结果中Session State项为“Operational”,说明与LDP邻居的对等体会话已建立。
# 以RR1的显示为例:
<RR1> display mpls ldp session
LDP Session(s) in Public Network Codes: LAM(Label Advertisement Mode), SsnAge Unit(DDDD:HH:MM) A '*' before a session means the session is being deleted.
----------------------------------------------------------------------
PeerID Status LAM SsnRole SsnAge KASent/Rcv
----------------------------------------------------------------------
1.1.1.9:0 Operational DU Active 0000:00:02 11/11
3.3.3.9:0 Operational DU Passive 0000:00:01 8/8
----------------------------------------------------------------------
TOTAL: 2 session(s) Found.
- 在PE设备上配置支持IPv6地址族的VPN实例
具体配置过程请参见配置基本BGP/MPLS IPv6 VPN示例。此处不再赘述。
- 在PE与CE之间建立EBGP对等体关系,引入VPN路由
具体配置过程请参见配置基本BGP/MPLS IPv6 VPN示例。此处不再赘述。
配置完成后,PE上运行命令display bgp vpnv6 vpn-instance peer可以查看到PE与CE之间的EBGP对等体关系已达到Established状态。
# 以PE1显示信息为例。
<PE1> display bgp vpnv6 vpn-instance vpna peer BGP local router ID : 1.1.1.9 Local AS number : 100 Total number of peers : 1 Peers in established state : 1 Peer V AS MsgRcvd MsgSent OutQ Up/Down State PrefRcv 2001:db8:1::1 4 65410 1385 1392 0 17:39:46 Established 1
- 建立PE与反射器RR1之间的VPNv6对等体关系
# 配置PE1。
<PE1> system-view
[~PE1] bgp 100
[*PE1-bgp] peer 2.2.2.9 as-number 100
[*PE1-bgp] peer 2.2.2.9 connect-interface loopback 1
[*PE1-bgp] ipv6-family vpnv6
[*PE1-bgp-af-vpnv6] peer 2.2.2.9 enable
[*PE1-bgp-af-vpnv6] quit
[*PE1-bgp] quit
[*PE1] commit
# 配置RR1。
<RR1> system-view
[~RR1] bgp 100
[*RR1-bgp] peer 1.1.1.9 as-number 100
[*RR1-bgp] peer 1.1.1.9 connect-interface loopback 1
[*RR1-bgp] peer 3.3.3.9 as-number 100
[*RR1-bgp] peer 3.3.3.9 connect-interface loopback 1
[*RR1-bgp] ipv6-family vpnv6
[*RR1-bgp-af-vpnv6] peer 1.1.1.9 enable
[*RR1-bgp-af-vpnv6] peer 3.3.3.9 enable
[*RR1-bgp-af-vpnv6] quit
[*RR1-bgp] quit
[*RR1] commit
PE2的配置与PE1的配置类似,具体配置请参见后面的配置文件。
配置完成后,在PE或RR1上执行display bgp vpnv6 all peer命令,可以看到PE与反射器之间的IBGP对等体关系已达到Established状态。
# 以RR1显示信息为例。
[~RR1] display bgp vpnv6 all peer BGP local router ID : 2.2.2.9 Local AS number : 100 Total number of peers : 2 Peers in established state : 2 Peer V AS MsgRcvd MsgSent OutQ Up/Down State PrefRcv 1.1.1.9 4 100 1263 1530 0 19:46:01 Established 1 3.3.3.9 4 100 1170 1109 0 17:50:26 Established 1
- 在RR1上配置VPNv6路由反射功能
# 配置RR1。
[~RR1] bgp 100
[*RR1-bgp] ipv6-family vpnv6
[*RR1-bgp-af-vpnv6] reflector cluster-id 100
[*RR1-bgp-af-vpnv6] peer 1.1.1.9 reflect-client
[*RR1-bgp-af-vpnv6] peer 3.3.3.9 reflect-client
[*RR1-bgp-af-vpnv6] peer 1.1.1.9 next-hop-local
[*RR1-bgp-af-vpnv6] peer 3.3.3.9 next-hop-local
[*RR1-bgp-af-vpnv6] undo policy vpn-target
[*RR1-bgp-af-vpnv6] quit
[*RR1-bgp] quit
[*RR1] commit
- 检验配置结果
PE上运行命令display ipv6 routing-table vpn-instance可以查看到PE已经学到了去往远端VPN站点的路由,并且路由迭代到的出接口指向RR。
# 以PE1的显示为例:
[~PE1] display ipv6 routing-table vpn-instance vpna
Routing Table : vpna Destinations : 4 Routes : 4 Destination : 2001:db8:1:: PrefixLength : 64 NextHop : 2001:db8:1::2 Preference : 0 Cost : 0 Protocol : Direct RelayNextHop : :: TunnelID : 0x0 Interface : GigabitEthernet2/0/0 Flags : D Destination : 2001:db8:1::2 PrefixLength : 128 NextHop : ::1 Preference : 0 Cost : 0 Protocol : Direct RelayNextHop : :: TunnelID : 0x0 Interface : GigabitEthernet2/0/0 Flags : D Destination : 2001:db8:2:: PrefixLength : 64 NextHop : ::FFFF:2.2.2.9 Preference : 255 Cost : 0 Protocol : IBGP RelayNextHop : ::FFFF:10.10.2.2 TunnelID : 0xa0010080 Interface : GigabitEthernet1/0/0 Flags : RD Destination : FE80:: PrefixLength : 10 NextHop : :: Preference : 0 Cost : 0 Protocol : Direct RelayNextHop : :: TunnelID : 0x0 Interface : NULL0 Flags : D
由于PE1与PE2之间没有配置VPNv6对等体关系,CE1与CE2也可以相互ping通,说明VPNv6路由反射器配置成功。
配置文件
PE1的配置文件
#
sysname PE1
#
ip vpn-instance vpna
ipv6-family
route-distinguisher 100:1
apply-label per-instance
vpn-target 1:1 export-extcommunity
vpn-target 1:1 import-extcommunity
#
mpls lsr-id 1.1.1.9
#
mpls
#
mpls ldp
#
interface GigabitEthernet1/0/0
undo shutdown
ip address 10.10.2.1 255.255.255.0
mpls
mpls ldp
#
interface GigabitEthernet2/0/0
undo shutdown
ipv6 enable
ip binding vpn-instance vpna
ipv6 address 2001:db8:1::2/64
#
interface LoopBack1
ip address 1.1.1.9 255.255.255.255
#
bgp 100
peer 2.2.2.9 as-number 100
peer 2.2.2.9 connect-interface LoopBack1
#
ipv4-family unicast
undo synchronization peer 2.2.2.9 enable
#
ipv6-family vpnv6
policy vpn-target
peer 2.2.2.9 enable
#
ipv6-family vpn-instance vpna
peer 2001:db8:1::1 as-number 65410
import-route direct
#
ospf 1
area 0.0.0.0
network 1.1.1.9 0.0.0.0
network 10.10.2.0 0.0.0.255
#
return
RR1的配置文件
#
sysname RR1
#
mpls lsr-id 2.2.2.9
#
mpls
#
mpls ldp
#
interface GigabitEthernet1/0/0
undo shutdown
ip address 10.10.2.2 255.255.255.0
mpls
mpls ldp
#
interface GigabitEthernet2/0/0
undo shutdown
ip address 10.20.3.1 255.255.255.0
mpls
mpls ldp
#
interface LoopBack1
ip address 2.2.2.9 255.255.255.255
#
bgp 100
peer 1.1.1.9 as-number 100
peer 1.1.1.9 connect-interface LoopBack1
peer 3.3.3.9 as-number 100
peer 3.3.3.9 connect-interface LoopBack1
#
ipv4-family unicast
undo synchronization peer 1.1.1.9 enable
peer 3.3.3.9 enable
#
ipv6-family vpnv6
reflector cluster-id 100
undo policy vpn-target
peer 1.1.1.9 enable
peer 1.1.1.9 reflect-client
peer 1.1.1.9 next-hop-local
peer 3.3.3.9 enable
peer 3.3.3.9 reflect-client
peer 3.3.3.9 next-hop-local
#
ospf 1
area 0.0.0.0
network 10.10.2.0 0.0.0.255
network 10.20.3.0 0.0.0.255
network 2.2.2.9 0.0.0.0
#
return
PE2的配置文件
#
sysname PE2
#
ip vpn-instance vpna
ipv6-family
route-distinguisher 100:1
apply-label per-instance
vpn-target 1:1 export-extcommunity
vpn-target 1:1 import-extcommunity
#
mpls lsr-id 3.3.3.9
#
mpls
#
mpls ldp
#
interface GigabitEthernet1/0/0
undo shutdown
ip address 10.20.3.2 255.255.255.0
mpls
mpls ldp
#
interface GigabitEthernet2/0/0
undo shutdown
ipv6 enable
ip binding vpn-instance vpna
ipv6 address 2001:db8:2::2/64
#
interface LoopBack1
ip address 3.3.3.9 255.255.255.255
#
bgp 100
peer 2.2.2.9 as-number 100
peer 2.2.2.9 connect-interface LoopBack1
#
ipv4-family unicast
undo synchronization peer 2.2.2.9 enable
#
ipv6-family vpnv6
policy vpn-target
peer 2.2.2.9 enable
#
ipv6-family vpn-instance vpna
peer 2001:db8:2::1 as-number 65420
import-route direct
#
ospf 1
area 0.0.0.0
network 3.3.3.9 0.0.0.0
network 10.20.3.0 0.0.0.255
#
return
CE1的配置文件
#
sysname CE1
#
interface GigabitEthernet1/0/0
undo shutdown
ipv6 enable
ipv6 address 2001:db8:1::1/64
#
bgp 65410
router-id 10.10.10.10
peer 2001:db8:1::2 as-number 100
#
ipv6-family unicast
undo synchronization peer 2001:db8:1::2 enable
import-route direct
#
return
CE2的配置文件
#
sysname CE2
#
interface GigabitEthernet1/0/0
undo shutdown
ipv6 enable
ipv6 address 2001:db8:2::1/64
#
bgp 65420
router-id 30.30.30.30
peer 2001:db8:2::2 as-number 100
#
ipv6-family unicast
undo synchronization peer 2001:db8:2::2 enable
import-route direct
#
return