BGP路由聚合

在BGP协议中,路由能够分为自动聚合和手支聚合两种。
自动聚合:只对重分布到BGP中的路由生效,自动聚合会聚合到主类网络,这会致使不精确的汇总,咱们不该该在生产环境中使用自动聚合。命令:summary automatic
手工聚合:要求本路由器至少有一条明细路由才能进行手工聚合,而且要使用network通告明细路由。命令:aggregate 。手工聚合后面能够携带一些参数,下面咱们分别就这些参数进行简单的讲解。node

  1. Detail-suppressed:对于华为路由器来说,在进行BGP的手工聚合时,默认不会抑制明细路由,即在手工聚合之后,会将汇总路由和明细路由都通告给邻居。使用Detail-suppressed能够抑制明细路由的通告,只通告汇总路由给邻居。
  2. AS_set:携带路由起源的AS属性,用于防环。当在非明细路由起源的AS聚合路由时,默认会丢弃明细路由的起源AS属性,这样可能致使环路,可添加AS_set属性则会携带明细起源的AS号到路径属性的最右边,若是明细从多个AS产生,明会使用{}括起来。
  3. Attribute-policy:能够更改路由的属性,好比一条路由的起源属性更改成incomplete.
  4. Suppress-policy:抑制策略,若是使用Detail-suppressed则会抑制全部的路由,而使用Suppress-policy则只会抑制被route-policy匹配的路由。
    下面咱们经过实验,来验证一下这些属性。
    拓扑图以下:
    在拓扑中:R4和R2 R3创建IBGP邻居,R1同R2和R3创建直连的EBGP邻居,R1上有三个环回口11.1.1.1/32,11.1.1.2/32,11.1.1.3/32,将它们通告到BGP中。

BGP路由聚合

实验一:自动聚合
在R1上重分布直连,并进行自动聚合
R1:
bgp 100
summary automatic #自动聚合只对重分布的路由生效,对于network的不生效。
import-route direct网络

在R2上查看结果,发现已经能看到这条汇总路由了。
R2:
<R2>display bgp routing-table app

> 11.0.0.0 123.1.1.1 0 100? 已经没有掩码了
> 123.0.0.0 123.1.1.1 0 100?ide

实验二:手工聚合
在默认状况下,手工聚合不抑制明细路由,明细和汇总路由会一块儿通告给邻居。
[R1-bgp]display this
[V200R003C00]
#
bgp 100
router-id 11.1.1.1this

aggregate 11.1.1.0 255.255.255.252
network 11.1.1.1 255.255.255.255
network 11.1.1.2 255.255.255.255
network 11.1.1.3 255.255.255.255 orm

在R1上查看BGP表,发现有明细路由和汇总路由,都是有效且最优的。
[R1-bgp]display bgp routing-table
> 11.1.1.0/30 127.0.0.1 0 i
> 11.1.1.1/32 0.0.0.0 0 0 i
> 11.1.1.2/32 0.0.0.0 0 0 i
> 11.1.1.3/32 0.0.0.0 0 0 irouter

在R2上查看BGP表,能够看到明细,也能够看到汇总路由
<R2>display bgp routing-table
> 11.1.1.0/30 123.1.1.1 0 100i
> 11.1.1.1/32 123.1.1.1 0 0 100i
> 11.1.1.2/32 123.1.1.1 0 0 100i
> 11.1.1.3/32 123.1.1.1 0 0 100iblog

实验三: 在R1上通告汇总路由而且抑制明细
R1:
bgp 100
aggregate 11.1.1.0 255.255.255.252 detail-suppressed
network 11.1.1.1 255.255.255.255
network 11.1.1.2 255.255.255.255
network 11.1.1.3 255.255.255.255 路由

在R1和R2上查看BGP表:
[R1-bgp]display bgp routing-table # 明细路由被抑制了,不会通告给邻居
*> 11.1.1.0/30 127.0.0.1 0 i
s> 11.1.1.1/32 0.0.0.0 0 0 i
s> 11.1.1.2/32 0.0.0.0 0 0 i
s> 11.1.1.3/32 0.0.0.0 0 0 i博客

<R2>display bgp routing-table #在R2上已经看不到明细路由了
*> 11.1.1.0/30 123.1.1.1 0 100i

