前文我们了解了路由引入相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15359902.html;今天我们来讨论下由于路由引入所导致的问题以及怎么避免此类问题的解决方案;

  各路由协议在IP路由表中的默认优先级

HCNP Routing&Switching之路由引入导致的问题及解决方案-LMLPHP

  提示:以上是各路由协议在ip路由表中的优先级;我们知道对于路由器来说,它最终依靠的是ip路由表来转发数据;对于去往同一网络的路由,优先级数字越小,表示优先级越高;优先级越高,对应也就表示路由越优先;即对应路由优先存放在路由表;如果优先级相同,则此时才会比对开销,开销越小的路由,对应路由优先存放在ip路由表中,即在数据包转发选路时,优先选择开销小的路由;如果优先级、开销都一样,则两个路由对应的链路,负载分担对应网络流量;

  路由引入导致的次优路由

HCNP Routing&Switching之路由引入导致的问题及解决方案-LMLPHP

  提示:如上图所示,对于2.2.2.2这个网络的路由,首先RTD通过RIP向RTC和RTB发送,对应RTC和RTB都会通过RIP学习到对应路由信息;此时如果我们在RTC上把RIP的路由引入至isis中,那么对应2.2.2.2的路由会随之被引入之isis网络中;对于RTB来说,此时它既可以通过RIP学习到达2.2.2.2的路由,同时也可以通过ISIS学习到达2.2.2.2的路由;由于isis路由协议的优先级要高于RIP,所以RTB的路由表中只会存在ISIS学习到达2.2.2.2的路由;即RTB要想和2.2.2.2通信,它需要走RTB--->RTA--->RTA--->RTC--->RTD,很显然没有RTB--->RTD路径短;所以此时就会产生次优路由;

  解决次优路由方案-->利用路由过滤

HCNP Routing&Switching之路由引入导致的问题及解决方案-LMLPHP

  提示:解决类似次优路由的方法,我们可以在RTB上通过路由策略,将对应引入的路由过滤掉;这样一来RTB就不会通过ISIS学习到引入的路由,对应也就不会产生次优路由;

  解决次优路由方案-->调整路由协议优先级

HCNP Routing&Switching之路由引入导致的问题及解决方案-LMLPHP

  提示:如上图所示,我们还可以通过修改ISIS路由协议的优先级,从而来影响RTB上路由表中的路由条目;我们把RTB上ISIS的优先级调整至大于RIP默认优先级100即可解决次优路由;或者我们调整RIP优先级至小于ISIS默认优先级15也行;

  路由引入导致的路由环路

HCNP Routing&Switching之路由引入导致的问题及解决方案-LMLPHP

  提示:如上图所示,首先我们在RTA上将2.2.2.2的路由引入之OSPF中,并将对应开销更改为2,此操作会导致RTB、RTC、RTE通过ospf5类LSA学习到2.2.2.2的路由,对应路由的优先级为150,开销为2;我们在RTE上将ospf路由引入之ISIS中,此操作会导致RTD通过ISIS学习到达2.2.2.2的路由,优先级为15,开销为1(默认种子度量值为1),同时RTD也会通过LSP包向RTC更新路由;如果此时我们在RTC上将isis进程中的路由再次引入至ospf中,此时对应2.2.2.2的路由会随之被引入至opsf进程,其优先级为150,开销为1;此时RTB收到优先级相同,开销要小于RTA发送的LSA,此时RTB的路由表中就只会存放RTC发送到LSA更新,并计算对应路由存放在ip路由表中;这样一来RTB要访问2.2.2.2网络,此时路由环路就产生了;首先RTB访问2.2.2.2网络,它会把数据包发送至RTC,而不会发送至RTA,原因是RTC发送的LSA中对应路由的开销要小于RTA发送的LSA开销要小;所以对于RTB来说,它去往2.2.2.2的路由,其下一跳为RTC;对应RTC去往2.2.2.2的下一跳为RTD,RTD去往2.2.2.2的下一跳为RTE,RTE去往2.2.2.2的下一跳为RTB;最终直到对应数据包的TTL值减为0以后,对应数据包才会停止;

  解决路由环路方案-->利用路由过滤避免环路

HCNP Routing&Switching之路由引入导致的问题及解决方案-LMLPHP

  提示:路由环路形成最主要的原因是我们把引入的路由再次引入至原路由协议;我们可以通过路由策略将对应引入路由(原路由协议已经存在的路由),再次引入时将其过滤掉即可;如上图所示,我们可以在RTC上再次引入路由时,直接将原ospf中已经存在的2.2.2.2的路由过滤掉即可;

  解决路由环路方案-->调整路由协议优先级避免环路

HCNP Routing&Switching之路由引入导致的问题及解决方案-LMLPHP

  提示:我们知道路由引入的必要条件是对应路由必须存在于对应路由器的路由表中才可以执行路由引入;如果通过调整优先级将对应路由不存在路由表中即可解除环路;对应能影响RTC路由表中的信息,我们可以调整ISIS优先级至大于ospf外部路由默认优先级150即可;调整以后,对应RTC通过ISIS学习到的路由,就不会存放于路由表中,因为RTC通过ospf学习到达外部路由其优先级为150,对应通过isis学习到达路由优先级为160,所以RTC的路由表只会存放优先级略小的路由条目;这样一来RTC收到去往2.2.2.2的路由,其下一条为RTB,而RTB收到去往2.2.2.2的下一跳为RTA,RTA和2.2.2.2为直连;最终环路被破坏;

  实验:如下拓扑,通过配置路由引入,实现全网互通

HCNP Routing&Switching之路由引入导致的问题及解决方案-LMLPHP

  R1的配置

HCNP Routing&Switching之路由引入导致的问题及解决方案-LMLPHPHCNP Routing&Switching之路由引入导致的问题及解决方案-LMLPHP
sys
sys R1
int g0/0/0
ip add 12.0.0.1 24
int g0/0/1
ip add 13.0.0.1 24

rip 1
ver 2
net 12.0.0.0
net 13.0.0.0
10-03 01:48