OptionC2方案------反射器场景
场景A-旁挂RR场景
一、配置思路
1、首先跟OptionC2一样,先解决PE之间路由学习需求:
- 但网络中新增了RR反射器,但在C2场景并不一定需要让PE与ASBR设备与RR建立起IBGP邻居。
- ASBR之间建立EBGP发布各自RR环回口地址并引入至IGP协议中。
- 为啥发布的是RR 的环回口?
- 因为主要是通过RR之间建立MP-BGP来交互VPNv4路由,非RR场景下则是通过PE。
2、解决路由黑洞:
- 网络中已经配置了MPLS+LDP协议,与OptionC2一样需要在ASBR上向对端ASBR手动分配标签。
- 以及ASBR需要对引入IGP中的BGP标签路由自动分配标签路径。
3、解决VPNv4路由学习:
- 非RR场景中PE之间建立MP-BGP,但在RR场景中就是RR之间互相建立MP-BGP。
- 以及PE与RR之间 也要建立MP-BGP,才能够通过RR学习到对端PE的VPNv4路由。
4、总结大致操作
- ASBR之间建立EBGP,发布各自RR环回口。
- ASBR向RR以及对端ASBR分配标签。
- ASBR对引入IGP中的BGP标签路由分配标签路径。
- PE与RR、RR与对端RR建立MP-BGP。

