BGP路由反射器
学习目标:
- 实现在AS内部部署路由反射器
- 分析BGP路径属性Orginnator__id 在路由反射器环境下如何实现路由防环
- 分析BGP路径属性Cluster__List在路由反射器环境下如何实现路由防环
实验组网介绍
R1 R2 R3 R4都属于AS 64511 ,其连接方式及接口如上所述。每台设备均创建loopback0接口,IP地址为10.0.X.X/32,X为其设备编号.
所有设备都使用lo 0作为BGP router id,R1与R2 R2与R3 R3与R4 R4与R2之间基于接口建立IBGP对等体关系,其中R1为R2的路由反射器客户端,R3为R4的路由反射客户端。
实验背景:
某公司的总部网络采用BGP协议作为路由协议,总部的4台路由器建立IBGP 对等体关系,(并非互联)为了让4台路由器学习到完整的BGP路由,需要你在网路中部署BGP路由反射器。
实验思路
- 设备基础IP地址配置
- 配置AS内的ospf,在互联网接口及lo 0接口上激活OSPF
- 配置AS内基于直连接口建立IBGP对等体关系
- 配置路由反射器,将R1配置为R2的客户端,R2配置为R3的客户端,R3为R4的客户端
- 在R2上将lo 1 接口发布进BGP,观察Originator-id 属性如何实现路由防环
- 在R1上将lo 1 接口发布进BGP,观察Cluster-List 属性如何实现路由防环
任务步骤:
基础配置
- 设备基础IP地址配置
其他设备配置略
在R2检查设备联通性
- 配置AS内的ospf,在互联网接口及lo 0接口上激活OSPF
R3
#在R2 R3上检查ospf邻居的概要信息
从表中可以看出ospf的邻居已经全部建立
#在R4查看ospf路由表
从输出信息可以得出R4已经学到了全网的路由
- 配置AS内基于直连接口建立IBGP对等体关系
在R2 R3上检查IBGP对等体状态
AS内部IBGP对等体已经成功建立
- 配置路由反射器,将R1配置为R2的客户端,R2配置为R3的客户端,R3为R4的客户端
#在R2上将R1配置为路由反射器客户端
#在R3上将R2配置路由反射器客户端
#在R4上将R3配置为路由反射器客户端
步骤5 验证Orginator-id 实现路由防环
在本步骤中,我们将在R2上发布BGP路由10.2.2.0/24 并观察该路由经过路由反射器R3.R4反射后,被通告回R2从而引发潜在路由风险的情况。
缺省情况下,R2发布BGP后,该路由将被R2直接通告给R4,另一方面也会通过R3反射给R4,此时R4将优选R2直接通告过来的路由,从而不会再将R3反射过来的路由再反射给R2.为此我们要在R2上做部署路由策略,使R2不直接向R4通告10.2.2.0的路由。
##部署路由策略
##在BGP中调用路由策略
## 在R2上发布路由
在R2上查看BGP路由10.2.2.0/24的明细信息
R2将该路由通告给R1 R3 但没有给R4通告
#在R3上查看BGP路由10.2.2.0 24 的明细信息
可以看到R3将来自反射器客户端的BGP路由10.2.2.0 24 反射给了R4 .同时该BGP路由的nexthop为10.0.23.2
##在R4上查看BGP路由10.2.2.0的明细
该条路由反射客户端R3,起始路由由R3反射,路由的nexthop地址没变,同时R3为其增加了Orginator-id 属性,值为10.0.2.2 .同时R4将该路由反射给了R2
##接下来在R2看这条路由明细
可以看到只存在本地通告的BGP路由,没有R4通告的BGP
步骤6:验证Cluster-List实现路由防环
#取消R2上BGP的发布,并在R1发布 lo 1 接口路由
##依次在R1——R4查看该路由
R1是始发者,通告给了R2
来自路由反射器客户端R1,R2将其反射给了R3
来自反射器客户端R2的路由10.1.1.0/24,R2反射时加了Cluster-List属性,值为10.0.2.2 ,并反射给了R4
来自反射器客户端R3de BGP路由10.1.1.0/24 .R3反射时增加了Cluster-List属性值为10.0.3.3 10.0.2.2 ,R4将给该路由反射给了R2.
###再次查看R2的吧BGP路由表
BGP路由表只有一条来自10.0.12.1的BGP路由10.1.1.0/24
####查看R2BGP对等体10.0.24.4详细信息
R2收到R4的3个updata报文,未向R4发送Updata报文,原因是路由策略限制,但是本地BGP路由表中没有R4通告的BGP路由10.1.1.0/24
##### 在R2上重新启动BGP,让R4重新发Updata报文
注意:视图在用户视图下
可以看到依旧没有来自R4的,这里应该是有问题的!!! 应该是R2从R4接收到BGP路由的通告的,但是我这个地方还是有问题的。
## 再次查看R2BGP的10.1.1.0 24
依旧只有来自R1通告的1条BGP路由。但是R4在通告的时候,Cluster-List中包含了R2的Cluster-id,R2忽略了该路由的通告。
实验到此结束
总结;本实验过程还是比较顺利,结果也是很符合理论,上面出现的一点问题我再查找查找原因。