天天看点

【思科】BGP自动汇总和手动汇总的基本分析

实验拓扑:

【思科】BGP自动汇总和手动汇总的基本分析

实验规划:

r1,r2,r3,r4分别属于as100,as200,as300,as400 ,r3分别与r1,r2,r4建立了ebgp邻居关系,r1,r2上分别有2个子接口(模拟网段)。

r1:

f0/0:13.0.0.1/24

l1:172.16.1.1/24

l2:172.16.2.1/24

r2:

f0/0:23.0.0.2/24

l1:172.16.10.1/24

l2:172.15.11.1/24

r3

f1/0:13.0.0.3/24

f0/0:23.0.0.3/24

f0/1:34.0.0.3/24

r4

f0/0:34.0.0.4/24

进行基本配置,建立ebgp邻居关系

r1

router bgp 100

 neighbor 13.0.0.3 remote-as 300

r2

router bgp 200

 neighbor 23.0.0.3 remote-as 300

router bgp 300

 neighbor 13.0.0.1 remote-as 100

 neighbor 23.0.0.2 remote-as 200

 neighbor 34.0.0.4 remote-as 400

router bgp 400

  neighbor 34.0.0.3 remote-as 300

基本配置完成

bgp auto-summary属性,用3种方法来演示

(1)开启auto-summary ,并且宣告172.16.1.0/24这条网段

r1(config)#no int l2

r1(config)#router bgp 100

r1(config-router)#auto-summary

r1(config-router)#network 172.16.1.0 mask 255.255.255.0  

在r3上观察

【思科】BGP自动汇总和手动汇总的基本分析

可以发现,虽然开启了自动汇总,但是r3学习到的仍然是一条明细路由。

(2)开启auto-summary,并且宣告172.16.0.0/16这条网段。

r1(config-router)#network 172.16.0.0 mask 255.255.0.0   

【思科】BGP自动汇总和手动汇总的基本分析

可以发现,r3学习到的是一条汇总路由了。

(3)在r1上以重发布的方式,宣布l1这条直连,不用network的方式

r1(config-router)#redistribute connected metric 1

【思科】BGP自动汇总和手动汇总的基本分析

学习到的是一条汇总路由

可以做出小总结:

bgp的自动汇总,只会汇总重发布引入的路由,以及使用network命令有类宣告方式引入的路由。注意,自动汇总是默认关闭的。

bgp的手动汇总简要分析(summary-only / as-set )

在r1 bgp上network 172.16.1.0/24和172.16.2.0/24这2条路由(不开自动汇总)

 network 172.16.1.0 mask 255.255.255.0

 network 172.16.2.0 mask 255.255.255.0

r3,r4都可以学习到

【思科】BGP自动汇总和手动汇总的基本分析

在r3上汇总这2条路由,可以使用aggregate-address的方式(这里不讨论null0路由)

  aggregate-address 172.16.0.0 255.255.0.0

【思科】BGP自动汇总和手动汇总的基本分析

可以发现,已经多出了一条汇总路由,同时会将这条汇总路由发给r4。

【思科】BGP自动汇总和手动汇总的基本分析

summary-only

如果r3上想只发送这条汇总,不发送明细,可以

r3(config)#router bgp 300 

r3(config-router)#aggregate-address 172.16.0.0 255.255.0.0 summary-only

这时候可以上r4再看一下

【思科】BGP自动汇总和手动汇总的基本分析

明细路由消失了,只剩下一条汇总路由,并且,始发者不是r1,而变成了r3。

as-set

使用bgp的手动汇总,新生成的汇总路由,会丢失被汇总的明细路由的很多属性,以as-path属性为例,r3在发布汇总路由之后,此路由始发者为r3,而不是r1,所以,这条汇总路由同样会被r1学习到,并且还是最优路由。

【思科】BGP自动汇总和手动汇总的基本分析

这时候,就会产生安全隐患了,因为丢失了as-path属性,有可能会出现环路问题。

可以用as-set这条命令,来继承明细路由的部分属性

r3(config-router)#aggregate-address 172.16.0.0 255.255.0.0 summary-only as-set

这时候,在r4和r1上观察出现了哪些变化

【思科】BGP自动汇总和手动汇总的基本分析

可以发现,汇总路由的始发者不是r3了,而是还原成了as100中的r1。

【思科】BGP自动汇总和手动汇总的基本分析

汇总路由消失了,避免了环路问题。