具体实验笔者通过GNS3实现,相关拓扑以及配置步骤以附件的形式发送
1.概述
如上图所示,本案例中针对原案例进行了简化
①R1、R2、R4、R5、R6、R10、R7、R8、R3、R11创建环回口,地址为X.X.X.X/32,X为路由器编号
②全网所有路由器运行EIGRP 100,实现互通(宣告所有直连网络)
③红色标记的网络表示实际需要的路由(流量的各个目标网络)
④路由器间IP网段在图上标识,例如31.31.4.0/24网络中,R3对应的接口IP为31.31.4.1,
R11对应的IP为31.31.4.11以此类推
2.原网络路由
原网络每台路由器共有29条前缀,其中EIGRP前缀为25条左右
示例:
核心层路由器R10
区域内路由器R15
3.迁移步骤
总体迁移思路已经在“BGP Core Deployment”小节阐述,具体实施时细节部分会有所不同
如下是笔者的实施步骤
3.1 对等体建立
(1)区域边界多台路由器建立iBGP对等体关系
①在如上拓扑中,指的是R1与R2,R7与R8,R3与R11
②首先运行BGP进程,配置其BGP Router-ID
③以其直连物理接口为源建立对等体关系
(2)核心层路由器建立全互联iBGP对等体关系
①在如上拓扑中,核心层路由器指的是R4、R5、R6、R10
②首先运行BGP进程,配置其BGP Router-ID
③以环回口为源建立对等体关系(neighbor指环回口地址,配置更新源地址为环回口地址)
(3)各区域与核心层直连设备建立eBGP对等体关系
①关注每一段DMZ中有几个eBGP对等体关系需要建立
②直接指定远端设备的直连物理接口为对等体地址
③不同区域间不建立eBGP对等体关系
(4)校验
校验每台设备的BGP会话数是否正确、对等体地址的指定是否无误
示例:
区域边界路由器R1
核心层路由器R5
3.2 路由注入前准备
(1)修改AD
在所有开启BGP进程的路由器上,通过distance bgp命令修改BGP路由的AD值
使iBGP路由为165,eBGP路由为160
(2)next-hop-self
所有的建立iBGP对等体关系的设备上指定其iBGP peer时配置next-hop-self
(3)防止次优路径
AS 65102连接了多台核心层路由其,存在次优路径的风险
R5及R6上应当配置route-map
set metric-type internal并在向区域边界路由器发送更新时套用
(4)配置bestpath compare-routerid
在所有BGP进程上配置该命令以实现路径切换的可预测性
3.3 注入路由
(1)企业出口路由器向核心层下发BGP缺省
①R12以及R13上分别对R10、R4下发BGP缺省路由
②校验核心层设备BGP转发表、区域边界路由器BGP转发表
示例:
核心层设备R4
核心层设备R5
区域边界路由器R7
通告给AS 65102的路由携带上了EIGRP metric值
可见metric-typeinternal生效
区域边界路由器R1
这里需要注意的是R1学习到的缺省路由的下一跳为R13
而非通告该缺省路由的核心层设备R4
(2)宣告区域路由
①各区域边界路由器宣告特定的路由
②检查路由表BGP前缀数、BGP转发表路由下一跳、metric信息
注意:
BGP学习路由期间,网络不允许中断,部署时可以自行测试
路由表中应该只有BGP缺省路由而无其他BGP路由进入路由表
检查下一跳以及metric
区域边界路由器R1
核心层路由器R4
3.4 分割IGP域
(1)注意EIGRP AD
由于现网整网为统一IGP域内,下发的缺省路由会扩散至区域以外,为防止路由选路受到影响,
应当通过修改相关参数使得EIGRP缺省路由不会取代BGP缺省路由
而如果修改EIGRP AD将导致EIGRP重建邻居关系,这显然是不希望发生的,
因此应当确保BGP的AD值小于EIGRP的外部路由AD(170)
但是大于其内部路由AD(90),这样,区域边界路由器下发的缺省路由只能在区域内扩散
(2)重分发BGP缺省
各个区域边界路由器通过重分发BGP缺省路由向各个区域下发IGP缺省,
以确保EIGRP邻居关系中断后不中断路由可达性
(3)分割IGP域
在各个区域边界路由器上,配置其面向其它区域的接口为passive-interface以中断BGP路由
(4)校验
①校验BGP路由数量
②校验路由表中BGP路由是否取代EIGRP路由
示例:
区域边界路由器R1
此时路由表中装载了5条BGP路由以及一条缺省路由
总共路由数量为6条
且此时整个区域边界路由器的路由数量从29条下降到了12条
此次网络迁移的目的其实已经实现了
R1通过BGP学习到区域外部路由
R1上的EIGRP路由全为区域内路由
区域内路由器R15
R15上除了区域内路由之外通过缺省去往外部网络
3.5 IGP重部署
(1)核心层重部署
①在各台核心层路由器上创建新的EIGRP进程
②校验新进程的对等体关系
③清除原进程
(2)区域重部署
①在各台区域路由器上创建新的EIGRP进程
②校验新进程的对等体关系
③重分发BGP缺省路由
④清除原进程
(3)远程站点重部署
①在各台区域路由器上创建新的EIGRP进程
②校验新进程的对等体关系
③重分发BGP缺省路由
④R3、R11上关闭EIGRP水平分割
⑤清除原路由进程
(4)企业网出口重部署
直接清除其EIGRP进程即可
3.6 AD还原
①所有运行BGP的路由器上取消之前的AD配置
②利用clear ip route命令刷新路由表使还原的AD生效(路由表收敛过程会导致轻微的丢包现象发生)
3.7 路由聚合
①在需要进行聚合的区域边界路由器上配置聚合命令,添加summary-only关键字
这里需要注意的是,如果区域间或区域内链路故障是否会由于聚合而导致路由问题
(该网络环境下,远程站点可能会发生此类问题,这里通过关闭EIGRP水平分割进行解决)
②校验
检查聚合路由的学习情况、下一跳等信息
聚合后路由表
区域边界路由器R1
核心层路由器R4
核心层路由器R10
区域内路由器R15