8,路由反射器
Router Reflector …路由反射器﹣- RR ……﹣我们可以通过配置,将某些设备在一定的条件下设置称为路由反射器,之后,该设备将可以反射所学习到的 IBGP 路由信息。
我们在指定一台路由器称为路由反射器( RR )的同时,必须在他的 lBGP 对等体关系中选择一个或者多个设备称为他的客户( client ), RR 和客户之间所构成的系统我们称为反射簇( Cluster )。每一个反射簇都将使用 RR 的 RID 作为簇 D 。其余没有称为 RR 客户的 IBGP 对等体关系,我们将称其为非客尸.
路由反射器的反射规则:
1,当路由反射器从自己客户处学习到一条路由,则他将会把这条路由信息反射给自己所有的客户以及非客户
2,如果路由反射器从自己的非客户处学习到一条路由,则他将把这条路由信息反射给自己所有的客户但是不能反射给非客户。 “非非不传”
3,当路由器执行路由反射时,他只将自己使用的最优的 BGP 路由进行反射。
因为 BGP 水平分割是为了防止环路的产生,而路由反射器将路由反射之后就打破 BGP 的水平分割,就可能造成环路的出现。-----所以,路由反射器为了防止环路的出现,又引入了两个属性… Originator _ ID (起源者 D ), Cluster _ list (簇列表)
起源者 D -01D﹣当一条路由信息来到路由反射器时,反射器需要将这条路由信息反射,反射前将在该路由信息中添加这个属性,这个属性的值为该反射器收到这条路由信息的通告者的 RID ,之后,别的路由反射器收到一条路由信息如果其中包含 o _ ID ,则他将不会改变这个属性。如果一台设备收到一条路由条目其中起源者 D 为自己本地的 RID ,则将不再学习这条路由信息,起到防止环路的效果。
如果在一个 As 当中,存在多次反射,则一定存在多个反射簇,则毎个 RR 在反射路由信息时都会在其中簇列表属性中添加本地的簇 D 。当一个设备收到一条反射的路由信息后,其中的簇列表属性中包含本地簇 ID ,则将不再学习该路由,防止环路的产生。
[r3-bgplpeer2.2.2.2 reflect - client --﹣指定R2作为反射客户,则同时R3自动成为 RR
9,联邦
联邦的思想就是将同一个 AS 当中的 IBGP 对等体关系改变为 EBGP 对等体关系,通过这种方法来打打破 BGP 的水平分割。这就需要将不同的 IBGP 对等体划分到不同成员 AS 当中,成员 AS 之间建立的 EBGP 对等体关系是一种特殊的 EBGP 对等体关系,他们之间仅遵循 EBGP 对等体的传递性,而从传递的内容角度看,依然需要遵循 AS - BY - AS 规则,因为从宏观上看,他们依然处于同一个 AS 当中。
联邦的做法也相当于打破了 IBGP 的水平分割,则也将可能出现环路问题,则需要考虑防环。防环方法可以直接借鉴 EBGP 水平分割,在AS _ PATH 属性当中添加成员 AS 号来防止回传。注意,为了区分成员 AS 和正常的 AS ,成员 AS 号将使用小括号括起来。
联邦的配置:
[r2] bgp 64512-…﹣联邦成员设备启动 BGP 进