BGP的路由反射器簇

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

LAB BGP的路由反射器簇
一实验说明:在前面的试验中我们了解了路由反射器(RR)的概念。

本实验中我们引入另一个概念:反射簇其实这并不是什么新的概念。

所谓反射簇就是一个RR跟它的客户形成的一个集合,一个AS中,可以有多个反射簇,反射簇之间通过RR建立连接。

一个反射簇内也可以有多个RR(这其实是为了实现冗余)。

这里引入一个簇ID的概念,即存在多个反射簇时,RR用于下面我们就通过试验来了解一下反射簇,也是为了巩固我上几个关于RR试验的概念。

―――――――――――――――――――――――――――――――――――――――二试验一如上图所示,在AS12345中,R2,R3为RR,两台路由器分别指定另外的3台路由器为自己的客户,两个RR与客户的连接关系完全相同,只是相互提供了冗余。

1 基本配置(IGP是EIGRP,已经配置好)
r1#sh run | b r b
router bgp 12345
no synchronization
network 11.11.11.0 mask 255.255.255.0
neighbor 12.0.0.2 remote-as 12345
neighbor 13.0.0.3 remote-as 12345
no auto-summary
―――――――――――――――――
r2#sh run | b r b
router bgp 12345
no synchronization
neighbor 10.0.0.3 remote-as 12345
neighbor 10.0.0.4 remote-as 12345
neighbor 10.0.0.5 remote-as 12345
neighbor 12.0.0.1 remote-as 12345
no auto-summary
―――――――――――――――――
r3#sh run | b r b
router bgp 12345
no synchronization
neighbor 10.0.0.2 remote-as 12345
neighbor 10.0.0.4 remote-as 12345
neighbor 10.0.0.5 remote-as 12345
neighbor 13.0.0.1 remote-as 12345
no auto-summary
―――――――――――――――――
r4#sh run | b r b
router bgp 12345
no synchronization
network 44.44.44.0 mask 255.255.255.0
neighbor 10.0.0.2 remote-as 12345
neighbor 10.0.0.3 remote-as 12345
no auto-summary
―――――――――――――――――
r5#sh run | b r b
router bgp 12345
no synchronization
network 55.55.55.0 mask 255.255.255.0
neighbor 10.0.0.2 remote-as 12345
neighbor 10.0.0.3 remote-as 12345
no auto-summary ―――――――――――――――――――――――――――――――――――――――2 配置RR及反射簇
r2(config)#router bgp 12345
r2(config-router)#neighbor 10.0.0.4 route-reflector-client
r2(config-router)#neighbor 10.0.0.5 route-reflector-client
r2(config-router)#neighbor 12.0.0.1 route-reflector-client
r2(config-router)#bgp cluster-id 23 /设置反射簇ID=23――――――――――――――――――――――――
r3(config)#router bgp 12345
r3(config-router)#neighbor 10.0.0.4 route-reflector-client
r3(config-router)#neighbor 10.0.0.5 route-reflector-client
r3(config-router)#neighbor 13.0.0.1 route-reflector-client
r3(config-router)#bgp cluster-id 23
现在R2,R3已经是这个反射簇中的两个RR了,反射簇ID=23 ,这两个RR互为冗余。

r4#sh ip bgp
Network Next Hop Metric LocPrf Weight Path
* i11.11.11.0/24 13.0.0.1 0 100 0 i
*>i 12.0.0.1 0 100 0 i
*> 44.44.44.0/24 0.0.0.0 0 32768 i
* i55.55.55.0/24 10.0.0.5 0 100 0 i
*>i 10.0.0.5 0 100 0 i ――――――――――――――――――――――――――――――――
r5#sh ip bgp
Network Next Hop Metric LocPrf Weight Path
* i11.11.11.0/24 13.0.0.1 0 100 0 i
*>i 12.0.0.1 0 100 0 i
* i44.44.44.0/24 10.0.0.4 0 100 0 i
*>i 10.0.0.4 0 100 0 i
*> 55.55.55.0/24 0.0.0.0 0 32768 i ――――――――――――――――――――――――――――――――
r1#sh ip bgp
Network Next Hop Metric LocPrf Weight Path
*> 11.11.11.0/24 0.0.0.0 0 32768 i
* i44.44.44.0/24 10.0.0.4 0 100 0 i
*>i 10.0.0.4 0 100 0 i
* i55.55.55.0/24 10.0.0.5 0 100 0 i
*>i 10.0.0.5 0 100 0 i
可以看到,现在所有的客户都可以收到RR反射来的其它客户的路由,由于有两个RR,所以每条路由都有两条路径。

我们在R4上查看一下55.55.55.0网络的明细。