二、配置过程
- 目前拓扑中已配置了:
- IGP使用OSPF并发布各自设备环回口地址。
- PE、P、ASBR、RR之间配置了MPLS+LDP实现标签分配与同步。
- CE与PE的VPN实例建立了EBGP邻居。
- P设备不做BGP配置。
1、ASBR之间建立EBGP,发布各自RR环回口:
[ASBR1]bgp 100
[ASBR1-bgp]peer 10.1.12.2 as 200
[ASBR1-bgp]network 4.4.4.4 255.255.255.255
[ASBR2]bgp 200
[ASBR2-bgp]peer 10.1.12.1 as 100
[ASBR2-bgp]network 44.44.44.44 255.255.255.255
查看EBGP邻居是否建立成功
[ASBR1-bgp]dis bgp peer
BGP local router ID : 10.1.111.10
Local AS number : 100
Peer V AS MsgRcvd MsgSent OutQ Up/Down State PrefRcv
10.1.12.2 4 200 3 4 0 00:00:17 Established 1
[ASBR2-bgp]dis bgp peer
BGP local router ID : 10.1.211.10
Local AS number : 200
Peer V AS MsgRcvd MsgSent OutQ Up/Down State PrefRcv
10.1.12.1 4 100 3 3 0 00:00:40 Established 1
2、ASBR向RR以及对端ASBR分配标签:
为了减少篇幅,只以AS100内设备配置为例:
-
ASBR1向对端ASBR2直接分配标签
[ASBR1-route-policy]route-policy mpls permit node 5
[ASBR1-route-policy]apply mpls-label
[ASBR1-route-policy]quit
[ASBR1]bgp 100
[ASBR1-bgp]peer 10.1.12.2 route-policy mpls export
[ASBR1-bgp]peer 10.1.12.2 label-route-capability
3、ASBR对引入IGP中的BGP标签路由分配标签路径:
[ASBR1]mpls
[ASBR1-mpls]lsp-trigger bgp-label-route
[ASBR2]mpls
[ASBR2-mpls]lsp-trigger bgp-label-route
检查PE、RR设备上是否学习到了相应的标签信息。
如PE1、RR1需要学习到对端RR(44.44.44.44)的标签信息:
<PE1>dis mpls lsp
-------------------------------------------------------------------------------
LSP Information: LDP LSP
-------------------------------------------------------------------------------
FEC In/Out Label In/Out IF Vrf Name
44.44.44.44/32 NULL/1028 -/GE0/0/1
44.44.44.44/32 1029/1028 -/GE0/0/1
<RR1>dis mpls lsp
-------------------------------------------------------------------------------
LSP Information: LDP LSP
-------------------------------------------------------------------------------
FEC In/Out Label In/Out IF Vrf Name
44.44.44.44/32 NULL/1028 -/GE0/0/0
44.44.44.44/32 1028/1028 -/GE0/0/0
4、PE与RR、RR与对端RR建立MP-BGP。
为了减少篇幅,只以AS100内设备配置为例:
-
PE与RR建立MP-BGP
[PE1]bgp 100
[PE1-bgp]peer 4.4.4.4 as 100
[PE1-bgp]peer 4.4.4.4 con lo 0
[PE1-bgp]ipv4 vpnv4
[PE1-bgp-af-vpnv4]peer 4.4.4.4 enable -
RR与对端RR建立MP-BGP,以及向PE建立MP-BGP。
undo policy vpn-target ,由于RR上并没有创建VPN实例,故需要关闭该过滤功能
[RR1]bgp 100
[RR1-bgp]peer 44.44.44.44 as 200
[RR1-bgp]peer 44.44.44.44 con lo 0
[RR1-bgp]peer 44.44.44.44 ebgp-max-hop 10
[RR1-bgp]peer 1.1.1.1 as 100
[RR1-bgp]peer 1.1.1.1 con lo 0
[RR1-bgp]ipv4 vpnv4
[RR1-bgp-af-vpnv4]undo policy vpn-target
[RR1-bgp-af-vpnv4]peer 1.1.1.1 enable
[RR1-bgp-af-vpnv4]peer 44.44.44.44 enable
5、完成配置
检查CE设备上是否学习到对端CE的测试路由,以及是否能够互通:
<CE1>display bgp routing-table
BGP Local router ID is 10.1.111.1
Network NextHop MED LocPrf PrefVal Path/Ogn
*> 192.168.10.0 0.0.0.0 0 0 i
*> 192.168.20.0 10.1.111.2 0 100 200 20i
<CE1>ping -a 192.168.10.254 192.168.20.254
PING 192.168.20.254: 56 data bytes, press CTRL_C to break
Reply from 192.168.20.254: bytes=56 Sequence=1 ttl=245 time=270 ms
Reply from 192.168.20.254: bytes=56 Sequence=2 ttl=245 time=100 ms
Reply from 192.168.20.254: bytes=56 Sequence=3 ttl=245 time=80 ms
6、优化转发路径
在没有优化转发路径前的CE1访问CE2时的Tracert信息:
-
因为对端CE2的路由经过的RR1的反射,使得PE1访问CE2时的路由下一跳为RR反射器。
-
CE1在访问CE2时,需要先到RR1上绕一圈再出去,非常浪费链路带宽。
<CE1>tracert -a 192.168.10.254 192.168.20.254
traceroute to 192.168.20.254(192.168.20.254), max hops: 30 ,packet length: 40,press CTRL_C to break
1 10.1.111.2 40 ms 20 ms 20 ms 【PE1】
2 10.1.111.6 100 ms 80 ms 80 ms 【P1】
3 * * * 【RR1】
4 10.1.111.14 90 ms 90 ms 80 ms 【P1】
5 10.1.111.10 120 ms 80 ms 90 ms 【ASBR1】
6 10.1.12.2 110 ms 80 ms 90 ms 【ASBR2】
-
于RR1上配置
next-hop-invariable
,使得RR1在转发ASBR1传来的路由时下一跳不修改成自己的环回口地址:[RR1]bgp 100
[RR1-bgp]ipv4-family vpnv4
[RR1-bgp]peer 1.1.1.1 next-hop-invariable同理,对端RR2也是如此操作
[RR2]bgp 200
[RR2-bgp]ipv4-family vpnv4
[RR2-bgp]peer 11.11.11.11 next-hop-invariable -
配置之后再查看CE1访问CE2的路由,就不会再经过RR反射器了。
<CE1>tracert -a 192.168.10.254 192.168.20.254
traceroute to 192.168.20.254(192.168.20.254), max hops: 30 ,packet length: 40,press CTRL_C to break
1 10.1.111.2 100 ms 40 ms 20 ms 【PE1】
2 10.1.111.6 100 ms 100 ms 80 ms 【P1】
3 10.1.111.10 90 ms 70 ms 80 ms 【ASBR1】
4 10.1.12.2 90 ms 80 ms 80 ms 【ASBR2】
5 10.1.211.9 70 ms 90 ms 80 ms 【P2】
....
注意:该操作也能应用于OptionC1之中实现CE之间互访时不经过RR反射器。