6.4.5 反射器场景-OptionC2方案

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反射器。

相关推荐

  1. <span style='color:red;'>反射</span>...

    反射...

    2024-03-18 21:00:01      26 阅读
  2. Kotlin反射:深入探索与多场景应用

    2024-03-18 21:00:01       43 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-18 21:00:01       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-18 21:00:01       100 阅读
  3. 在Django里面运行非项目文件

    2024-03-18 21:00:01       82 阅读
  4. Python语言-面向对象

    2024-03-18 21:00:01       91 阅读

热门阅读

  1. Milvus部分源码阅读

    2024-03-18 21:00:01       36 阅读
  2. c++野指针如何处理?

    2024-03-18 21:00:01       41 阅读
  3. 代码随想录阅读笔记-哈希表【四数之和】

    2024-03-18 21:00:01       43 阅读
  4. SQL中的SYSDATE函数

    2024-03-18 21:00:01       41 阅读
  5. python之SimpleNamespace()使用总结

    2024-03-18 21:00:01       40 阅读
  6. leetcode 第126场双周赛第二题

    2024-03-18 21:00:01       40 阅读
  7. Python教程:一文了解Python的异常处理知识

    2024-03-18 21:00:01       39 阅读
  8. 【LAMMPS学习】二、LAMMPS安装(1)Linux安装

    2024-03-18 21:00:01       51 阅读