2022-07-25 网工进阶(二十一)BGP-路由反射器、联盟、聚合

BGP路由反射器

IBGP路由学习问题

由于水平分割原则的原因,为了保证中转AS所有的BGP路由器都能学习到完整的BGP路由,就必须在AS内实现IBGP全互联。然而实现IBGP全互联存在诸多短板:

1 路由器需维护大量的TCP及BGP连接,尤其在路由器数量较多时,路由器性能资源占用大。

2 AS内BGP网络的可扩展性较差,配置条目繁琐。

为此可以采用路由反射器技术。

路由反射器角色

RR(Route Reflector):路由反射器

RR会将学习的路由在IBGP中反射出去

Client:RR客户端

接收反射,与路由反射器直连。

No client:非客户端

非客户端之间和路由反射器需建立全互联。

相关命令

配置路由反射器及其客户端(自身为反射器,对等体为客户端)

[R1-bgp]peer 2.2.2.2 reflect-client 

在一个AS中,要建立配置的对等体数量等于n*(n-1)/2,n代表IBGP路由器数量,相应的对等体关系对数则为n*(n-1)/4

路由反射规则

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

如果路由反射器从自己的客户学习到一条IBGP路由,则它会将该路由反射给所有非客户,以及除了该客户之外的其他所有客户。

如果路由学习自EBGP对等体,则发送给所有客户、非客户IBGP对等体。

因此,对于同一反射器情况下,反射器之间需要建立对等体关系,客户端之间不需要建立对等体关系,客户端与非客户端之间也不需要建立对等体关系,非客户端之间则必须建立对等体关系。

路由反射防环机制

RR的设定使得IBGP水平分割原则失效(对等体非直连的情况下无法学习到路由),这就可能导致环路的产生,为此RR会为BGP路由添加两个特殊的路径属性来避免出现环路: Originator_IDCluster_List。Originator_ID和Cluster_List属性都属于可选过渡类型

Originator ID

RR将一条BGP路由进行反射时会在反射出去的路由中增加Originator_ID,其值为本地AS中通告该路由的BGP路由器Router ID

若AS内存在多个RR,则Originator_ID属性由第一个RR创建,并且不被后续的RR(若有)所更改。

当BGP路由器收到一条携带Originator_ID属性的IBGP路由,并且Originator_ID属性值与自身的Router ID相同则它会忽略关于该条路由的更新

路由反射簇列表 (Cluster _list)

路由反射簇包括反射器RR及其Client一个AS内允许存在多个路由反射簇

每一个簇都有唯一的簇ID(Cluster_ID缺省时为RR的BGP Router ID )。

当一条路由被反射器反射后,该RR(该簇)的Cluster_ID就会被添加至路由的Cluster_list属性中。

当RR收到一条携带Cluster_list属性的BGP路由,且该属性值中包含该簇的Cluster_ID时,RR认为该条路由存在环路,因此将忽略关于该条路由的更新

相关命令

配置路由反射器的集群ID(缺省值为RR的Router Id)

[R1-bgp] reflector cluster-id 1.1.1.1

BGP 联盟

BGP联盟是将若干个小型AS组成一个大型AS,小型AS之间采用EBGP的方式连接,组成的大型AS对于外部网络视为一个AS用于解决IBGP中全互联时连接过多的问题。但是由于配置繁琐(改变小型AS配置必须先删除该AS),因此在现网中不常见。

相关命令

配置联盟ID(对外部网络视为一个AS号)

[R5-bgp]confederation id 200

配置联盟中的邻居AS号

[R5-bgp]confederation peer-as 666 777

配置举例

[R5-bgp]dis th
[V200R003C00]
#
bgp 555
 confederation id 200
 confederation peer-as 666 777
 peer 6.6.6.6 as-number 666 
 peer 6.6.6.6 ebgp-max-hop 2 
 peer 6.6.6.6 connect-interface LoopBack0
 peer 7.7.7.7 as-number 777 
 peer 7.7.7.7 ebgp-max-hop 2 
 peer 7.7.7.7 connect-interface LoopBack0
 #
 ipv4-family unicast
  undo synchronization
  network 55.55.55.55 255.255.255.255 
  peer 6.6.6.6 enable
  peer 6.6.6.6 next-hop-local 
  peer 7.7.7.7 enable
  peer 7.7.7.7 next-hop-local 
#
return

BGP 聚合

自动聚合的特性

1 聚合后的路由,只考虑前8位是否一致(不一致那就代表不是一条路由)。

2 只对引入的BGP路由会自动聚合,network宣告进BGP的路由无法执行自动聚合。

3 只对始发与本地的BGP路由聚合会生效,对于通过其他BGP设备传递而来的外部路由聚合不会生效。

4 只将聚合后的路由发布出去,明细路由会被抑制

5 聚合后自动在本地生成一条指向聚合的Null路由(下一跳127.0.0.1)来防止可能出现的环路

6 默认情况BGP设备的自动聚合是关闭的

相关命令

自动聚合

[R1-bgp]summary automatic

手动聚合特性

1 可以在任何设备任何BGP路由进行聚合

2 可以聚合任何属性的路由

相关命令

手动聚合

[R1-bgp]aggregate 1.1.1.0 24

聚合时抑制明细路由(常用)

[R1-bgp]agg 1.1.1.0 24 detail-suppressed

聚合时保留AS-PATH属性,用于防环(常用)

[R1-bgp]aggregate 1.1.1.0 24 as-set

聚合时使用路由策略修改属性

[R1]route-policy 1 permit node 10
[R1-route-policy]apply origin incomplete

[R1-bgp]aggregate 1.1.1.0 24 attribute-policy 1

聚合时使用抑制策略选择需要抑制的路由

[R1-acl-basic-2000]rule 5 permit source 1.1.1.1 32

[R1]route-policy 1 permit node 10
[R1-route-policy]if-match acl 2000

[R1-bgp]aggregate 1.1.1.0 24 suppress-policy 1

原子聚合属性

[R1]display bgp routing-table 11.11.11.0

 BGP local router ID : 1.1.1.1
 Local AS number : 100
 Paths:   1 available, 1 best, 1 select
 BGP routing table entry information of 11.11.11.0/24:
 Aggregated route. 
 Route Duration: 00h00m46s  
 Direct Out-interface: NULL0
 Original nexthop: 127.0.0.1
 Qos information : 0x0
 AS-path Nil, origin incomplete, pref-val 0, valid, local, best, select, active,
 pre 255
 Aggregator: AS 100, Aggregator ID 1.1.1.1, Atomic-aggregate
 Advertised to such 4 peers:
    5.5.5.5
    2.2.2.2
    3.3.3.3
    4.4.4.4

Atomic-aggregate属性:属于公认任意属性,表示该聚合路由的所有明细路由做了抑制,用于告知对等体,原始的明细路由的AS_PATH出现了丢失。

聚合者属性

Aggregator属性:属于可选过渡属性,表示该路由做了聚合,包含聚合路由所在AS号、通告者的RID,如配合原子聚合属性,表示路由信息在何处出现了丢失。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

鹅一只

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值