目录
BGP路由聚合
为什么进行BGP路由聚合
静态聚合
自动聚合
手动聚合
BGP路由聚合
为什么进行BGP路由聚合
1、随着AS的增多,BGP设备路由数量庞大,占用内存,消耗带宽
2、传输的路由条目出现频繁的更新和撤销,对网络的稳定性会造成影响
所以使用BGP路由聚合来解决此问题
静态聚合
静态聚合实现方式
通过配置静态路由进行路由聚合(配置汇总后的黑洞路由),然后再宣告这个汇总后的路由
华为设备配置命令
1、ip route-static 汇总路由网段 汇总路由掩码 Null 0
2、bgp 100
network 汇总路由网段 汇总路由掩码
锐捷设备配置命令
1、ip route 汇总路由网段 汇总路由掩码 Null 0
2、router bgp 100
network 汇总路由网段 mask 汇总路由掩码
特点
- 并不是真正意义上BGP路由汇总,只是通过BGP发布路由的特点来实现了路由汇总的效果
- 此方式进行汇总,明细路由不会被抑制,也会一同传往邻居(需要通过策略将明细过滤)
- 由于宣告的汇总路由是静态配置,此汇总和明细路由其实是没有关系的,因此:
此方式使得汇总路由无法携带明细路由的属性
当明细路由失效时,汇总路由还是存在,倒是汇总路由不能真实的反应网络的现状
自动聚合
如何实现(华为设备独有)
直接在BGP协议的地址族视图下 使用 Summary automatic命令,自动将明细路由汇总
特点
- 只对引入(import)的IGP路由进行聚合,对本地宣告(network)的路由不做聚合
- 明细路由会被抑制,不会优选和发送给邻居
- 只可以对明细路由做主类聚合——因此现网一般不使用此聚合方式
手动聚合
手动聚合实现方式
将本地学习到的BGP路由通过aggregate进行聚合
华为设备配置命令
1、bgp下宣告明细路由 network/import 明细路由 2、bgp下进行手动聚合 aggregate 聚合路由 {detail-suppressed | as-set | attribute-policy | suppress-policy | origin-policy }
as-set
在聚合的路由中添加as-set路径属性,还原明细路由的As_Path属性信息,可以用于防环。
当多个明细路由有不同的As_Path属性时,汇总的as-set遵循以下规则
相同就取一个相同的值,不同的值则全部取
例如:
明细路由1的as_path:1 2 3
明细路由2的as_path:1 4 5
汇总后的as_path: {1 2 3 4 5 }
as-set值与as-path的区别
as-path 有序的,表明路由传递的AS的顺序
as-set {}中的值,代表无序的as_path,也就是as-set
只是用于汇总后的路由防环,并且{}内的AS号无论有多少个,只能算作1个AS长度
注意事项
当策略中配置了As_Path属性,并且aggregate设置了as-set属性,那么策略中的As_Path属性不会生效
detail-suppressed
仅通告聚合路由,抑制明细路由,只向邻居发送聚合后的路由
并且聚合路由不会继承明细路由的团体属性
suppress-policy
指定抑制路由通告的策略名称,对满足ACL或者perfix-list的明细路由做抑制,不满足的明细路由不做抑制
当suppress-policy与detail-suppressed同时存在时,表示选择性的放行部分明细路由,通告给对等体
即suppress-policy优于detail-suppressed
origin-policy
指定允许生成聚合路由的策略名称,对满足ACL或者perfix-list的明细路由生成聚合路由
attribute-policy
指定设置聚合路由的属性策略名称;通过peer route-policy也可以完成此工作
锐捷设备配置命令
1、bgp下宣告明细路由 network/import 明细路由 2、bgp下进行手动聚合 aggregate 聚合路由 {summary-only | suppress-map | as-set | attribute-map | } summary-only 抑制明细路由,仅将汇总路由通告给BGP对等体 suppress-map [路由策略] 将某些路由选择性的抑制掉,不通告给BGP对等体 与summary-only结合之后,表示选择性的放行部分明细路由,通告给对等体 attribute-map 同华为的attribute-policy
特点
- 只要在BGP表中存在的路由都能够被手动汇总
- 可以实现精确汇总,并且支持CIDR(无类域间路由)
- 可以对汇总路由的属性做编辑
- 可以继承明细路由的As_Path属性,防止环路
- 当明细路由全部失效时,汇总路由才会失效
- 默认情况下不抑制明细路由,不携带明细路由的As_Path属性
- 当汇总路由有i和?时,取i作为汇总路由的起源属性