R2,R3,R4上都有一条192.168.X.X/24的路由,现在我在R1上进行汇总路由。
要明确一个事情:auto-summary是什么?
在将路由重分布进BGP时,如果开启auto-summary功能,那么就会进行主类汇总 。
另一点:如果开启auto-summary功能,那么network可以主类宣告,当然产生的路由也是主类路由。
R2,R3,R4都可以学习到这条路由,因为聚合之后丢失了as属性,这条路由是起源于AS1的(产生聚合路由的地方)
通过在R1上show ip bgp 192.168.0.0会发现增加了两个属性:
Automic-aggregate和aggregator:
原子聚合属性表明:丢失了AS属性
聚合者属性表明:聚合者是谁?
首先第一个命令:aggregate-address192.168.0.0 255.255.0.0 as-set
使聚合路由携带所有的AS属性,如果有AS不同,那么会包含在一个大括号中,因为聚合路由包含了AS列表,所以R2,R3,R4并不接受这条路由。
通过在R1上show ip bgp 192.168.0.0,很明显的发现,聚合者属性在,但是原子聚合属性消失了,因为AS存在。
第二条命令:aggregate-address192.168.0.0 255.255.0.0 advertise-map
现在我要求在R1聚合路由的时候,不将聚合路由发送给R2,发给R3,R4该怎么办?
一种方法是聚合路由的时候让聚合路由携带R2的AS号,可以使用这条命令吗?
显然使用这条命令有问题!!
应该要加上as-set,如果没有as-set那么聚合路由是不收集路由属性的!
Advertise-map必须与as-set合用!
第三条命令:aggregate-address192.168.0.0 255.255.0.0 attribute-map
用于修改聚合路由的属性,在写route-map的时候可以不用match路由,直接set。
第四条命令:aggregate-address192.168.0.0 255.255.0.0 route-map
主要作用应该也是修改属性。
第五条命令:aggregate-address192.168.0.0 255.255.0.0 summary-only
仅仅宣告聚合路抑制掉明细路由。
这就引发了一个问题,如果我只想让R4不知道192.168.2.0的路由而R3知道192.168.3.0的路由怎么办?
两种解决方法:
1.在router bgp XX下有反抑制列表:neiX.X.X.X unsuppress-map
2.不使用summary-only而使用suppress-map。
第六条命令:aggregate-address192.168.0.0 255.255.0.0 suppress-map
调用抑制列表抑制掉路由。
注意:summary-only与suppress-map是不能合用的。