由于IBGP的水平分割问题,所以IBGP需要Full Mesh。由于整个IBGP full mesh的话,需要建的session数为n*(n-1)/2。不具有扩展性。所以产生两种解决方法,路由反射器是其中一种,而另一种则是联邦。

反射器/RR
从EBGP邻居学习过来的路由(或RR本地注入的路由)RR不会创建cluster-list,这时候的环路避免依靠的originator-id
originator-id由第一个RR创建且不能更改,orig-id是以这些路由器的BGP RID
      >本地AS始发路由的BGP宣告者
      >EBGP学习到的路由,就是学习到该路由的边界路由器

RFC1966中定义了3条RR用来决定要宣告哪条路由的规则,具体使用时取决于路由是如何学习到的。
1,如果路由学习自非客户IBGP对等体,则仅反射给客户路由器。
2,如果路由学习自某客户,则反射给所有非客户和客户路由器(发起该路由的客户除外)。
3,如果路由学习自EBGP对等体,则反射给所有非客户和客户路由器

总结:
反射器和它的客户端就组成一个簇
反射器从簇里的任何路由器学到的路由相当于发起于反射器本身
反射器除了从非客户端学习过来的路由不传给非客户端以外,其他路由都传(因为非客户端于非客户端之间存在水平分割原则)

反射器是打破了IBGP的水平分割机制,所以必须有自己的防环机制

路由反射器的客户并不知道自己是客户。客户和非客户经过路由反射器反射的路由更新将会带上cluster-list和originator,可用于IBGP防环。Cluster-id默认为路由反射器自己的router-id,可以通过命令bgp cluster-id 1.1.1.1来修改,cluster-id为32位的值,可以写成点分十进制,也可以写成十进制数;originator为IBGP内起源路由器的router-id。路由反射器是IBGP的特性,出了IBGP后,路由反射器所有的特性消失(即路由携带的cluster-list和originator全部消失)。

反射器不会改变路由的下一跳(因为内部的IGP都有路由条目)

R3(config-router)#nei 2.2.2.2 route-reflector-client (说明R2/2.2.2.2是Local的发射器客户端)
 R3(config-router)#nei 4.4.4.4 route-reflector-client

联邦/Confederation
即是使用一个大的AS号拆分为多个小AS号
两个小AS之间使用eBGP来发送更新(相当于两个AS号运行EBGP)

联盟增加了两种类型的AS_PATH属性
AS_confed_sequence:一个去往特定目的地所经路径上的有序AS号列表,其用法与AS_SEQUENCE完全一样,区别在于该列表中的AS号属于本地联盟中的自治系统。
AS_confed_set:一个去往特定目的地所经路径上的无序AS号列表,其用法与AS_SET完全一样,区别在于该列表中的AS号属于本地联盟中的自治系统。
由于AS_PATH发生被用于成员自治系统之间,因而保留了环路预防功能。将Update消息发送给联盟之外的对等体时,将从AS_PATH属性中剥离AS_CONFED_SEQUENCE和AS_CONFED_SET信息,而将联盟ID附加到AS_PATH中。
Local_preference和MED可以在联邦内传递。联盟内的小AS号,在as-path里显示在小括号里,在as-path计算长度时,不被考虑。下一跳在联邦内传递不会改变。

Confederation配置的步骤:
Router bgp 小AS号(私有AS号)
声明所在的大AS号
小AS号之间互指peer

联邦注意事项:
小AS之间学习过来的路由不再是IBGP路由
联邦中的AS号不做为选路参考
C-BGP继承所在AS号内的IBGP属性!比如local-preference / 不改变next-hop

R1(config-router)#bgp confederation identifier 100

bgp 备份RR组网 bgp的rr_bgp 备份RR组网


解决BGP收敛无限循环和BGP路由震荡的解决方案

使用全互联的iBGP——和路由反射器一样,如果一开始就选择联盟来增强扩展性,那么这种方法也许不能被接受

打开alway-compare-MED——因为成员自治系统不修改MED,因此应用在路由反射上的设计指南和告诫也同样适用于联盟

打开deterministic-MED比较——打开确定性的MED比较几乎总是一种好的做法,尽管在某些情况下单独使用这一方法不会解决问题

把MED值重置为0——这消除了MED对确定路径的影响。应用在路由反射上的设置指南也同样适用于联盟

使用团体属性——在外部邻居之间交换的团体属性主要是私有团体属性,因此,引用在路由反射上的设计指南也同样适用于联盟

设置适当的IGP度量——在所有其他的高优先级的比较因子相等的情况下,如果把成员AS内的度量设置为小于成员AS间的度量,那么成员AS内路径将优于成员AS的路径。这就打破了路由选择环路