iBGP与OSPF双点单向重分发案例 | 您所在的位置:网站首页 › OSPF引入到BGP中优先级 › iBGP与OSPF双点单向重分发案例 |
当前网络情况: 网点设备作为下联网点用户网关,上面分别配置两个OSPF进程:OSPF进程100和OSPF进程200,两个进程在网点设备上相互引入。 Wan_AR13、Wan_AR14与网点设备互联端口以及Wan_AR13和Wan_AR14之间互联端口在OSPF进程400中发布。 Wan_DS01和Wan_DS02做为RR,分别与两台Wan_AR之间建立iBGP邻居。底层设备间均跑OSPF协议。 两台Wan_AR上,将iBGP的路由以type1类型引入OSPF中,并挂上Router-Policy做路由过滤。(注意:默认OSPF只引入EBGP路由,需要配置allow-ibgp参数以引入iBGP)。将网点路由引入BGP时,采用在BGP中Null 0 + Network 汇总路由并挂上Router-Policy的方法。 当前iBGP的路由优先级为170,OSPF的内部路由协议优先级为110,OSPF外部路由协议优先级为190。 Wan_AR13与网点之间是OSPF区域1,Wan_AR14与网点之间是OSPF区域2,两个Wan_AR之间是OSPF区域0。Wan_AR13与Wan_AR14之间链路的Cost值大于任一Wan_AR到网点的Cost值。 Wan_AR发布的网点路由会通过反射器将路由发送到位于同站点的另一台Wan_AR上,造成其中一台设备由于路由优选错误,由此引发路由环路问题尤其是在网点与两个Wan_AR的连线都断的情况下,就会产生路由环路问题。 无 详细解释:Wan_AR14此时收到进程100网点的路由有三份: 1、 在进程200中的5类LSA信息; 2、 在进程400中的3类LSA信息; 3、 通过RR反射的iBGP路由。
此时,3类的LSA显然优于5类的LSA。同时,3类的LSA优先级为110,优于iBGP的170,所以此时Wan_AR14学习到OSPF进程100的网段的路由应该是从Wan_AR13上学到的区域间路由。(OSPF进程100 :100.100.100.100)
此时发现Wan_AR14上的BGP路由其实学习到了两条,只是优选了IGP路由。但是Wan_AR13上的BGP路由只学习到了一条。那么原因是什么呢? 原因是RR会选择将最优的路由进行反射,具体如下图: (注:Wan_DS的角色就是RR) 但是,如果Wan_AR13与网点的链路断的情况下,此时Wan_AR14就会优选5类LSA或者优选从RR反射的iBGP路由。具体情况,就看是IGP先写入BGP路由表还是iBGP先写入BGP的路由表。如果IGP先写入BGP路由表时,它的prefer-value值为32768。 此时,Wan_AR14会把此路由通过RR反射给Wan_AR13,Wan_AR13收到后,又会将此路由从BGP中引入OSPF进程400,从而发送给Wan_AR14。此时Wan_AR14的进程100的IGP路由有两条,都是5类的LSA。此时应该优选Cost小的LSA。所以,Wan_AR14优选从网点进程200学来的路由。 路由学习具体如图所示:
如果此时重置Wan_AR14的OSPF进程,Wan_AR14学习到进程100的路由还是从上行与网点互联学习到,此时Wan_AR13学习到进程100的路由就又会分两种情况:
1、 从IGP学习到(Wan_AR14从网点学到的路由) 2、 从iBGP学习到。
此时,就又要看是否IGP先写入路由表了。 路由学习方式具体如图所示: 然而在网点的两条线路都断的情况下,就会出现路由环路:
此类问题出现的原因为: 1、 路由重复引入,产生次优路由 2、 极端情况下产生路由环路 1、 将BGP引入OSPF中时,将路由打tag标签,然后在另一端过滤掉; 2、 将OSPF引入BGP时,标记Community属性,然后在同一站点的另一台设备的BGP指Peer的入方向上将带有此Community属性的路由过滤掉。 3、 当前,也可以在RR上写Route-Policy进行过滤。
补充说明 : 用户现网将Wan AR的IBGP的路由优先级数值调低(170),将OSPF的IGP的外部路由优先级数值调整高(190),目的是要解决两台Wan AR中(双ASBR的情况下)只有一台路由器是IBGP路由,另一台是IGP路由,无法实现预期的分流。此方式在网络稳定的情况下可以实现从而实现两台Wan AR设备上只收IBGP路由。但在使用将动态IGP路由协议引入BGP的前提时会产生以下两个问题,导致流量都压在一侧链路上: (1)这里有个时间问题,即现写入OSPF路由,还是先写入BGP路由的顺序问题。当一台Wan AR上的OSPF上引入了IBGP路由时,这台Wan AR会通将引入的路由通过OSPF发布到另一台Wan AR上。如果OSPF路由先进入此设备路由表,生成BGP表象,那么后续再学习到IBGP的路由无法写入路由表,导致修改优先级的方法失效,仍表现为一台ASBR为BGP路由,一台ASBR为OSPF路由。主要原因是本地一旦生成BGP始发路由,pre-value值为32768,根据路由选路第一条和第三条原则使得后续BGP邻居发过来的BGP路由无法优化。当然此时重置Wan AR与网点互联的OSPF进程,可使得两台ASBR都是BGP路由; (2)在理想状态下,即两台ASBR都是BGP路由时,其中一个Wan AR的BGP的进程重启或者设备重启后,OSPF Peer会先建立起来。这样,在Wan AR上就通过IGP学习到下联业务网段的路由,等IBGP邻居起来后,发送 的BGP路由也无法写入Wan AR的路由表中,原因同上,仍然是路由写入顺序问题。 解决方案:可以通过在在两边Wan AR的OSPF引入IBGP路由时,打tag标签,引回BGP时下针对此标签做过滤。在路由条目较少的情况下可以在BGP中通过Network业务网段,而非动态方式引入IGP路由。 建议设计网络时,在满足用户需求的基础上,也要关注网络的健壮程度。有些经典组网是有相关的设计规范的,需要按照设计规范去设计。 |
CopyRight 2018-2019 实验室设备网 版权所有 |