拓扑图

实验要求:

  1. R1上有一个环回口,1.1.1.0/24,通告在ISIS中。 R5上有一条引入的外部路由5.5.5.0/24.
  2. 在R2和R3上进行双向重分布
  3. 要求采用防环和防次优路径的措施,以保障在网络不出现环路和次优路径。

实验步骤:
分别在五台路由器上配置好IGP,并在R5上引入直连的5.5.5.0的路由,cost类型为2,metric值为5。 在R2 和 R3上进行重分布。

一、 解决环路问题:通过路由标记来完成。
现在查看2.2.2.0的路由表。R4上显示下一跳为R3,R3显示下一跳为R1,R1指向R2,R2指向R4,这样就产生了环路。为什么会产生环路:
站在R4的立场,首先它从R5学习到了ASE的路由,类型为E2,Cost为5,外部路由的优先级是150. 这条路由经过R2和R3会传递到ISIS区域,再从ISIS传递回到OSPF区域,从ISIS传递回来的路由,优先级150,类型为E2,Cost为1。所以它会优选从ISIS传递过来的5.5.5.0的路由。
怎么解决这个问题呢?有两个思路:

  1. 一个是使用route-policy匹配对应协议产生的路由,当OSPF重分发到ISIS时,只允许将始发为OSPF的路由发布到OSPF。当ISIS重分发到OSPF时,只允许将始发为ISIS的路由。
  2. 另一个方法是使用TAG,在R2和R3上进行重分发时,对路由做上TAG。具体做法:A. 在R2上将OSPF重分发到ISIS时,打上TAG10 B.在R3上将ISIS重分布到OSPF时,打上TAG15 ,并且拒绝TAG为10的流量回流。 C. 在R2上拒绝将TAG为15的流量重分发到ISIS中。 接着反向再来一圈TAG。 TAG的最终做为:在R2和R3上,将OSPF引入到ISIS时,拒绝TAG为15的流量;允许其它流量,并将流量打上TAG10. 将ISIS引入OSPF时,拒绝TAG为10的流量;允许其它流量 ,将将流量打上TAG15。 这样,为流量打上TAG就可以防止环路的产生了。
    
    ============================================================================
    R2和R3上的TAG配置:
    ospf 110 router-id 2.2.2.2
    import-route isis 1 route-policy isistoospf     //在引入ISIS路由到OSPF中时调用Policy

route-policy isistoospf deny node 10
if-match tag 10 //将打上了TAG10的路由拒绝,不能重分布到OSPF中

route-policy isistoospf permit node 20
apply tag 15 //重分布到OSPF中的路由,打上TAG15

=============================================================================
isis 1
is-level level-2
cost-style wide // 使用Wide类型的度量值,才能识别TAG
network-entity 49.0123.0000.0000.2222.00
import-route ospf 110 route-policy ospftoisis

route-policy ospftoisis deny node 10 // 将OSPF重分布到ISIS时,拒绝TAG为15的路由
if-match tag 15

route-policy ospftoisis permit node 20
apply tag 10 //OSPF重分布到ISIS时,将路由打上TAG10

=============================================================================


在R2和R3上做了TAG以后,现在就没有环路了。 R3到5.5.5.0指向R1, R1指向R2,R2指向R4,R4指向R5. 现在没有环路了。
<R3>display ip routing-table 5.5.5.0
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Table : Public
Summary Count : 1
Destination/Mask    Proto   Pre  Cost      Flags NextHop         Interface5.5.5.0/24  ISIS-L2 15   20          D   13.1.1.1        GigabitEthernet0/0/1<R1>display ip routing-table 5.5.5.0
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Table : Public
Summary Count : 1
Destination/Mask    Proto   Pre  Cost      Flags NextHop         Interface5.5.5.0/24  ISIS-L2 15   10          D   12.1.1.2        GigabitEthernet0/0/0<R2>display ip routing-table 5.5.5.0
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Table : Public
Summary Count : 1
Destination/Mask    Proto   Pre  Cost      Flags NextHop         Interface5.5.5.0/24  O_ASE   150  5           D   24.1.1.4        GigabitEthernet0/0/1<R4>display ip routing-table 5.5.5.0
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Table : Public
Summary Count : 1
Destination/Mask    Proto   Pre  Cost      Flags NextHop         Interface5.5.5.0/24  O_ASE   150  5           D   45.1.1.5        GigabitEthernet0/0/2二、 这个时候,再来看看是否存在次优路由。还是5.5.5.0的路由。上面实验中,在R3上去往5.5.5.0的路由,下一跳指向R1,按照正常情况下来看,5.5.5.0的路由是R4传递过来的,下一跳要指向R4才是最优的。为什么R3上的5.5.5.0的路由指向了R1,同样还是因为从R1的ISIS协议传递过来的协议优先值要低。下一跳 管理距离 Cost 优选下一跳 管理距离 Cost   优选
R1          15          20    √
R4         150         5  那我们怎么来解决次优路径的问题呢,其实也有两种办法:
1. 可以使用fileter-policy在入方向过滤路由,在R2和R3的协议进程下,使用fileter过滤从ISIS学习到的2.2.2.0的路由。
2. 可以针对这条路由修改其协议优先级的值大于从OSPF协议学习到的优先级的值。那么路由器会优选从协议优先级小的路由协议学习到的路由。需要在R2和R3上都完成操作。

=============================================================================
ip ip-prefix 55 index 10 permit 5.5.5.0 24 #

route-policy pref permit node 10
if-match ip-prefix 55
apply preference 188

isis 1
preference route-policy pref

