前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >我愿意成为你BGP的邻居,为你传递每一条路径,直到永远。基于华为ENSP的BGP的联邦、路由反射器深入浅出

我愿意成为你BGP的邻居,为你传递每一条路径,直到永远。基于华为ENSP的BGP的联邦、路由反射器深入浅出

作者头像
盛透侧视攻城狮
发布2025-02-02 21:21:11
发布2025-02-02 21:21:11
7500
代码可运行
举报
运行总次数:0
代码可运行

本篇技术博文摘要 🌟

  • 路由反射器概述
    • 角色定义:介绍了路由反射器(RR)及其客户端(Client)的角色与关系,RR作为中心节点,负责在BGP网络中反射路由信息。
    • 路由反射器的反射规则:通过多个示例,阐明了路由反射器在路由传播中的反射规则,并举例说明了如何配置路由反射器。
    • 路由反射器的防环机制:进一步讨论了如何利用起源者ID和簇列表防止BGP环路的产生,确保路由的有效性与安全性。
  • 路由反射器组网方案
    • 备份RR组网:探讨了如何在网络中构建备份RR方案,强调了RR设备间必须共享相同的簇ID,保证网络的冗余和容错能力。
    • 多集群路由反射器组网:介绍了如何在一个网络中部署多个RR集群,以实现更复杂的路由设计和优化。
  • BGP联邦
    • AS号码的应用与配置:讲解了BGP联邦中的AS号码的特殊作用,如何有效管理和配置AS号,以优化路由信息的传播。
    • EBGP水平分割与AS-Path机制:结合AS-Path机制与EBGP水平分割,阐述了它们如何共同作用于BGP路由选择,提供更好的可控性与灵活性。
    • BGP联邦配置实战:通过具体的配置实例(包括R1至R6的配置示例),展示了如何实际操作与部署BGP联邦,提升网络的效率与稳定性。

1.BGP中路由反射器

  • BGP路由在AS内部职能传递一跳
image-20230330030639351
image-20230330030639351

1.1 角色:

RR---路由反射器

  • RR就好比是一面镜子,可以将自己收到的BGP路由信息反射给其他BGP对等体
Client----RR客户端

  • 所有设备都可以是RR的客户端,但是这件事情需要由RR来指定。
  • 只有RR的IBGP对等体才可以称为其的客户

  • 我们将RR与其的客户端所构成的系统称为路由反射簇,每一个路由反射簇都将使用RR的RID作为簇ID,来标识不同的反射簇

1.2路由反射器的反射规则

  • 如果RR从自己的非客户端收到一条IBGP路由信息,则可以转发给自己的客户端
  • 如果RR从自己的客户端收到一条IBGP路由信息,则可以转发给自己的所有非客户和除了路由发来的客户
  • 如果RR从自己的EBGP对等体学习到一条路由信息,则可以转发给所有人
  • RR只能将自己身上可用且优的路由信息进行反射。
反射规则示例(1)

  • 如果路由反射器从自己的非客户对等体学习到一条IBGP路由,则它会将该路由反射给所有客户。

  • 如果路由反射器从自己的客户学习到一条IBGP路由,则它会将该路由反射给所有非客户,以及除了该客户之外的其他所有客户。
反射规则示例(2)
注意:

  • 此处“发送”指的是传统情况下(相当于RR不存在的场景下)的BGP路由传递行为,而“反射”指的是遵循路由反射规则的情况下,RR执行的路由传递动作,被反射出去的路由会被RR插入特殊的路径属性。
路由反射器指定RR配置示例:
image-20240514211811926
image-20240514211811926
代码语言:javascript
代码运行次数:0
复制
[r3-bgp]peer 2.2.2.2 reflect-client   ---将R2指定为本地的RR客户
路由反射器的进步性

  • 路由反射器的出现,解决了IBGP路由传输的问题,打破了IBGP水平分割原理。
  • IBGP水平分割原理是为了防止BGP出现环路所设计的,打破会存在环路隐患

