Address
304 North Cardinal St.
Dorchester Center, MA 02124
Work Hours
Monday to Friday: 7AM - 7PM
Weekend: 10AM - 5PM
Address
304 North Cardinal St.
Dorchester Center, MA 02124
Work Hours
Monday to Friday: 7AM - 7PM
Weekend: 10AM - 5PM
自动聚合只对引入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
如图所示,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)传递过去
手动聚合放行明细路由的原因:
注意:聚合路由会丢失部分属性(AS_Path、团体属性),因为明细路由来自多个AS,且明细路由的属性值不一致,将多条明细路由汇总成一条时,容易丢失部分属性。
为了解决BGP路由聚合带来的问题,设置了两个AS_Path属性:
AS_Path属性有2种类型:
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)的优缺点: