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