目录
第一步,配置IP
第二步,配置ospf
第三步,全局使能SR
第四步,在IGP里面,使能SR和SRGB
第五步,使能prefix-sid
第六步,部署bgp
第七步,network目的网络,通过bgp传递。
第八步,配置隧道迭代
本实验基于六台NE系列路由器组网,以OSPF作为IGP路由协议,部署SR段路由功能,并通过建立IBGP邻居传递私网路由。实验主要验证:在传统BGP组网中存在路由黑洞问题,通过配置SR隧道递归迭代,使BGP路由迭代SR标签隧道转发,解决BGP路由黑洞,实现端到端带标签互通。
在传统IBGP组网中,设备学习到对端BGP路由后,路由下一跳为对端环回口地址。由于中间设备未学习BGP路由,数据转发时会出现路由黑洞,导致业务无法互通。 SR可以基于IGP(OSPF)生成Prefix-SID标签隧道。通过开启路由隧道递归迭代功能,让BGP路由不再基于普通IP路由转发,而是迭代IGP生成的SR标签隧道转发,利用标签穿透中间设备,彻底解决BGP路由黑洞问题。
实验由NE1、NE2、NE3、NE4、NE5、NE6六台路由器组成全网骨干网络,所有设备互联接口配置私网IP,每台设备配置LoopBack0作为设备标识环回口。NE1配置业务网段172.16.10.0/24,NE6配置业务网段172.16.20.0/24,两端通过BGP互相发布业务路由。全网骨干通过OSPF打通路由,并部署SR隧道。
第一步,配置IP
按照拓扑配置各设备物理互联接口IP地址,所有设备配置LoopBack0环回地址作为设备路由标识。NE1额外创建LoopBack11模拟业务网段172.16.10.0/24,NE6创建LoopBack11模拟业务网段172.16.20.0/24,用于BGP路由传递与连通性测试。
NE1: # interface GigabitEthernet0/7/0 ip address 10.10.12.1 255.255.255.0 # interface GigabitEthernet0/7/1 ip address 10.10.13.1 255.255.255.0 # interface LoopBack0 ip address 1.1.1.1 255.255.255.255 # interface LoopBack1 ip address 11.11.11.11 255.255.255.255 # interface LoopBack11 ip address 172.16.10.1 255.255.255.0 NE2: # interface GigabitEthernet0/7/0 ip address 10.10.12.2 255.255.255.0 # interface GigabitEthernet0/7/1 ip address 10.10.24.2 255.255.255.0 # interface LoopBack0 ip address 2.2.2.2 255.255.255.255 NE3: # interface GigabitEthernet0/7/0 ip address 10.10.13.3 255.255.255.0 # interface GigabitEthernet0/7/1 ip address 10.10.35.3 255.255.255.0 # interface GigabitEthernet0/7/2 ip address 10.10.34.3 255.255.255.0 # interface LoopBack0 ip address 3.3.3.3 255.255.255.255 NE4: # interface GigabitEthernet0/7/0 ip address 10.10.24.4 255.255.255.0 # interface GigabitEthernet0/7/1 ip address 10.10.46.4 255.255.255.0 # interface GigabitEthernet0/7/2 ip address 10.10.34.4 255.255.255.0 # interface LoopBack0 ip address 4.4.4.4 255.255.255.255 NE5: # interface GigabitEthernet0/7/0 ip address 10.10.35.5 255.255.255.0 # interface GigabitEthernet0/7/1 ip address 10.10.56.5 255.255.255.0 # interface LoopBack0 ip address 5.5.5.5 255.255.255.255 NE6: # interface GigabitEthernet0/7/0 ip address 10.10.56.6 255.255.255.0 # interface GigabitEthernet0/7/1 ip address 10.10.46.6 255.255.255.0 # interface LoopBack0 ip address 5.5.5.5 255.255.255.255 # interface LoopBack11 ip address 172.16.20.1 255.255.255.0第二步,配置ospf
所有设备启用OSPF进程1,手动配置与设备对应的Router-ID,将所有物理接口、环回接口全部宣告进OSPF Area 0骨干区域,实现全网骨干路由全通。保证所有设备可以学习到全网环回路由与互联网段路由,为后续SR隧道建立提供IGP基础。
NE1: # ospf 1 router-id 1.1.1.1 area 0.0.0.0 network 1.1.1.1 0.0.0.0 network 10.10.12.1 0.0.0.0 network 10.10.13.1 0.0.0.0 network 11.11.11.11 0.0.0.0 NE2: # ospf 1 router-id 2.2.2.2 area 0.0.0.0 network 2.2.2.2 0.0.0.0 network 10.10.12.2 0.0.0.0 network 10.10.24.2 0.0.0.0 NE3: # ospf 1 router-id 3.3.3.3 area 0.0.0.0 network 3.3.3.3 0.0.0.0 network 10.10.13.3 0.0.0.0 network 10.10.35.3 0.0.0.0 network 10.10.34.3 0.0.0.0 NE4: # ospf 1 router-id 4.4.4.4 area 0.0.0.0 network 4.4.4.4 0.0.0.0 network 10.10.24.4 0.0.0.0 network 10.10.46.4 0.0.0.0 network 10.10.34.4 0.0.0.0 NE5: # ospf 1 router-id 5.5.5.5 area 0.0.0.0 network 5.5.5.5 0.0.0.0 network 10.10.35.5 0.0.0.0 network 10.10.56.5 0.0.0.0 NE6: # ospf 1 router-id 6.6.6.6 area 0.0.0.0 network 6.6.6.6 0.0.0.0 network 10.10.56.6 0.0.0.0 network 10.10.46.6 0.0.0.0第三步,全局使能SR
在所有网络设备全局视图下开启segment-routing总功能,使设备具备段路由能力,为后续SR-MPLS标签分发提供基础功能支持。
NE1: # segment-routing NE2: # segment-routing NE3: # segment-routing NE4: # segment-routing NE5: # segment-routing NE6: # segment-routing第四步,在IGP里面,使能SR和SRGB
OSPF默认不支持SR属性传递,需要手动开启opaque-capability能力,使OSPF可以通过Opaque LSA携带SR-TLV信息,完成全网SID信息泛洪。同时开启segment-routing mpls功能,并为每台设备独立规划SRGB全局标签段,用于Index方式Prefix-SID标签自动计算。
本次实验设备SRGB规划:NE1(16100-16199)、NE2(16200-16299)、NE3(16300-16399)、NE4(16400-16499)、NE5(16500-16599)、NE6(16600-16699)。
NE1: # ospf 1 opaque-capability enable segment-routing mpls segment-routing global-block 16100 16199 NE2: # ospf 1 opaque-capability enable segment-routing mpls segment-routing global-block 16200 16299 NE3: # ospf 1 opaque-capability enable segment-routing mpls segment-routing global-block 16300 16399 NE4: # ospf 1 opaque-capability enable segment-routing mpls segment-routing global-block 16400 16499 NE5: # ospf 1 opaque-capability enable segment-routing mpls segment-routing global-block 16500 16599 NE6: # ospf 1 opaque-capability enable segment-routing mpls segment-routing global-block 16600 16699第五步,使能prefix-sid
在每台设备LoopBack0接口下配置ospf prefix-sid index索引,索引编号与设备序号一一对应。设备将根据本地SRGB+Index自动生成MPLS标签,并通过OSPF扩散至全网,全网设备自动生成去往各节点的SR-LSP隧道。
NE1: # interface LoopBack0 ospf prefix-sid index 1 NE2: # interface LoopBack0 ospf prefix-sid index 2 NE3: # interface LoopBack0 ospf prefix-sid index 3 NE4: # interface LoopBack0 ospf prefix-sid index 4 NE5: # interface LoopBack0 ospf prefix-sid index 5 NE6: # interface LoopBack0 ospf prefix-sid index 6第六步,部署bgp
在NE1与NE6之间建立IBGP邻居,基于环回口建立BGP连接,设备成功建立IBGP邻居关系。NE1通过BGP发布172.16.10.0/24网段,NE6发布172.16.20.0/24网段,两端均可正常学习到对端业务路由。
NE1: # bgp 16 router-id 1.1.1.1 peer 6.6.6.6 as-number 16 peer 6.6.6.6 connect-interface LoopBack0 # NE2: bgp 16 router-id 6.6.6.6 peer 1.1.1.1 as-number 16 peer 1.1.1.1 connect-interface LoopBack0 #bgp邻居关系建立成功
第七步,network目的网络,通过bgp传递。
CE1: # bgp 16 network 172.16.10.0 255.255.255.0 CE2: # bgp 16 network 172.16.20.0 255.255.255.0双方也学习到了对面的bgp路由
但是,我们在NE1上进行ping通测试,但是仍然不同。
BGP路由学习正常后,使用NE1 ping NE6业务网段无法互通。
原因是:BGP路由下一跳为对端环回地址,中间骨干设备没有BGP业务路由,数据包转发至中间设备时因无路由丢弃,形成典型BGP路由黑洞。此时路由仅基于IP路由转发,未调用SR标签隧道。所有,我们接下来要让目的路由走我们建设好的标签隧道路由。
第八步,配置隧道迭代
在NE1、NE6设备全局下开启命令:route recursive-lookup tunnel。该命令作用为:允许BGP路由下一跳不直接根据IP路由转发,而是递归迭代IGP生成的SR-MPLS隧道。使BGP业务路由强制叠加SR标签转发,利用MPLS标签穿透中间骨干设备,解决路由黑洞。
NE1: route recursive-lookup tunnel NE2: route recursive-lookup tunnel开启隧道迭代后,两端业务网段可以正常ping通。
通过报文抓包可观察到数据报文携带SR标签转发,流量通过SR隧道迭代至对端环回口,不再走普通IP路由,成功规避BGP路由黑洞。172.16.10.1去往172.16.20.1,是通过SR的隧道去往6.6.6.6来迭代的。从而做到了,通过SR标签解救bgp黑洞的问题,实验完成,
传统IBGP组网存在路由黑洞,仅依靠BGP路由无法实现跨骨干设备业务互通。
基于OSPF部署SR,可以通过Prefix-SID生成全网端到端标签隧道。
通过route recursive-lookup tunnel隧道迭代功能,可让BGP路由迭代SR隧道转发,利用MPLS标签穿透中间设备,彻底解决BGP路由黑洞问题。
实验验证SR隧道可以完美承载BGP业务,提升网络转发可靠性与穿透能力。