实验四: 在R2上聚合11.1.1.0/30的路由,添加AS_set属性。
咱们取消在R1上作的手工聚合,改为在R2上作聚合,若是不加AS_set,则这条聚合路由在AS200中默认不是没有AS_path属性的。
R2:
bgp 200
aggregate 11.1.1.0 255.255.255.252

在R2和R4上查看BGP表,这条路由都没有AS_path属性。
<R2>display bgp routing-table

*> 11.1.1.0/30 127.0.0.1 0 i

<R4>display bgp routing-table

*>i 11.1.1.0/30 22.1.1.1 100 0 i

在R2上将聚合路由带上as_set属性,这样会在聚合路由上添加明细路由起源自哪一个AS,用于防环。若是这些明细来自不一样的AS,则会在AS_path的最右边使用{}将产生明细的多个AS放入{}中。
[R2-bgp]aggregate 11.1.1.0 255.255.255.252 as-set

接着在R2和R4上查看BGP表
[R2-bgp]display bgp routing-table

*> 11.1.1.0/30 127.0.0.1 0 100i

<R4>display bgp routing-table
*>i 11.1.1.0/30 22.1.1.1 100 0 100i

实验五:更改聚合路由的属性,将起源属性更改成未完成
R2:

route-policy ATT1 permit node 10
apply origin incomplete

aggregate 11.1.1.0 255.255.255.252 as-set attribute-policy ATT1

查看BGP表,发现11.1.1.0/30这条汇聚路由的起源属性变成了?。
<R2>display bgp routing-table
*> 11.1.1.0/30 127.0.0.1 0 100?

<R4>display bgp routing-table
*>i 11.1.1.0/30 22.1.1.1 100 0 100?
实验六:在R2上聚合11.1.1.0/30,只抑制11.1.1.2这一条明细路由。
[R2-bgp]aggregate 11.1.1.0 255.255.255.252 as-set attribute-policy ATT1 suppress-policy supp

route-policy supp permit node 10
if-match acl 2000

acl number 2000
rule 10 permit source 11.1.1.2 0

查看R2的BGP表,发现11.1.1.2/32的路由是存在的(被抑制),但这条路由在R4上是不存在的。
[R2]display bgp routing-table

> 11.1.1.0/30 127.0.0.1 0 100?
> 11.1.1.1/32 123.1.1.1 0 0 100i
s> 11.1.1.2/32 123.1.1.1 0 0 100i
*> 11.1.1.3/32 123.1.1.1 0 0 100i

[R2]display bgp routing-table 11.1.1.2 32,被抑制的路由,没有通告给任何的邻居。

BGP local router ID : 22.1.1.1
Local AS number : 200
Paths: 1 available, 1 best, 1 select
BGP routing table entry information of 11.1.1.2/32:
From: 123.1.1.1 (11.1.1.1)
Route Duration: 00h08m12s
Direct Out-interface: GigabitEthernet0/0/2
Original nexthop: 123.1.1.1
Qos information : 0x0
AS-path 100, origin igp, MED 0, suppressed, pref-val 0, valid, external, best, select, active, pre 255
Not advertised to any peer yet

[R2]display bgp routing-table 11.1.1.1 32 像这条路由,就通告到R4上去了。

BGP local router ID : 22.1.1.1
Local AS number : 200
Paths: 1 available, 1 best, 1 select
BGP routing table entry information of 11.1.1.1/32:
From: 123.1.1.1 (11.1.1.1)
Route Duration: 00h08m38s
Direct Out-interface: GigabitEthernet0/0/2
Original nexthop: 123.1.1.1
Qos information : 0x0
AS-path 100, origin igp, MED 0, pref-val 0, valid, external, best, select, active, pre 255
Advertised to such 1 peers:
44.1.1.1

<R4>display bgp routing-table

*>i 11.1.1.0/30 22.1.1.1 100 0 100?
i 11.1.1.1/32 123.1.1.1 0 100 0 100i
i 11.1.1.3/32 123.1.1.1 0 100 0 100i

#:有博客中,为缩减篇幅,将输出的BGP表的信息进行了删减,只保留了一些跟实验现象有关的内容。

手动刷新BGP的路由。<R2>refresh bgp all import <R2>refresh bgp all export

相关文章
相关标签/搜索