BGP - 图文 联系客服

发布时间 : 星期一 文章BGP - 图文更新完毕开始阅读76133a2da22d7375a417866fb84ae45c3b35c21f

4.BGP的RR

4.1 BGP的RR,有几种属性?如何避免环路的?IBGP防环机制,引申出水平分割问题。

BGP的RR,有两种BGP属性;CLUSTER-LIST和ORIGINATOR-ID。

4.1.1 ORIGINATOR-ID防环场景:

路由器A和路由器B配置成RR,下面有一个共同的RR客户端路由器C。RR客户端宣告一条路由X,这条路由通告给路由器A和路由器B,路由器A和路由器B之间也会相互通告。路由器A关于路由X就有两个来源,路由器B和路由器C,优选路由器C。当路由器C宣告的C网络down掉以后,路由器A优选路由器B通告过来的路由,并且把路由通告给路由器C,路由器C把从路由器A学到的路由通告给路由器B。此时,路由器A通过路由器B到达网络X,路由器B通过路由器C到达网络X,路由器C通过路由器A到达网络X,网络出现了环路。

可以通过ORIGINATOR-ID来解决。路由器B反射路由X给路由器A的时候为路由打上ORIGINATOR-ID。路由器A在把路由X反射给路由器C的时候,路由器C拒绝这条路由。这样就避免了路由环路。

4.1.2 CLUSTER-LIST防环场景:

路由器A是一个簇的RR,路由器B和路由器C是另外一个簇的RR。路由器A将簇内一个客户端通告的路由X传递给路由器B和路由器C,路由器B和路由器C之间也会相互通告。路由器B关于路由X就有两个来源,路由器A和路由器C,优选路由器A。当路由器A所在簇的路由X出现问题时,路由器B优选路由器C通告过来的路由,并且把路由X通告给路由器A,路由器A把从路由器B学到的路由通告给路由器C。此时,路由器A通过路由器B到达网络X,路由器B通过路由器C到达网络X,路由器C通过路由器A到达网络X,网络出现环路。

可以通过CLUSTER-LIST来解决。路由器A把路由X通告给非簇成员路由器A和路由器B的时候,在CLUSTER-LIST中添加自己的簇ID。路由器把通过路由器C学到的路由器传递给路由器A的时候,在CLUSTER-LIST中添加自己的簇ID。路由器收到路由器B传递过来的路由,检测CLUSTER-LIST,发现里面有自己的簇ID,拒绝这条路由。

路由通过IBGP通告的时候,IBGP路由不会像EBGP路由那样具有环路保护机制,所有就有可能出现环路。

假设一个拓扑,路由器A B C两两互联,两两建立IBGP邻居。

在路由器A上面宣告一条路由,路由器B和路由器C都会学习到。如果没有IBGP的水平分割,路由器B和路由器C相互也会通告这条路由,路由器B和路由器C上面也有对方通告的路由。假设路由器A上面通告的网络down掉,路由器C会选择路由B通告的路由,并且向路由A通告这条路由。路由器A此时向路由器B通告的路由是从路由器C学到的,路由器C的路由是从路由器B学到的,路由器B的路由是从路由器A学到的。这样,就导致了环路。

为了避免环路,BGP不会把从IBGP邻居学到的路由通告给其他的IBGP邻居,这就是IBGP的水平分割。

4.2如图,两台RR的cluster id在此情况下是否需要相同?

如果处于同一个cluster,中间那条线路是否需要建立BGP对等体?

既然RR看到和自己相同的cluster id会拒绝接收,那么为什么还需要建立IBGP对等体?请举例说明有什么作用。

4.2.1 RR主备的问题

(1)RR之间是否需要建立IBGP邻居

如果RR上面有EBGP邻居,或者RR上发布路由,就需要在RR

之间建立IBGP邻居。

(2)客户机收到cluster-list中的cluster-id包含自己的RID,他会不会要?

4.3公认必遵属性有哪些,各有什么特点,实现原理是什么,BGP的内部防环和外部防环机制有哪些,在黑板讲一下,MED属性,CLUSTER-LIST属性的简单原理,在黑板描述一下,ORIGIN属性的特点原理。BGP比较到哪一条就可以实现负载分担。BGP可能存在环路,能否举例说明?

公认必遵属性有: ORIGIN AS-PATH NEXT-HOP

ORIGIN属性描述路由更新的来源,可以用来选择最优路径。 AS-PATH属性描述路由经过的AS的列表,可以用来选择最优路径和防止环路。

NEXT-HOP属性描述到达被通告目的下一跳IP地址,只有下一跳可达,BGP路由才会被认可。