BGP防环和路由聚合07
标签(空格分隔): HCIP
命令 | 说明 |
---|---|
summary automatic | 开启自动聚合,缺省关闭 |
aggregate 172.16.0.0 255.255.252.0/22 | 配置手动聚合 |
detail-suppressed | 抑制发布明细路由;默认不抑制 |
as-set | 保留原有明细路由的AS_PATH属性 |
BGP防环机制
AS内(IBGP):水平分割,从IBGP收到的更新不会发布给IBGP(IBGP更新只传一跳)//内部防环
- 从IBGP学习到的路由不会宣告给IBGP
35
图中D收不到路由更新
- 所以如果要解决RTD收不到路由的问题,主要由以下几种解决方法:
- IBGP邻居全互联:配置,维护开销太大
36IBGP邻居全互联
解决方案
-路由反射器(Route-Reflector)
-联盟(Confederation)
AS间(EBGP):AS_Path,BGP更新内的重要属性,代表该路由所经过的AS号,如果接收路由器发现AS号与本地AS号一致,则丢弃.
//外部防环
37AS_Path防环
数字右往左是远到近
会有重复出现的Path属性,涉及到选路规则
BGP路由聚合
38BGP路由聚合的必要性
打包明细,8变2,2变1.
BGP静态聚合
- 通过配置静态路由汇总明细路由,再用network进行宣告
39BGP路由聚合方法-静态
40BGP路由聚合方法静态
BGP自动聚合
- 对引入的IGP路由进行主类掩码聚合.
通过宣告的路由是不满足条件的
- 而原引入的路由被抑制,不会被优选和发布给BGP邻居
命令 | 说明 |
---|---|
summary automatic | 开启自动聚合,缺省关闭 |
41BGP路由聚合方法-自动
42聚合后被抑制的原路由
BGP手动聚合
由于自动聚合只对主类掩码进行聚合,存在缺陷
- 对引入和本地路由进行聚合
- 手动聚合>自动聚合 //如果两个冲突的话,手动优先
命令 | 说明 |
---|---|
aggregate 172.16.0.0 255.255.252.0/22 | 配置手动聚合. 缺省聚合和明细一起发布 |
detail-suppressed | 抑制发布明细路由;默认不抑制 |
as-set | 保留原有明细路由的AS_PATH属性 |
43BGP路由聚合方法-手动
44detail-suppressed 抑制明细路由
BGP聚合问题
有些路由器做聚合,有些路由器不做聚合,此时
45BGP聚合问题
R3发布四条路由(不做聚合),R1学到之后(配置聚合),传递给R2和R4.
问题所在,R1聚合后的路由属于新的路由,会再回给R3(R3并不需要此条聚合路由),并且R3还会学习此条路由
这种情况并不合理,且会产生环路
原因是R3明细发送给R1后,R1汇总路由丢失了原有的AS_PATH编号
此时加上一个参数:as-set ,保留原有明细路由的AS_PATH属性.
[R1-bgp]aggregate 18.1.0.0 22 detail-suppressed as-set
46聚合问题解决
R3 就不会再学习这条路由
明细路由和汇总路由发生在不同的路由器上时,跟上as-set参数,不然后面容易产生问题