改完了协议优先级的值以后,就解决了次优路径的问题。到此为止,问题得到解决。总结一下:
1. 多点双向重分布,可能产生环路问题,环路可以通过对路由打标记来实现路由过滤,这种方法可以解决环路问题。
2. 对于因为协议优先级而带来的次优路径问题,可以手动针对特定的路由修改优先级。
3. 对于因为Cost而导致的问题,也可以修改Cost。
4. 路由器选路,如果有多条路径,不同路由协议之间通过比较协议优先级,协议优先级值小的协议优先;对于从同种路由协议学习到的路由,比较Cost值,值小的优先
5. 对于ISIS路由协议,如果需识别TAG,它的cost样式需要为wide。

转载于:https://blog.51cto.com/liu008qing/2317466

双向多点路由重分布--如何防止路由环路以及次优路径相关推荐

  1. 利用路由策略解决路由引入中产生的路由环路和次优路径问题

    利用路由策略来解决路由引入过程中产生的次优路径和环路问题: 如左边拓扑图所示:在一个运行ospf的区域和rip区域,在AR2上进入ospf进程引入直连路由,ospf引入的外部路由优先级默认为 150, ...

  2. CCIE实验之路由重分布之重分布的原则

    一,重分布的定义 路由重分布,是指链接到不同路由选择域的边界路由器在不同自主系统之间交换和通告路由选择信息的能力. 二.重分布的原则(我们必须理解重分布的原则,否则对于重分布所产生的问题将无从下手) ...

  3. 路由重分布与分布列表

    当许多运行多路由的网络要集成到一起时,必须在这些不同的路由选择协议之间共享路由信息.在路由选择协议之间交换路由信息的过程被称为路由重分布. 路由重分布时计量单位和管理距离是必须要考虑的.每一种路由协议 ...

  4. 华为路由交换由浅入深系列(四)OSPF单区域、多区域配置、时间参数 DRBDR选举 重分布路由与认证演示

    掌握目标 一基本配置: 二.OSPF 单区域配置 三.修改OSPF Hello和Dead时间 四.OSPF重分布默认路由 五.OSPF DR/BDR选举 六.配置OSPF多区域 七.OSPF直连路由重 ...

  5. CCNP实验:路由重分布注意事项

    CCNP实验:路由重分布注意事项之一.重分布基础: 大家都知道,一般来说一个组织或者一个跨国公司很少只使用一个路由协议,而如果一个公司同时运行了多个路由协议,或者一个公司和另外一个公司合并的时候两个公 ...

  6. eigrp 重分布默认路由

    平时没有关注默认路由的重分布细节,今天偶然遇到,做做实验.分享一下默认路由的ACL写法: interface Loopback0 ip address 202.1.1.1 255.255.255.0 ...

  7. 路由重分布列表控制例子

    OSPF与RIP路由重分布配置,使用重分布列表,对分布的路由进行控制的配置 如上例图所示:"RIP与OSPF路由重分布例子" switchA(config)#router rip ...

  8. F1060 IPV6 BGP4+与静态路由重分布典型组网配置案例

    转载来源 :F1060 IPV6 BGP4+与静态路由重分布典型组网配置案例 : https://mp.weixin.qq.com/s/zUCMs54yPgcCtNwXpARXnQ 1.组网及说明 组 ...

  9. 【你知道路由重分布吗】

    今天带大家了解一下 路由重分布. 路由重分布是指连接不同路由域(自治系统)的边界路由器,能够在路由协议之间交换和通告路由信息,比如从一种协议(含静态/直连路由)到另一种协议或者同一种协议的多个实例之间 ...

最新文章

  1. Lifting Transformer: 基于跨步卷积Transformer的高效三维人体姿态估计
  2. Emacs Org-mode学习笔记
  3. JS-用js的for循环实现九九乘法表以及其他算数题等
  4. Hadoop开发环境配置2-eclipse集成maven插件
  5. 查看临界区等待线程数量
  6. can与could区别
  7. 开源系统管理资源大合辑
  8. 【Pytorch神经网络理论篇】 22 自编码神经网络:概述+变分+条件变分自编码神经网络
  9. 配置webpack.config.js遇到的一些问题
  10. (三)在Azure上创建您的第一个Kubernetes集群
  11. python实现语音播放_python通过wxPython打开一个音频文件并播放的方法
  12. mysql和sql时间 字段比较大小的问题
  13. Linux运维工程师,你能把iptables玩转麽?
  14. 面试官:说说什么是 Java 内存模型(JMM)?
  15. 多传感器信息融合及应用(何友等著)一至四章节读书笔记
  16. Nodejs 服务端生成验证码
  17. 阿里云oss对象存储的使用
  18. GraphQL是什么,入门了解看这一篇就够了!
  19. 从新手运气看幸存者偏差
  20. Docker Swarm 健康检查

热门文章

  1. BZOJ 3106 棋盘游戏
  2. C#中Hashtable、Dictionary详解以及写入和读取对比
  3. 美国人跨入中产行列的6个指标。
  4. c#扩展方法奇思妙用变态篇四:string 的翻身革命
  5. mysql 中文含数字排序_英语| 124期 Sort 坑爹的字符串排序
  6. CSS如何设置高度为屏幕高度_(15)让这些“展示”有更好的扩展性——媒体查询 | CSS...
  7. [SQL] Query mystore start [ERR] 1005 - Can't create table 'mystore.admin' (errno: 150)
  8. Java实现excel的读与写(Apache POI)
  9. MSG结构体和WndProc窗口过程详解
  10. __stdcall、__cdecl 、CALLBACK 几种函数修饰符