<转>OSPF OE2和OE1外部路由详解(主要解释了下OE2为什么没默认负载均衡)
从OSPF的ASBR重分发的外部路由,会生成OE1和OE2的两类路由在OSPF区域中进行传递。
cisco默认的外部路由的类型是OE2.默认的metric=20,不会根据链路的cost进行累加。
而OE1必须要经过手工指定以后才能在OSPF区域内进行传递。在该文档中会把OE1和OE2通过实验都详细验证一次,然后看看区别在哪里,最后还有一个关于OE2路由的问题是forward metric,这个知识点很少用到,但是需要了解。算是一个高级知识点吧。
好了,下面来看看OE1和OE2的区别。
下面是实验拓扑图:(实验配置就不提供了,这里主要阐述原理,在看这个文档之前至少需要了解清楚ospf的基本配置)
这个拓扑图中,首先介绍一下情况。R1在area 0骨干区域,R2是ABR,分别连接R1和R3,R3在Area 10中,R4是ASBR,后面的网络是EIGRP.
在这样的情况下,如果在R4上面的配置为:
注意黄色的配置,把无类的eigrp 100重分发到OSPF 1中,那么R4就会将以5类LSA扩散到OSPF的所有区域。最后R1上面也会收到相关的路由消息,最后把路由表同步过来,在R1上面show ip route就可以看到到172.16.0.0/16的路由。(关于1-5类的LSA实验详解请参考http: //361531.blog.51cto.com/351531/687142)
最后在R1上面可以看到收到3条OE2的路由。
这里可以看到在R1上面,有3条OE2的路由,E2--OSPF external type 2.
我们可以看到每条路由的cost都是20.不会因为经过了3跳以后就累加进路由去。
也就是说,外部路由E2类型是cisco默认的类型,如果不手动指定,那么一直都会以2类的路由进行扩散。
再来看看OE1.需要在R4上面做手工指定的配置才能将默认的OE2转换成OE1:
下面看看R4的配置变更,需要用到命令metric-type 1.
这里特别手工指定了metric-type=1.那么一会就回更新路由类型到R1,R1再show ip route的时候,应该会发现到达172.16.0.0的所有三条路由的类型全部变成了OE1.
最后再仔细看看,OE1的时候,耗费一栏是23,也就是说,20+1+1+1=23,把三段链路的耗费做了一个总和最后加上20.
这里再补充一个知识点,如果想让耗费增加,是在学习路由的方向,也就是对应R1/R2/R3的入方向做ip cost xxx才能有效增加总耗费。
根据上面拓扑图的原理,这里来进行验证一下,首先在R3的F1/0修改cost为2
最后到R1上面看看相关的OE1的路由:
三条OE1的路由耗费全部都变成了24.
下面是关于OE2的一个高级点的知识点,forward metric的概念。看看下面的拓扑图:
在这个拓扑图中,请注意R6和R4的network的网段,完全一样。
让我们带到问题来验证这个问题:
两个ASBR分别都起了三个loopback接口,并且三个loopback接口完全一样,那么根据我们上面所提到的OE2的原则,外部重分布进OSPF的路由总是20,并不会累加ospf区域内的链路的cost,在这种极端的情况下,如果R6和R4都是用的cisco默认的OE2路由到R1的话,那么在R3上面是否会负载均衡呢?
让我们先用实验说话,再说明forward metric的作用。
把实验环境搭建好以后,在R6和R4用相同的充分发命令不带metric-type.两台ASBR通过OE2路由通告给area 0的R1.
那么根据OE2的原理,不会累加耗费,所以两个ASBR传递给R3的路由应该都是20才对,又根据ospf的原理,根据链路耗费来进行选录,如果耗费相同,那么R3上面应该show ip route 172.16.0.0的时候应该是负载均衡才对。
结果是这样的吗?
首先看R6和R4的配置:
R6:
hostname R6
!
interface Loopback0
ip address 60.60.60.60 255.255.255.255
!
interface Loopback1
ip address 172.16.1.1 255.255.255.0
!
interface Loopback2
ip address 172.16.2.1 255.255.255.0
!
interface Loopback3
ip address 172.16.3.1 255.255.255.0
!
interface FastEthernet0/0
ip address 6.1.1.2 255.255.255.0
duplex full
!
router eigrp 100
network 172.16.1.0 0.0.0.255
network 172.16.2.0 0.0.0.255
network 172.16.3.0 0.0.0.255
no auto-summary
!
router ospf 1
router-id 60.60.60.60
log-adjacency-changes
redistribute eigrp 100 subnets
network 6.1.1.0 0.0.0.255 area 10
network 60.60.60.60 0.0.0.0 area 10
!
R4:
hostname R4
interface Loopback0
ip address 40.40.40.40 255.255.255.255
!
interface Loopback1
ip address 172.16.1.1 255.255.255.0
!
interface Loopback2
ip address 172.16.2.1 255.255.255.0
!
interface Loopback3
ip address 172.16.3.1 255.255.255.0
!
interface FastEthernet1/0
ip address 3.1.1.2 255.255.255.0
duplex full
speed auto
!
router eigrp 100
network 172.16.1.0 0.0.0.255
network 172.16.2.0 0.0.0.255
network 172.16.3.0 0.0.0.255
no auto-summary
!
router ospf 1
router-id 40.40.40.40
log-adjacency-changes
redistribute eigrp 100 subnets
network 3.1.1.0 0.0.0.255 area 10
network 40.40.40.40 0.0.0.0 area 10
!
最后在R3上面看看两条耗费相同的路由通告过来,是否形成了负载均衡的局面:
通过实验证明并没有形成负载均衡,那么这里的172.16.0.0的路由最终到底是在R4上面还是在R6上面呢?
通过traceroute发现居然是R4:
这里你可以反复验证,绝对目的地是R4.而不可能是R6,除非R4的172.16.0.0的路由down了,不通告了,那么才能轮到R6.
为什么会这样呢?
这个是因为OE2的路由中,当碰到这样的极端问题的时候,还会有一个东西叫forward metric.
在这种极端情况下,R1/R2/R3还是会看哪里的耗费小,对于到目的地只有一条路径的时候,那么那个20始终是20的耗费,如果有多条路径可以同时到达对端,这时候OE2会看哪条链路的总耗费小。
对于R1来说,要到R4,总耗费为3(这里forward metric不需要加上20),而如果要到R6的话,总耗费需要4(这里forward metric不需要加上20).
所以最终只会选择R4走最短路径。这是ospf的一个原理的特征。
说了那么多,在哪里可以看forward metric这个东西呢?
现在在R1上面:
这里可以看到,管理距离110,耗费cost20,类型为2类external,最后一个就是forward metric.是3.
下面我还专门traceroute了一下。路径是R1->R2->R3->R4.
好,我再做一个实验。请参考拓扑图,我把R4的F1/0 shutdown.这个时候R1只能学到172.16.0.0网段通过R6学到,让我们看看R1的路由有什么变化。
当shutdown R4的F1/0后,在R1上面show ip route 的话,根本看不出和之前R4正常的时候有什么区别,
耗费还是20.都是通过下一跳R2走的。
但是如果细心的人会发现,show ip route 172.16.1.1这个时候在R1上面发生了细微的变化:
请和上面的show ip route 还有traceroute对比一下,对,就是forward metric从以前的3变成了4.
forward metric其实就是在计算OSPF区域内链路的cost耗费总和。
现在R4路由器没有了,所以traceroute到的目的就是R6了。而R6到R1的总链路耗费是4.
说到这里,大家应该都明白了,当有两条链路都可以到目的地的时候,OE2不是我们想象中的那样会坐负载均衡,而是会优先选路。
最后再来一个思考题:
如果在R3上面我们想看到最后show ip route 172.16.0.0的路由表称为负载均衡,我们应该如何设置呢?
答案:
在R3的F1/0设置为ip ospf cost=2.这样就可以负载均衡了。
在R3上面:
最后在R3上面看到的结果就是负载均衡了。
仅仅是一个实例,实际上我一直都有一个疑问,为什么OSPF默认为OE2?既然默认为OE2,耗费都是20,那么就应该在这种情况下默认为负载均 衡,因为ospf比较的就是cost,如果在这种环境下,不负载均衡,那么默认为OE1就可以满足需求,而不需要引入forward metric这个概念。既然引入了OE2,最终不管采用任何手段达到的效果是OE1的默认效果。为什么会这样?
请教了一位CCIE同事,他得结论很经典,RFC就是这样规定的。
呵呵,真的感觉有点脱了裤子放屁----多此一举了.......
大家可以一起分享一下这个设计的看法.......
本文出自 “ hank--我,只关注原理” 博客
<转>OSPF OE2和OE1外部路由详解(主要解释了下OE2为什么没默认负载均衡)相关推荐
- 03-OSPF OE2和OE1外部路由详解
Technorati 标签: OSPF,CCIE,OE1,OE2,forward metric 从OSPF的ASBR重分发的外部路由,会生成OE1和OE2的两类路由在OSPF区域中进行传递. cisc ...
- ipconfig不是内部或外部_OSPF外部路由详解-LSA4-LSA5
标题序号,接续上文,并非笔误 感谢阅读,欢迎交流 本篇仅介绍外部路由,下篇介绍特殊区域 6.外部路由 ASBR会生成一条AS-External-LSA(Type4)描述引入的外部路由,ABR会生成一条 ...
- React Router路由详解
React Router路由详解 一.基础 1.安装使用 2.React Router 中通用的组件 路由组件 BrowserRouter 和 HashRouter 路径匹配组件: Route 和 S ...
- API 网关服务:Spring Cloud Zuul(二):路由详解、Cookie 与头信息
实践出于<Spring Cloud 微服务实战> - 瞿永超 著 路由详解 传统路由配置 传统路由配置就是在不依赖于服务发现机制的情况下,通过在配置文件中具体指定每个路由表达式与服务实 ...
- CCIE理论-第十三篇-IPV6-路由-静态+(EIGRP+OSPF)两种做法+IPV4-ARP代理详解(精髓篇)
CCIE理论-第十三篇-IPV6-路由-静态+(EIGRP+OSPF)两种做法+IPV4-ARP代理详解(精髓篇) 其实呢,路由协议,静态路由 他还是ipv4那一套,只不过多了点东西 该怎么搞怎么搞, ...
- Ocelot简易教程(三)之主要特性及路由详解
作者:依乐祝 原文地址:https://www.cnblogs.com/yilezhu/p/9664977.html 上篇<Ocelot简易教程(二)之快速开始2>教大家如何快速跑起来一个 ...
- vue路由详解 --基础
vue路由详解 --基础 1.router-link 和router-view组件 router-link相当于封装了一个a标签 router-view为组件显示的位置 <router-link ...
- elasticsearch系列三:索引详解(分词器、文档管理、路由详解(集群))
目录 一.分词器 1. 认识分词器 1.1 Analyzer 分析器 1.2 如何测试分词器 2. 内建的字符过滤器(character filter) 2.1 HTML过滤字符过滤器(HTML S ...
- angular路由详解
angular路由 路由 (route) ,几乎所有的 MVC(VM) 框架都应该具有的特性,因为它是前端构建单页面应用 (SPA) 必不可少的组成部分. 那么,对于 angular 而言,它自然也有 ...
最新文章
- cmd查看python安装路径-从cmd如何查找python的安装路径?
- 【数据结构】集合及运算
- u8 和 char如何转化_如何编写高效率稳定的单片机代码
- 深度学习(十七)——SSD, YOLOv2
- api报错 javaee maven_JavaEE关于Maven的配置与学习
- JavaFX官方教程(一)之JavaFX概述
- 编程使用资源文件实现多语言页面(In Action)
- 【连载】如何掌握openGauss数据库核心技术?秘诀一:拿捏SQL引擎(1)
- 容器入门(8) - 镜像签名
- byte二维数组表示
- static与get属性的作用
- Advanced Wlan Attacks (RADIUS)
- Arrays.copyOf()方法详解-jdk1.8
- Java内存管理及GC算法
- 原生javascript的树形插件tree.js(纯原生js,无需引用其他js)
- simulink-EtherCAT工具箱常用模块的简要介绍
- 南邮 | 算法分析与设计实验三:回溯法
- java字符串长度_Java字符串长
- 魔兽世界怀旧服服务器显示地图,魔兽世界怀旧服:1-60级地图任务路线大全,快来拿走收藏!部落篇...
- vue 创建桌面应用
热门文章
- php去下划线,html怎么去除字体下划线?去除字体下划线方法
- Actor 分布式并行计算模型: The Actor Model for Concurrent Computation
- SYD8811 内存和代码的分布
- 基础练习16-分解质因数
- 被取代的ERP?EBC正在用业务数字化让管理出效益
- 【摘】WebGIS开发从入门到......
- MT40A1G16KH-062E AIT内存MT40A1G16KH-062E AUT
- 车内看车头正不正技巧_科目二考试最实用技巧!
- 使用HTML5和CSS制作抖音首页
- 【找规律】codeforces 710 F