路由反射器
1. 3种角色

RR(反射器) 客户端 非客户端 ——3者构建一个簇

可以理解为RR为中心站点,客户端或非客户端是分支站点;
要求所有分支与中心必须是IBGP邻居关系;
在一个簇中至少存在一台客户端;

2.规则:

<1> RR从一台EBGP邻居处学习到的路由可以传输给本地的客户端、非客户端、其他EBGP邻居
<2>RR从一台客户端邻居处学习到的路由,可以传输给本地的其他客户端、非客户端、其他EBGP邻居
<3>RR从一台非客户端邻居处学习到的路由条目,可以传输给本地的客户端,其他EBGP邻居,但不得传输给本地的其他非客户端;
注意:若路由条目不优,不具有传递性;反射器也无法反射路由

3.配置

bgp路由反射器 发布路由的规则_R3


图中,R1,R2为EBGP的邻居关系,R2,R3,R4,R5为IBGP的邻居关系,IBGP建邻时,我们选择R2-R3,R3-R4,R3-R5,即仅选择直连建邻;

AS2内部使用OSPF互通,每台设备均配置有环回

<1>BGP配置
ebgp建邻

AS1    R1
[r1]bgp 1
[r1-bgp]router-id 1.1.1.1
[r1-bgp]peer 2.2.2.2 as-number 2  //指定ebgp邻居的AS号
[r1-bgp]peer 2.2.2.2 connect-interface LoopBack 0  //使用环回口进行更新
[r1-bgp]peer 2.2.2.2 ebgp-max-hop 2 //必须修改ebgp的最大跳数,默认为1
[r1]ip route-static 2.2.2.2 32 12.1.1.2  //此处掩码写32,如果写24则宣告环回后路由在R2设备不会加表

AS2 R2
[r2]bgp 2
[r2-bgp]router-id 2.2.2.2
[r2-bgp]peer 1.1.1.1 as-number 1 
[r2-bgp]peer 1.1.1.1 ebgp-max-hop 2 
[r2-bgp]peer 1.1.1.1 connect-interface LoopBack0
[r2]ip route-static 1.1.1.1 32 12.1.1.1

查看邻居状态display bgp peer

bgp路由反射器 发布路由的规则_bgp路由反射器 发布路由的规则_02

ibgp建邻(ibgp之间必须能够互通,采用ospf,这里不做粘贴

R2
[r2-bgp]peer 3.3.3.3 as-number 2   
[r2-bgp]peer 3.3.3.3 connect-interface LoopBack0
R3
[r3]bgp 2
[r3-bgp]router-id 3.3.3.3
[r3-bgp]peer 2.2.2.2 as-number 2   
[r3-bgp]peer 2.2.2.2 connect-interface LoopBack0
[r3-bgp]peer 4.4.4.4 as-number 2   
[r3-bgp]peer 4.4.4.4 connect-interface LoopBack0
[r3-bgp]peer 5.5.5.5 as-number 2   
[r3-bgp]peer 5.5.5.5 connect-interface LoopBack0
R4
[r4]bgp 2
[r4-bgp]router-id 4.4.4.4
[r4-bgp]peer 3.3.3.3 as-number 2
[r4-bgp]peer 3.3.3.3 connect-interface LoopBack 0
R5
[r5]bgp 2
[r5-bgp]router-id 5.5.5.5
[r5-bgp]peer 3.3.3.3 as-number 2
[r5-bgp]peer 3.3.3.3 connect-interface LoopBack0

查看邻居状态display bgp peer

bgp路由反射器 发布路由的规则_路由表_03


<2>传递路由

R1
[r1]bgp 1  //进入bgp宣告r1环回
[r1-bgp]network 1.1.1.0 255.255.255.0

R2
[r2-bgp]peer 3.3.3.3 next-hop-local  //R2通过IBGP传递的路由条目必须修改下一跳为自己,否则无法通过反射器传递给其他邻居
[r2-bgp]network 23.1.1.0 24   //宣告本地的网段,否则ibgp无法与另一个AS号的人进行连通,仅仅只能学习到路由条目

R3
[r3-bgp]network 23.1.1.0 24
[r3-bgp]network 35.1.1.0 24
[r3-bgp]network 3.1.1.0 244
[r3-bgp]network 3.3.3.0 24
R4
[r4-bgp]network 34.1.1.0 24
[r4-bgp]network 4.4.4.0 24
R5
[r5-bgp]network 35.1.1.0 24
[r5-bgp]network 5.5.5.0 24

查看r3的bgp路由表,r1的环回已经可用,具有传递性

bgp路由反射器 发布路由的规则_R3_04


由于水平分割的限制,从一个ibgp邻居处学习到的路由条目不会传递给下一个ibgp邻居,故在r4,r5的bgp路由表中不会出现r1的环回,需要通过路由反射器来实现路由条目的传递

bgp路由反射器 发布路由的规则_R3_05


<3>配置路由反射器

图中只有R3可以成为RR

[r3-bgp]peer 2.2.2.2 reflect-client  //使r2成为自己的客户端,然后将学习到的路由条目传递给其他设备,本地成为路由反射器

再次查看R4,R5的bgp路由表,已经学习到R1的环回

bgp路由反射器 发布路由的规则_路由表_06

4.测试

bgp路由反射器 发布路由的规则_bgp路由反射器 发布路由的规则_07