1.3路由反射器场景下的防环

image-20221012205639893
image-20221012205639893
起源者ID

  • 当一条BGP路由被RR反射给其他路由器时,如果这条路由已经携带了起源者ID属性,则保留该属性
  • 否则由RR设备为这条路由信息添加起源者ID属性,并且将该属性的数值设定为本地AS内的始发路由器的RID
image-20230330161649363
image-20230330161649363

  • 路由器从IBGP对等体收到一条IBGP路由,并且该路由所携带的起源者ID属性与本地的BGP RID相同时,则会意识到该路由信息是从本地始发的信息,将忽略这条路由信息的更新。从而避免环路
  • 该属性参数,只会在AS内部进行传递,不会传递出AS。
簇列表
image-20230331102626869
image-20230331102626869

  • 当一条BGP路由被路由反射器执行反射时,如果这条路由已经存在簇列表属性,那么路由反射器将本地的簇ID附加到路由的簇列表属性之前。而如果这条路由并不存在簇列表属性,那么RR会为这条路由信息创建一个簇列表属性并将本地的簇ID添加到簇列表中
  • 当一台路由反射器收到BGP路由时,若发现该路由携带簇列表,并且簇列表中包含自己本地的簇ID,则忽略这条路由信息的更新。----防环效果类似于AS_Path属性。
注意

  • 当RR从EBGP学习一条路由,并传递给自己的IBGP对等体时,不会创建起源者ID和簇列表属性,因为这本质上不是路由反射行为。
  • 这两个属性只会在AS内传递,传出AS时,这两个属性会被删除。
  • 当路由反射器执行路由反射时,除了这两个属性,其他路径属性都不会修改

2.反射器组网方案

2.1备份RR组网

image-20230331145241950
image-20230331145241950

  • 当客户端1从EBGP对等体收到一条BGP路由时,它将通过IBGP向RR1和RR2通告这条路由。
  • RR1和RR2在收到该更新路由后,将本地的簇ID添加到簇列表当中,然后向其他客户端反射,同时RR1和RR2相互反射。
  • RR1和RR2收到相互反射路由时,检查簇列表,发现与自己的簇ID相同。故忽略对端的路由更新,避免环路问题。

2.2如果要构建备份RR组网,所有的RR设备必须使用相同的簇ID

代码语言:javascript
代码运行次数:0
复制
[r2-bgp]reflector cluster-id 2.2.2.2  ---在RR上配置,配置后,会覆盖原有的簇ID,使用2.2.2.2为新的簇ID数值。

2.3多集群路由反射器组网

  • 让反射簇的RR之间建立IBGP对等体关系

3.BGP联邦

3.1BGP联邦中AS号码的奥妙

image-20230403014022615
image-20230403014022615

  • 真实的AS 3456被称为联邦AS号。
  • 而联邦AS内部所细化的小的AS号,被称为成员AS号。
  • 成员AS号必须是私有AS号。---->私有AS号:64512-65534
  • 成员AS之间的EBGP对等体关系是一种特殊的EBGP对等体,被称为联邦EBGP邻居关系。
注意:

  • 联邦AS内部的成员AS对于联邦外部而言是不可见的

3.2EBGP水平分割机制AS-Path 的相辅相成

  • EBGP水平分割机制是依靠AS-Path属性完成,其记录了路由所经过的所有AS,而对于联邦AS而言,在联邦AS内部传递时,正常携带成员AS号用于防环,在传出联邦AS时,将成员AS号移除,正常添加联邦AS号

3.3BGP联邦配置实战

补充:

  • 在大型BGP网络中,路由反射器是作为联邦技术的补充技术共同使用。
  • 原因在于:联邦中的成员AS若为单线连接,只能存在两台设备,若单线存在多台设备,又会发生成员AS内部的IBGP水平分割现象
