华为路由器内部BGP环路的解决方法(路由器如何避免环路)

2024-06-09 19:58:17

一、华为路由器内部BGP环路的解决方法


IBGP允许边缘路由器共享NLRI及其相关属性,从而增强系统范围内的路由策略,其必须以全网状结构相连,以防止路由环回,本文就华为路由器为大家介绍如果出现环路,我们应该怎样解决。

一、组网环境
在华为路由器的组网环境中,有四个路由器,其中路由器A和路由器C建立EBGP邻居关系,并且通过network方式发布所有路由给路由器C,路由器B和路由器D的配置与路由器A和路由器C完全对称,当路由器A和路由器C的互连接口关闭后,在路由器C上发现去往路由器A的所有网段都不通。
二、故障分析
1、在路由器C上执行display current-configuratiion查看配置。
2、路由器C通过route-policy将路由再通告给RR的时候强制指定其下一跳为虚拟下一跳地址,路由器A和路由器C互连的三条链路接口地址,在路由器C的ISIS中使用路由策略通过import方式引入这三条静态路由。
3、当路由器A和路由器C的互连接口关闭后,在路由器C上发现去往路由器A的路由下一跳还是虚拟下一跳202.105.0.5,但是出接口却指向了其他路由器。
4、当路由器C和城域网路由器A的互连接口关闭时,由于虚拟下一跳静态路由没有指定出接口,因此静态路由不会失效,此时虚拟下一跳通过路由迭代选择了BGP路由,该路由指向其他路由器从而造成环路。
三、故障处理
1、执行system-view,进入系统视图。
2、执行ip route-static命令,绑定出接口,配置虚拟下一跳静态路由的时候没有和出接口进行关联,导致出接口关闭的时候这些静态路由还是生效的,因此配置虚拟下一跳静态路由的时候绑定出接口。
3、当对端接口关闭的时候该静态路由会失效,此时由于路由器D上在ISIS中同时引入了虚拟下一跳静态路由,因此路由器C上对应虚拟下一跳202.105.0.5的路由应该指向了路由器D,从而不会出现上述情况导致的不通问题。
4、执行return退回到用户视图。
5、执行save,保存对配置的修改。
经过上面的操作后,故障得到解决,到这里我们不难发现,其实问题的原因很简单,我们只在平时设置路由器多注意一下,就能避免这样的故障出现了。


二、思科路由环路解决办法


IP解决环路机制

在最初开发RIP的时候就发现环路的问题,所以已经在RIPv1和 RIPv2中集成了几种防止环路的方式:

l 最大跳数:当一个路由条目作为副本发送出去的时候就会自加1跳,那么最大加到16跳,到16跳就已经被视为最大条数不可达了。
l 水平分割:路由器不会把从某个接口学习到的路由在从该接口广播回去或者以组播的方式发送回去。
l 带毒性逆转的水平分割:路由器从某些接口学习到的路由有可能从该接口反发送出去,只是这些被路由已经具有毒性,即跳数都被加到了16跳。
l 抑制定时器:当路由表中的某个条目所指网络消失时,路由器并不会立刻的删除该条目并学习新条目,而是严格按照我们前面所介绍的计时器时间现将条目设置为无效接着是挂起,在240秒时才删除该条目,这么做其实是为了尽可能的给于一个时间等待发生改变的网络恢复。
l 触发更新:因网络拓扑发生变化导致路由表发生改变时,路由器立刻产生更新通告直连邻居,不在需要等待30秒的更新周期,这样做是为了尽可能的将网络拓扑的改变通告给其他人。
艾迪飞朱老师提供答案


三、请阐述RIP如何更新路由项


a.
RIP协议有两种更新机制:

定期更新

触发更新。
b.
RIP路由器总是会每隔30秒(默认值为30秒,可以修改,而且也可能与设置值有些偏差)通过UDP
520端口以RIP广播应答方式向邻居路由器发送的一个路由更新包,包中包括了本路由器上的完整的路由表(除了被“水平分割”机制抑制的路由表项),用来向邻居路由器提供路由更新,同时用来向邻居路由器证明自己的存在。RIP的路由表中主要包括“目的网络”、“下一跳地址”和“距离”这三个字段
防止路由环路的方法:
① 路由毒化。
② 水平分割。
③ 毒性逆转。
④ 定义最大跳数为16跳。
⑤ 抑制时间,和路由毒化结合使用。

触发更新。