目录

BGP的路由聚合(类似路由汇总)

自动聚合

手工聚合


BGP的路由聚合(类似路由汇总)

自动聚合

        1.抓取流量

[R1]ip ip-prefix aa permit 172.16.0.0 22 greater-equal 24 less-equal 24

        2.制作路由策略

[R1]route-policy aa permit node 10
Info: New Sequence of this List.
[R1-route-policy]if-match ip-prefix aa

         3.在重发布中调用路由策略

[R1-bgp]import-route direct route-policy aa

         4.手动开启自动聚合

[R1-bgp]summary automatic 
Info: Automatic summarization is valid only for the routes imported through the 
import-route command.

注意:

        1.该方法只能针对重发布发布的路由信息生效

        2.自动聚合只能按照主类进行聚合,将造成巨大的路由黑洞,所以华为设备BGP的自动聚合功能默认关闭

        测试

[R1-bgp]display bgp routing-table

 BGP Local router ID is 1.1.1.1 
 Status codes: * - valid, > - best, d - damped,
               h - history,  i - internal, s - suppressed, S - Stale
               Origin : i - IGP, e - EGP, ? - incomplete


 Total Number of Routes: 3
      Network            NextHop        MED        LocPrf    PrefVal Path/Ogn

 *>   172.16.0.0         127.0.0.1                             0      ?
 s>   172.16.1.0/24      0.0.0.0         0                     0      ?
 s>   172.16.2.0/24      0.0.0.0         0                     0      ?

        *>   172.16.0.0         127.0.0.1    --- 通过自动聚合会发布一条新的汇总路由,它不携带子网掩码的,因为按照主类汇总,则子网掩码取主类默认值,而且通过聚合发布的路由信息其下一跳属性为127.0.0.1

注意:

        自动聚合之后,发布的汇总路由信息将在本地路由表总产生一条指向汇总的空接口,自动防环。

        状态码 --- s --- suppressed --- 抑制 --- 抑制理由条目的传递

手工聚合

        因为自动聚合存在两个缺陷,所以,如果需要对汇总进行精准把握时,手工聚合将是更理想的方案。

[R1-bgp]aggregate 172.16.0.0 22 --- 手工聚合

         *>   172.16.0.0/22      127.0.0.1  --- 手工聚合后发布的路由条目将携带路由聚合的掩码信息,并且下一跳也是指向127.0.0.1,则其也会自动生成一条到达汇总网段指向接口的路由进行防环

手工聚合的问题:

        1.发布聚合路由的情况下,不会抑制明细路由,导致汇总操作并没有减少路由条目数量,反而增加了。

        2.在进行汇总的时候,发布的汇总路由不会继承明细路由的属性,油漆是AS_PATH,则将导致汇总路由部分属性缺失,甚至可能出现环路


解决办法:

        为了避免以上两个问题的产生,我们必须在配置过程中增加命令来完成

[R4-bgp]aggregate 172.16.0.0 22 detail-suppressed --- 在发布汇总路由条目的同时将抑制所有的明细路由

        但是,因为bgp协议的一些特殊性,我们汪汪不能将其所有的明细路由全部抑制。只能够抑制部分的路由信息 --- 所有我们需要使用到抑制策略suppressed  - policy

解决手工问题第一个问题(抑制策略):        

                1.抓取流量,使用前缀列表

[R4]ip ip-prefix aa permit 172.16.0.0 22

                2.使用路由策略匹配
 

[R4]route-policy aa permit node 10
Info: New Sequence of this List.
[R4-route-policy]if-match ip-prefix aa

                3.使用抑制策略调用路由策略

[R4-bgp]aggregate 172.16.0.0 22 suppress-policy aa

解决手工问题第二个问题(抑制策略):

        专门设计一个AS_SET关键字,如果在配置命令的时候,将这个关键字激活,则BGP在汇总路由时,将携带上明细的AS_PATH路径属性,来进行防环。

[R4-bgp]aggregate 172.16.0.0 22 suppress-policy aa as-set

         *>   172.16.0.0         127.0.0.1                      0    {1 4 }?--- 如果明细路由携带的AS_PATH属性不一样,则在激活了AS_SET属性后,汇总路由将会把明细路由的AS号都携带上并且大括号括起来,之后,在进行防环的时候,里面所有AS号都将生效,都不能回传。但是,在使用AS_PATH进行选路的时候,当做一个AS来看待

        因为聚合后的路由信息存在属性丢失问题,所以,这样的汇总由需要格外的关注。为此,我们为BGP转引入了两个属性 --- ATOMIC_AGGREGATE,AGGREGATOR

        ATOMIC_AGGREGATE --- 纯粹预警属性 --- 只有在抑制全部明细路由时才会携带

        AGGREGATOR --- 将携带汇总者的RID以及其所在的AS号

Aggregator: AS 2, Aggregator ID 4.4.4.4, Atomic-aggregate

[r4]display bgp routing-table 172.16.0.0 --- 查看一条路由的详细情况