HCIP-15.2.11 BGP路由聚合(下)
BGP路由聚合方法 – 自动聚合
自动聚合只对引入BGP的路由进行聚合,聚合到自然网段(主类网段)后,发送给邻居。
R2:
bgp 200
summary automatic
dis routing-table 10.0.0.0
#
Aggregator:AS200 ,Aggregator ID:10.2.2.2
# 在AS200聚合的,聚合路由器ID 10.2.2.2
BGP路由聚合方法 – 手动聚合
如图所示,AS100内有4个用户网段,既有通过import方式引入BGP的路由,又有通过Network方式引入的BGP路由。AS200连接了一个Clinet AS,该AS内路由器处理能力较低,因此既希望能访问AS100与AS200内的网段,又不希望接收过多的路由,如何解决该问题?
手动聚合对BGP本地路由表里存在的路由进行聚合,并且能指定聚合路由的掩码。
配置示例:
R2:
bgp 200
aggregate 10.2.0.0 16 # 默认放行BGP路由表里面存在的所有明细路由
#
aggregate 10.2.0.0 16 detail-suppressed # 抑制所有明细路由
#
ip ip-prefix BB per 10.2.0.0 16 gr 25 le 32
#
route-policy AA per no 10
if-match ip-prefix BB
bgp 200
aggregate 10.2.0.0 16 detail-suppressed suppress-policy AA
# 将/25到/32的路由抑制,其他明细路由(10.2.0.0/24)传递过去
手动聚合放行明细路由的原因:
- 放行明细路由并不是将所有的明细都放行,只将BGP转发表里有的或suppress-policy未匹配的放行。
- 部分明细路由放行是为了区分业务,方便对端AS部署路由策略选路
注意:聚合路由会丢失部分属性(AS_Path、团体属性),因为明细路由来自多个AS,且明细路由的属性值不一致,将多条明细路由汇总成一条时,容易丢失部分属性。
BGP路由汇总带来的问题 – 潜在环路
潜在环路 – 解决办法
为了解决BGP路由聚合带来的问题,设置了两个AS_Path属性:
- Atomic-Aggregate(原子聚合属性):公认任意属性,用于警告下游路由器出现了信息丢失,如图所示,AS200内设置了路由聚合的路由器,在聚合后发生了路径丢失的现象,此时该路由其通过Update报文携带该属性通知自己的邻居发生了路径丢失。
- Aggregator:可选过渡属性,该属性包含发起聚合的路由器的AS号和Router_ID,表明发生聚合的位置。
AS_Path属性有2种类型:
- AS_Sequence:表明AS_Path内的AS号是一个有序的列表。
- AS_Set:表明AS_Path内的AS号是一个无序的列表。
AS_Path本身是一个有序的列表,因为AS_Path每经过一个AS都会将AS号添加到AS_Path中,并且按经过的顺序排列,后经过的追加在最前面(最左面)。
当发生聚合后,如果需要聚合路由携带所有明细路由经过的AS号来防止环路,则在配置聚合命令后添加as-set参数。
R4:
int loo 66
ip add 10.2.66.4 24
#
bgp 100
net 10.2.66.0 24
R5:在R5上做聚合,将聚合后的路由发给R7
bgp 100
aggregate 10.2.0.0 16 as-set detail-suppressed
R7查看结果:
讨论:
聚合路由时携带AS_Path(as-set)的优缺点:
- 优点:避免环路风险。
- 缺点:明细路由震荡,有可能会导致聚合路由频繁刷新(as_path频繁刷新),影响网络的稳定性。
本文链接:https://www.orcy.net.cn/4163.html,转载请附上原文出处链接
发表评论