r4#sh ip bgp 55.55.55.0
BGP routing table entry for 55.55.55.0/24, version 9
Paths: (2 available, best #2, table Default-IP-Routing-Table)
Not advertised to any peer
Local
10.0.0.5 from 10.0.0.3 (35.0.0.3)
Origin IGP, metric 0, localpref 100, valid, internal
Originator: 10.0.0.5, Cluster list: 0.0.0.23
Local
10.0.0.5 from 10.0.0.2 (23.0.0.2)
Origin IGP, metric 0, localpref 100, valid, internal, best
Originator: 10.0.0.5, Cluster list: 0.0.0.23
可以看到这两条路径多了两个参数:originator和cluster list 前者表示该路由起源于哪个路由器;后者表示该路由是由哪个反射簇反射过来的。

如果没有配置CLUSTER-ID 则这个参数则是RR的RID。

这两个属性参数是RR加入的,是为了防止路由环路。

如果RR收到一条带有这两个参数的路由,且originator是自己反射簇中的客户,则RR会认为出现了环路从而忽略这条路由。

同理,当RR收到了带这两个参数的路由,且cluster list中带有它自己的簇ID,则RR认为环路出现从而忽略这条路由。

另外可以看到R4选择了10.0.0.2(R2) 反射的路由,因为在其它条件都相同的条件下,路由器会选择IP地址较低的路由器作为自己的下一跳。

我们看一下其中的一个RR
r3#sh ip bgp
Network Next Hop Metric LocPrf Weight Path
* i11.11.11.0/24 12.0.0.1 0 100 0 i
*>i 13.0.0.1 0 100 0 i
*>i22.22.22.0/24 10.0.0.2 0 100 0 i
* i44.44.44.0/24 10.0.0.4 0 100 0 i
*>i 10.0.0.4 0 100 0 i
* i55.55.55.0/24 10.0.0.5 0 100 0 i
*>i 10.0.0.5 0 100 0i
r3#sh ip bgp 55.55.55.0
BGP routing table entry for 55.55.55.0/24, version 5
Paths: (2 available, best #2, table Default-IP-Routing-T able)
Advertised to non peer-group peers:
10.0.0.2 10.0.0.4 13.0.0.1
Local
10.0.0.5 from 10.0.0.2 (23.0.0.2)
Origin IGP, metric 0, localpref 100, valid, internal
Originator: 10.0.0.5, Cluster list: 0.0.0.23
Local, (Received from a RR-client)
10.0.0.5 from 10.0.0.5 (10.0.0.5)
Origin IGP, metric 0, localpref 100, valid, internal, best
可以看到R3也会收到R2反射的路由,因为在R2看来,R3跟它是普通的IBGP关系,是它的非客户,所以R2从一个客户(R5)学来的路由会反射给非客户R3;―――――――――――――――――――――――――――――――――――――――试验二本实验跟上一个试验的拓扑完全一样,只是在本实验中的AS中定义了两个反射簇。

如图所示,建立了两个反射簇,一个反射簇的ID=22,R2是RR;另一个反射簇的ID=33,R3是RR。

R1与R2建立IBGP邻居,R1是R2的客户。

R3与R4,R5分别建立IBGP邻居,R4,R5是R3的客户。

R2与R3是普通的IBGP邻居。

配置如下:
r1#sh run | b r b
router bgp 12345
no synchronization
network 11.11.11.0 mask 255.255.255.0
neighbor 12.0.0.2 remote-as 12345
no auto-summary
r2#sh run | b r b
router bgp 12345
no synchronization
bgp cluster-id 22
neighbor 10.0.0.3 remote-as 12345
neighbor 12.0.0.1 remote-as 12345
neighbor 12.0.0.1 route-reflector-client
no auto-summary
r3#sh run | b r b
router bgp 12345
no synchronization
bgp cluster-id 33
neighbor 10.0.0.2 remote-as 12345
neighbor 10.0.0.4 remote-as 12345
neighbor 10.0.0.4 route-reflector-client
neighbor 10.0.0.5 remote-as 12345
neighbor 10.0.0.5 route-reflector-client
no auto-summary
r4#sh run | b r b
router bgp 12345
no synchronization
network 44.44.44.0 mask 255.255.255.0
neighbor 10.0.0.3 remote-as 12345
no auto-summary
r5#sh run | b r b
router bgp 12345
no synchronization
network 55.55.55.0 mask 255.255.255.0
neighbor 10.0.0.3 remote-as 12345
no auto-summary ――――――――――――――――――――――――――――――――――――――
现在所有路由器都已经学习到路由,我们到R1上看。

r1#sh ip bgp
Network Next Hop Metric LocPrf Weight Path
*> 11.11.11.0/24 0.0.0.0 0 32768 i
*>i44.44.44.0/24 10.0.0.4 0 100 0 i
*>i55.55.55.0/24 10.0.0.5 0 100 0 i
r1#sh ip bgp 44.44.44.0
BGP routing table entry for 44.44.44.0/24, version 8
Paths: (1 available, best #1, table Default-IP-Routing-Table)
Not advertised to any peer
Local
10.0.0.4 (metric 2195456) from 12.0.0.2 (22.22.22.22)
Origin IGP, metric 0, localpref 100, valid, internal, best
Originator: 44.44.44.44, Cluster list: 0.0.0.22, 0.0.0.33
通过查看44.44.44.0这条路由可以看到,这条路由经过了两次反射到达了R1,这两个簇ID 分别是33 和22 。

而且这条路由的下一跳始终没有变,这也再一次证明了我们以前得出的结论,经RR反射后的路由的下一跳不会改变。

还可以看到,每个反射簇中的客户只需要跟该反射簇中的RR建立邻居关系。

而客户之间不能建立IBGP。

因为客户收到路由后不会检查cluster list属性,因此无法检测到环路。

所以反射簇之间路由的传递都是依赖于RR之间建立邻居关系,而RR之间传递路由就会在路由信息中加入cluster-list属性为了防止环路。

但有两种情况下客户之间可以建立对等关系:
1 客户本身是另一个簇的路由反射器。

2 客户之间存在着全IBGP网状互联。

在这种情况下客户可以通过IBGP直接学习路由而不需要RR的反射,这时可以在RR上配置:no bgp client-to-client reflection 阻止客户之间的反射。

(这个情况之前已经做过)―――――――――――――――――――――――――――――――――――――――。

相关文档
最新文档