image-20240516204009044
image-20240516204009044
R1:
代码语言:javascript
代码运行次数:0
复制
[r1]bgp 100
[r1-bgp]router-id 1.1.1.1
[r1-bgp]peer 10.1.13.3 as-number 3456  ----使用联邦AS号建立BGP对等体,原因在于对于R1而言,并不知道成员AS的内容。
R3:
代码语言:javascript
代码运行次数:0
复制
[r3]bgp 64512  ----联邦成员设备启动时,使用成员AS号启动。

[r3-bgp]router-id 3.3.3.3[r3-bgp]confederation id 3456  ---定义联邦AS号

[r3-bgp]peer 10.1.13.1 as-number 100

[r3-bgp]peer 4.4.4.4 as-number 64512  ----联邦成员之间建立IBGP对等体关系时使用成员AS号

[r3-bgp]peer 4.4.4.4 connect-interface LoopBack 0

[r3-bgp]peer 4.4.4.4 next-hop-local
R4:
代码语言:javascript
代码运行次数:0
复制
[r4]bgp 64512

[r4-bgp]router-id 4.4.4.4

[r4-bgp]confederation id 3456

[r4-bgp]peer 3.3.3.3 as-number 64512	

[r4-bgp]peer 3.3.3.3 connect-interface LoopBack 0

[r4-bgp]confederation peer-as 64513  ---在联邦EBGP对等体关系的设备上进行指定,告知设备与自己
建邻的成员AS号;如果不指定,则邻居关系无法正常建立。

[r4-bgp]peer 5.5.5.5 as-number 64513

[r4-bgp]peer 5.5.5.5 connect-interface LoopBack 0

[r4-bgp]peer 5.5.5.5 ebgp-max-hop  ---修改为最大值,因为在一个AS内部,无法确定建邻所需要经过的跳数
R5:
代码语言:javascript
代码运行次数:0
复制
[r5]bgp 64513

[r5-bgp]router-id 5.5.5.5

[r5-bgp]confederation id 3456

[r5-bgp]confederation peer-as 64512

[r5-bgp]peer 4.4.4.4 as-number 64512	

[r5-bgp]peer 4.4.4.4 connect-interface LoopBack 0

[r5-bgp]peer 4.4.4.4 ebgp-max-hop 

[r5-bgp]peer 4.4.4.4 next-hop-local

[r5-bgp]peer 6.6.6.6 as-number 64513

[r5-bgp]peer 6.6.6.6 connect-interface LoopBack 0

[r5-bgp]peer 6.6.6.6 next-hop-local

[r5-bgp]peer 10.1.25.2 as-number 200
R6:
代码语言:javascript
代码运行次数:0
复制
[r6]bgp 64513

[r6-bgp]router-id 6.6.6.6

[r6-bgp]confederation id 3456

[r6-bgp]peer 5.5.5.5 as-number 64513

[r6-bgp]peer 5.5.5.5 connect-interface LoopBack 0
R2:
代码语言:javascript
代码运行次数:0
复制
[r2]bgp 200

[r2-bgp]router-id 2.2.2.2

[r2-bgp]peer 10.1.25.5 as-number 3456
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2025-02-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 本篇技术博文摘要 🌟
  • 1.BGP中路由反射器
    • 1.1 角色:
      • RR---路由反射器
      • Client----RR客户端
    • 1.2路由反射器的反射规则
      • 路由反射器指定RR配置示例:
      • 路由反射器的进步性
    • 1.3路由反射器场景下的防环
      • 起源者ID
      • 簇列表
  • 2.反射器组网方案
    • 2.1备份RR组网
    • 2.2如果要构建备份RR组网,所有的RR设备必须使用相同的簇ID。
    • 2.3多集群路由反射器组网
  • 3.BGP联邦
    • 3.1BGP联邦中AS号码的奥妙
    • 3.2EBGP水平分割机制 与AS-Path 的相辅相成
    • 3.3BGP联邦配置实战
      • R1:
      • R3:
      • R4:
      • R5:
      • R6:
      • R2:
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档