目录
4)OSPF区域划分规则(单个区域的那个区域就是Area0)
在以上三种(BMA 、P2P、P2MP)环境中运行OSPF的方案:
根本解决方案:对OSPF网络重新规划与配置,满足OSPF区域划分规则。
一、OSPF基础
动态路由协议的评判标准----收敛速度、选路、占用资源
收敛速度:计时器,ospf小于rip;
选路依据:rip看跳数;ospf看带宽;
资源占用:总体的角度来看rip大于ospf;
动态路由协议:RIP OSPF
链路状态型路由协议---更新内容:拓扑信息 OSPF
距离矢量型路由协议---更新内容:路由表/路由信息 RIP
动态路由协议最本质的工作:告诉我们去往未知网段的路由(就是选路)
AS--自治系统
AS内部:RIP ,OSPF
1.OSPF特性:
- IGP(内部网关协议)
- 链路状态型协议
- SPF算法
- 组播224.0.0.5/224.0.0.6
- 更新周期10/150
2.OSPFv2与RIPv2对比
-
相同点
- 无类别路由协议
- 均采用组播通讯(ospf:224.0.0.5/6;rip:224.0.0.9)
- 均支持等开销负载均衡
- 支持汇总
-
不同点
- OSPF可以工作在大型网络中(结构化部署)
- RIP可以工作在小型网络中(原因:资源占用)
3.OSPF路由类型
- 区域之间路由器:ABR(将计算出来的拓扑传递出去)
- 自制系统边界路由器:ASBR
4.OSPF结构部署
1)OSPF区域:
- 为了适应大型的网络,OSPF在AS内划分多个区域。
- 每个OSPF路由器只维护所在区域的完整链路状态信息。
2)链路状态型协议的距离矢量特征:
区域内部传递拓扑信息,区域间传递路由信息
3)多区域提高了网络的扩展性,有利于组件更大规模的网络
4)OSPF区域划分规则(单个区域的那个区域就是Area0)
- OSPF要求域中的所有非骨于区域 (区域ID不为0的区域)都必须与骨于区域直接相连。
- 骨干区域不能被分割。
1.假如没有遵循“非骨干区域必须与骨于区域直接相连”规则
OSPF定义了ABR (区域边界路由器)来确保遵循这条规则
判定ABR区域:
- 至少连接两个区域;
- 连接的区域中至少有一个接口连接区域0;
- 在区域0中至少有一个活跃的邻居;
所以说,非骨干区域之间不允许直接相互发布区域间路由信息。----因为非骨干区域之间的边界设备不是ARP。
2.假如没有”骨干区域不能被分割“规则
OSPF水平分割规定: 从非骨干区域收到的路由信息,ABR能接收到不会使用这条路由信息 (这条规则,被称为OSPF的区域水平分割机制)。----从一个区域学习到的路由信息,不能再传递回该区域。
总结:
OSPF有如下规定:
1、伪ABR设备不允许转发区域间路由信息;
2、对于真实ABR设备:
- 能够将自己直连的非骨干区域的路由信息传递给骨干区域;(路由信息:直连骨干区域<-->骨干区域)
- 能够将自己直连的骨干区域路由信息传递给非骨干区域;
- 能够将自己从骨干区域学习到的非骨干区域路由信息传递给直连的非骨干区域。
5.OSPF路由器角色
-
内部路由器---IR
- 所有接口都接入同一个OSPF区域的路由器,例如R1、R4、R5
-
区域边界路由器---ABR
- R2、R3
-
骨干路由器----BR
- 接入Area0的路由器,例如R2、R3
-
自治系统边界路由器---ASBR
- 工作在OSPF自治系统边界的路由器,负责将OSPF域外的路由引入本域。
- 并不是所有运行了多种路由协议的OSPF路由器就一定是ASBR;必须执行了重发布操作的路由器才会被称为ASBR
二、OSPF数据包
-
hello报文
- 用来发现、建立并周期保活OSPF邻居关系,通过组播224.0.0.5发送。
- 10S发送一次用以确认邻居存在。
- hold-time----死时间----hello-time*4
- Router-ID (RID) ---全域唯一,标识路由器身份。IP地址形式。
RID 配置方式
手工配置
自动配置
默认优选最大环回IP地址,没有环回就选择最大物理IP地址
在华为设备中,若没有接口IP,则OSPF启动后,RID为0.0.0.0;
在思科设备中,若没有接口IP,则OSPF无法启动;
华为标准:状态最先UP的接口的IP地址作为Router id;
FRC标准:
1、取loopback接口IP中最大的作为Router id;
2、若没有loopback接口,则选择物理接口IP地址中最大的作为Router id;
无论采用手工还是自动选取的方式,一旦OSPF确定了RID,则之后不会改变。---除非重选而重启OSPF进程。
-
DBD报文
- 数据库描述报文
- 该报文中携带的是路径信息的摘要。---避免重复更新,减少更新量的一种做法LSR报文
- 路状态请求报文----用以获取未知的LSA (链路状态通告)信息
-
LSR报文(LSR-link-state request)
- 链路状态请求报文----用以获取未知的LSA(链路状态通告)信息。
-
LSU报文(LSU -link-state update)
- 链路状态更新报文
- 携带真实的LSA信息的数据包
-
LSAck报文(LSACK-link-state ack)
- 链路状态确认报文
三、OSPF七种状态机
1.状态机具体任务
- down---关闭-----一旦启动了OSPF协议,则发出hello报文进入下一个状态
- init----初始化----收到的hello报文中存在本地RID值,进入下一个状态
- 2-way----双向通讯----邻居关系建立的标志。---稳定态。
条件匹配:匹配成功则进入下一个状态,匹配失败则停留在邻居状态。
- exstart----预启动----使用未携带信息的DBD报文进行主从关系选举,RID大的为主。
- exchange----准交换-----使用携带目录信息的DBD报文进行目录共享
- loading----加载----邻居间使用LSR/LSU/LSACK报文来获取完整的LSA信息
- full---转发----拓扑交换完成后,根据算法计算出路由进入该状态,标志着邻接关系的建立。---稳定态。
2.条件匹配 ---->决定了谁给谁传递拓扑信息。
条件比配的原因:消除重复更新
1)需要选举的角色
DR、BDR、DRother----接口角色。
2)选举规则 :
- 1. 优先级,0-255;选择优先级大的为DR设备,默认为1。若优先级为0则代表放弃选举
- 2. 若优先级相同,则比较RID值,越大越优先。
- 选取范围---一个广播域
- 非抢占模式----重选则需要重启OSPF进程。
<r1>reset ospf 1 process --- 重启OSPF进程,可以触发DR/BDR重新选举
- 在一个MA网络中,可以没有BDR,但是必须存在DR。
3)条件匹配的选举过程
- DR、BDR的选举是通过Hello报文实现的,时间发生在2-way状态之后。
- 路由器将自己的接口的DR优先级填写在hello报文的“DR优先级字段”。
- 华为数通产品的接口DR优先级默认1,该参数值可以通过
修改优先级配置命令:
[Huawei-GigabitEthernet0/0/0]ospf dr-priority ?
INTEGER<0-255> Router priority value
DR优先级为0则代表该接口不具备选举DR和BDR的资格。
- 当接口激活OSPF后,设备首先会检查网络上是否已经存在DR,如果存在则接收已经存在的DR设备。否则优先级最大的设备成为DR,若优先级相同,则拥有最大RID的路由器成为DR设备。
- BDR选举过程与DR相同,但是是在DR选举之后进行。
四、OSPF工作过程(需要记忆)
- 启动OSPF配置后,OSPF向本地所有运行了OSPF协议的接口以组播224.0.0.5发出hello报文;hello报文中携带了本地的RID参数以及本地已知的邻居RID值。
- 邻居的RID获取方式:通过接收其他邻居的hello报文来获取本地邻居
- 建立邻居关系,并生成邻居表。
- 邻居关系建立后,进行条件匹配;匹配失败则停留在邻居关系,即2-way状态,仅使用hello报文保活。该状态为稳定态。
- 匹配成功的邻居开始建立邻接关系。
- 首先使用未携带数据的DBD报文进行主从关系选举,之后使用携带信息的DBD报文来共享数据库目录;
- 然后本地通过对方共享的目录信息与本地数据库进行对比,通过使用LSR报文请求未知的LSA信息。
- 对端使用LSU报文回复完整LSA信息
- 本端使用LSAck报文确认回复。
- 当本地接收到所有的未知LSA信息后,将信息存放在LSDB中。
- 之后基于本地数据库生成有向图和最短路径树。
- 根据最短路径树计算本地到达拓扑中所有未知网段的最短路径,并将其加入到OSPF路由表中。
- 从OSPF路由表中选择最优路由加载入本地全局路由表。
- 收敛完成后,hello报文周期保活。每30min进行一次周期链路刷新。
结构突变
- 新增网段-----直接使用LSU报文告知邻居,邻居使用ACK进行确认。
- 断开网段-----直接使用LSU报文告知邻居,邻居使用ACK进行确认。
- 无法沟通-----dead time----4*hello time,状态为down,删除信息。
五、OSPF基本配置
1.、基础配置
[R1]int g0/0/0
[R1-GigabitEthernet0/0/0]ip add 12.0.0.1 24
[R1-LoopBack0]ip add 1.1.1.1 24
[R2]int g0/0/0
[R2-GigabitEthernet0/0/0]ip add 12.0.0.2 24
[R2-GigabitEthernet0/0/0]int g0/0/1
[R2-GigabitEthernet0/0/1]ip add 23.0.0.2 24
[R2-LoopBack0]ip add 2.2.2.2 24
[R3]int g0/0/0
[R3-GigabitEthernet0/0/0]ip add 23.0.0.3 24
[R3-LoopBack0]ip add 3.3.3.3 24
2、OSPF配置
对R1:
1)启动OSPF协议并配置router ID
[r1]ospf 1 router-id 1.1.1.1
“1”1为进程号,仅具有本地意义
2)进入区域
[r1-ospf-1]area 0
3)宣告区域内(宣告环回地址+接口地址)
[r1-ospf-1-area-0.0.0.0]network 1.1.1.1 0.0.0.0 ----精准宣告(“0.0.0.0”是反掩码),一般使用的是精准宣告
[r1-ospf-1-area-0.0.0.0]network 12.0.0.0 0.0.0.255 ----范围宣告
此种宣告方式为反掩码宣告;
反掩码宣告的作用:精确匹配
反掩码:1)32位二进制,点分十进制表示;
2)由连续的0和连续的1组成;
3)其中0表示IP对应位不变,1代表IP对应位可变。
对R2:
[R2]ospf 1 router-id 2.2.2.2
[R2-ospf-1]area 0
[R2-ospf-1-area-0.0.0.0]network 0.0.0.0 255.255.255.255 ---把R2上的所有接口都宣告在area0
对R3:
[R3]ospf 1 router-id 3.3.3.3
[R3-ospf-1]area 0
[R3-ospf-1-area-0.0.0.0]network 3.3.3.3 0.0.0.0
[R3-ospf-1-area-0.0.0.0]network 23.0.0.3 0.0.0.0
3.配置完成,查关于ospf信息表命令:
- dis ospf peer ---查看ospf邻居的详表
- Dis ospf lsdb ---查看数据库表
- Display ip routing-table protocol ospf ---查看以ospf协议为基准的的详细路由信息
- dis ospf peer brief ----查看邻居摘要
- Display ospf routing ----查看ospf路由表
[r2-ospf-1]bandwidth-reference ? ----修改参考带宽
INTEGER<1-2147483648> The reference bandwidth (Mbits/s)
开销值(接口概念):rip:数据包中传递的开销值cost=本地开销值+1
ospf:一条OSPF路径的cost等于从目的地到本地路由器沿途的所有入接口cost的总和。
六、OSPF 的拓展配置
1.缺省路由
只需要在 边界路由器上书写一条指令,内网的所有路由器会自动产生指向边界路由器的缺省,边界路由器去往外部的缺省路由需要手工静态书写。
强制下放缺省(适用在边界路由器中无缺省路由的情况)
[R3-ospf-1]default-route-advertise always
下放缺省(当边界路由器上已经存在缺省路由时,则不需要再书写 always)
[R3-ospf-1]default-route-advertise
2.手工认证 --区域认证、接口认证
区域认证 --在区域内的所有路由器上配置
[R4-ospf-1]area
[R4-ospf-1-area-0.0.0.1]authentication-mode simple cipher hu
接口认证 --同 rip
在接口视图下配置,直连的设备接口间
[R1-Seria14/0/0]ospf authentication-mode simple cipher huawei
3.加快收敛速度
在 OSPE 中,通过修改 hello 时间来加快收敛速度,不宜修改的过小。
在接口视图中配置,建议统一修改
[R1-Seria14/0/0]ospf timer he11o 5
七、OSPF报文格式
回忆:
ospf是跨层封装协议,跨的是传输层,没有传输层协议;
ospf协议号是89
报文头部:是指每一种报文里面公共部分;
Hello 用来发现邻居、选举DR/BDR,维护OSPF邻居关系;
DBD (数据库描述)用在数据库交换过程中,确立主/从关系,交换LSA包头,以及确定首个序列号;
LSR (链路状态请求) 用在DBD交换过程中,请求本路由器已知的特定LSA;
LSU (链路状态更新) 用来向已发出LSR数据包,以请求特定LSA的邻居,发送完整的LSA;
LSack (链路状态确认) 用来确认本路由器已收到的LSU数据包;
1、OSPF报文头部(24字节)
- 版本---恒为2
- 类型----描述OSPF数据包类型
- hello---1
- dbd-----2
- lsr------3
- lsu----4
- lsack----5
- 报文长度 ---指的是除头部以外下面含数据包的报文长度,但后面的报文长度不固定
- 路由器ID----RID
- 区域ID---发出该报文的接口所属区域的ID值。(对于路由器而言,它的区域ID不固定)
- 校验和----完整数据包 (校验和一般是用来校验数据包完整性的)
- 验证类型(验证类型相同才建立邻居关系)
- 指示该数据报文使用的认证类型
- 不认证--0;简单认证---1;MD5认证---2。
- 验证数据
- 用于报文认证的内容
- 若认证类型为不认证,则该字段全为0;
两个路由器进行验证类型和验证数据对比时,先对比验证类型,再进行验证数据。
2.OSPF报文
Hello包 ---周期性的发现、建立、保活邻居关系,条件比配时也需要用到hello包;邻居建立过程会携带一些参数,当有些参数与hello包中有一些参数如果对比不上,将会影响我们邻居之间的建立关系;
- 网络掩码
- 两台OSPF路由器如果通过以太网接口直连,那么双方的直连接口必须配置相同的网络掩码。
- 如果一方在接口上收到的hello报文中,网络掩码字段与本地接口配置的掩码不同,则该路由器忽略该hello报文,此时邻居关系无法建立。
- 注意:只有在华为设备中会检查网络掩码信息。
- Hello间隔
- 如果两台路由器的hello时间间隔不同,则不会建立邻居关系。
- 在Broadcast类型和P2P网络类型中hello时间间隔为10S;而在NBMA或P2MP网络类型中,Hello时间为30S。
- 可选项
- 有8个标记位,每一个标记位为1,则代表其符合OSPF的某种特性。
- 特殊区域标记。
- 路由器优先级(这里指的是接口优先级)
- 用于选举DR和BDR。(缺省:“1”;“0”不参与选举)
(在P2P网络中不需要选举DR、BDR;不需要选举过程的原因是:没有重复更新;选举需要时间,且选举时间=死亡时间;
在MA网络中,我们可以通过修改一些的参数来影响DR\BDR选举)
- 路由器失效时间
- 两台设备建立OSPF邻居需要确保死亡时间相同。
- 默认情况下是hello间隔的4倍。
- 若修改hello时间,则死亡时间随之改变;若修改死亡时间,则hello时间不变。
- 指定路由器---DR
- 该参数为网络中DR的接口IP地址。
- 若没有选举出DR,则使用0.0.0.0来占位
- 备份指定路由器---BDR
- 该参数为网络中DR的接口IP地址。
- 若没有选举出BDR,则使用0.0.0.0来占位
- 邻居
- 在直连链路上发现的有效邻居,此处填充的是邻居的RID值。
所有224.0.0.X格式的组播地址称为本地链路组播地址,目标IP是本地链路组播的数据包的TTL值被设定为1。所有本地链路组播都存在对应的组播MAC地址,01-00-5e-0后23位,后23位为组播IP地址的后23位。(224.0.0.X--本地链路组播,它的TTL=1)
Mac地址分两类:组播、单播
Mac有48位,xxxx xxx0:_:_:_:_:_ ---单播
xxxx xxx1:_:_:_:_:_ ---组播
限制邻居关系建立的参数
1)子网掩码
- R1修改掩码后,会立即将状态置为down,而R2会在40S死亡时间后进行状态切换。
- 原因在于:R1在修改IP地址的掩码后,会认为之前的连接中断,需要重新建立连接,所以会直接重置状态机。而R2则认为此时属于结构突变中的无法沟通。
2)hello时间
[r1-GigabitEthernet0/0/0]ospf timer hello 20 ---修改hello时间配置
双方经过死亡时间后,状态发生改变。
3)dead时间
[r1-GigabitEthernet0/0/0]ospf timer dead 80 ---修改死亡时间配置
结果与修改hello时间一致。
4)认证
[r2-GigabitEthernet0/0/0]ospf authentication-mode simple plain 123456 ----接口认证
[r2-ospf-1-area-0.0.0.0]authentication-mode simple plain 123456 ----区域认证
5)可选项
与修改掩码信息结果相同。
3.DBD报文
- 使用未携带数据的DBD报文进行主从关系选举
- 使用携带数据的DBD报文(携带LSA头部信息的DBD)进行拓扑目录共享
- 使用未携带数据的DBD报文进行确认
- 接口最大传输单元----MTU(影响邻接关系建立)
- 在华为AR系列路由器上,该参数值默认为0。
- 该字段是用于进行OSPF的MTU检测,而华为默认不开启MTU检测机制
- [r1-GigabitEthernet0/0/0]ospfmtu-enable ----开启OSPF的MTU检测机制
- [r2-GigabitEthernet0/0/0]mtu ?----修改MTU参数
- <46-1600> MTU value
- 如果设备两端开启了OSPF的MTU检测机制,则进行MTU检测,若双方的MTU参数相同,则正常进行邻接关系建立。若不同,则双方卡在exstart状态。
- 可选项---与Hello报文内容中的可选项字段一致。
- I------主从关系选举
- 如果该为为1,则代表该数据报文是用于进行主从关系选举。且此时的数据包中不会携带真实的数据库目录信息。
- M
- 若为1,则代表后续还存在DD报文
- 若为0,则代表后续没有DD报文
- MS----代表是否为主设备
- 若为1,则代表本设备为Master设备(主设备)
- 若为0,则代表本设备为Slave设备(从设备)
- DD序列号
- 用于确保DD报文传输的有序性和可靠性。
- 在DD报文交互的过程中,DD序列号被逐次加1。且DD序列号必须由Master路由器来决定,而Slave路由器只能使用Master路由器发送的DD序列号来发送自己的DD报文。
- 隐形确认机制----通过对方发送的数据包中的DD序列号,起到确认的效果。
- 而主从关系选举就是为了完成隐形确认。
4.LSR包
链路状态类型、链路状态ID、通告路由器----LSA的三元组信息。---通过这三个参数可以唯一标识出一条LSA信息。
LSU包
LSAck包
------完成显式确认机制。
八、OSPF的接口网路类型
OSPF的接口网络类型,实际上是说OSPF的接口在某种网络类型下的一种工作方式或特征。
1.广播型多路访问类型---BMA
[r3]display ospf interface GigabitEthernet 0/0/0 ---查看OSPF网络接口类型
修改时间:(hello、poll、Retransmit)
接口coat=参考带宽/实际带宽
Attempt状态只在NBMA 网络的中出现
Poll(轮回时间)修改范围:0-3600,最少是hello时间的4倍;
poll修改命令:ospf timer poll 200
重传(Retransmit )时间修改范围:0-3600,一般不要把值改太小;
延迟(Transmit Delay)修改时间:0-500,一般不要改太大;
OSPF在BMA类型的接口上通常以组播的方式发送hello报文、LSU及LSACK报文;以单播的形式发送DD报文和LSR报文。
2.点到点类型----P2P
- 物理接口:HDLC(高级数据链路控制协议) PPP (点对点协议)GRE MGRE FR点对点子接口;
- 是否自动建立邻居:自动
- hello包的发的是组播,因为不知道对面IP;
- OSPF在网络类型为P2P的接口上以组播的方式发送所有数据报文。----不以单播形式发送的原因在于点到点网络可以不要IP地址。
- OSPF在点到点(P2P)网络中不会选举DR和BDR。
- 开销值----在华为设备中,P2P网络的参考实际带宽默认为2.048 (E1标准)
- 开销值=48,对于P2P只有一个邻居,只接收不发送;
3.点到多点类型---P2MP(只能手工修改)
[r7-Tunnel0/0/0]ospf network-type p2mp
- 在P2MP环境下,设备会学习所有邻居的接口IP地址,形成主机路由。
- 在P2MP环境下,只有hello报文是以组播形式发送,其他所有报文以单播形式发送数据;
- 是否自动建立邻居:自动建立
P2mp 是为帧中继这种物理的NBMA网络设计,在MGRE环境中不建议使用
在MGRE环境中,还有一种全联网状拓扑(mesh),在这种环境下,所有节点都是中心,同时也都是分支。都需要开启伪广播,则只需要将接口的网络类型改为broadcast,则DR和BDR的认知相同,路由顺利获取。
4.环回接口
[r1-LoopBack0]ospf network-type broadcast ---修改接口网络类型为broadcast
- 开销值恒定为0,这样的结果就是修改参考带宽不会影响到环回接口的开销值。
- type----华为使用P2P来填充,而cisco使用loopback填充。
- 所有通过OSPF学习到的环回接口的路由掩码都是32位,因为该接口是一个模拟的接口,实际没有连接用户,所以并没有其他IP地址存在与该接口之下,只有一个可用IP。---.如果使用其他掩码,可能会导致坏路或者路由黑洞。
- witing---该字段代表正在进行条件匹配,当该计时器超时后,接口会认为自己为DR设备,且将接口的状态切换为exstat状态。
- 开销值=1562
- 华为将tunnel接口的传输速率定为了64Kbps。
- Hub节点此时属于P2P类型,只能建立一个邻居,无法建立多个邻居,故修改Tunnel接口的网络类型为Broadcast类型。
- 修改命令:[r1-LoopBack0]ospf network-type broadcast ---修改接口网络类型为broadcast
- 不同的网络类型,可以建立邻居关系,但是可能会造成不同的问题。故修改接口网络类型时,全网保持一致。
- 如果链路两端,一端需要选举DR,另一端不需要,可能会成功建立full状态,也可能有一个卡在exstart或2-way状态。
- 让分支节点放弃DR选举,在MGRE环境下,hub节点必须成为DR设备。否则网络路由信息无法学习全面。必须修改分支节点的接口优先级为0。
5.非广播型多路访问类型----NBMA
- 在NBMA网络中,所有数据包以单播数据通讯。
- 在NBMA网络中,所有的OSPF路由器都需要使用peer命令单播指定邻居,该命令是双向。
- Attempt–尝试状态–只有在NBMA环境下会出现的一个过渡状态,一方指定单播邻居之后,将会置于此状态等待邻居指定自己;
- 物理接口:FR-帧中继(物理接口、多点子接口) ATM-异步传输网络 (Cisco中的MGRE)
是否自动建立邻居:否(建立邻居需要手工指定peer ,思科中单边指定就可以,华为需要双方同时指定)
关于MGRE的拓扑:
1)星型-中心站点固定ip地址,所有分支仅和中心注册;
2)全连网状-所有站点均为固定ip,所有设备均为中心,两两间均注册;
3)部分网状----部分设备为固定ip,存在部分中心和部分的分支;
在以上三种(BMA 、P2P、P2MP)环境中运行OSPF的方案:
1)星型-所有接口工作方式为broadcast,仅中心站点为DR,无BDR;
2)全连-所有接口工作方式为broadcast;DR/BDR将默认自动选举成功;
3)部分-所有接口工作方式为broadcast;合理安排DR的位置;
不同的网络类型是否可以建立邻居?
1、MA网络和P2P网络可以建立邻居,但是学习不到路由,因为链路两端网络类型不一样。
2、MA网络和P2MP建立不了邻居,因为hello报文的时间不一样,经过修改为一致后,可以建立邻居,但是学习不到路由,
3、NMBA和NBMA建立邻居,需要手工指定。
4、建立邻居的影响条件: hello时间是否一致,是否都选举DR(一个选举,另外一个不选举,则能建立邻居,但是传递不了路由)
作业:(请看看上一篇博客)
九、OSPF的不规则区域划分
1.规则区域(略)
区域划分的意义: 1.减少LSA的数量 ;2.减少LSA的传播范围;
区域的划分是基于接口 (链路) 的;
2.不规则区域
- 远离骨干的非骨干区域
- 不连续骨干区域
根本解决方案:对OSPF网络重新规划与配置,满足OSPF区域划分规则。
1)使用tunnel隧道( 在工程中几乎见不到)
使用vpn隧道解决不规则区域的问题
- 可能产生选路不佳。
- 造成重复更新。
- 资源消耗
- 因为虚拟链路的存在,AR2和AR4之间也需要建邻。导致他们之间维护的周期性数据将穿越中间区域区域1,导致中间区域的资源消耗。
[r2-Tunnel0/0/0]ip address 23.0.0.1 24
[r2-Tunnel0/0/0]tunnel-protocol gre
[r2-Tunnel0/0/0]source 25.0.0.1
[r2-Tunnel0/0/0]destination 35.0.0.2
[r2-ospf-1-area-0.0.0.0]network 23.0.0.0 0.0.0.255
[r3-Tunnel0/0/0]ip address 23.0.0.2 24
[r3-Tunnel0/0/0]tunnel-protocol gre
[r3-Tunnel0/0/0]source 35.0.0.2
[r3-Tunnel0/0/0]destination 25.0.0.1
[r3-ospf-1-area-0.0.0.0]network 23.0.0.0 0.0.0.255
2)Vlink---虚链路
vlink是专门为了解决OSPF不规则区域所诞生的技术,是一种虚拟的、逻辑的链路。
vlink必须找到一个真实的ABR设备建立虚拟链路。
配置:
[r2-ospf-1-area-0.0.0.1]vlink-peer 3.3.3.3
[r3-ospf-1-area-0.0.0.1]vlink-peer 2.2.2.2
注意:配置位置在需要vlink穿越的区域中,且配置的是RID,而非邻居IP地址。
虚链路的配置条件---->只能穿越一个区域。
查看vlink表
Vlink被视为骨干区域的一段延伸--->Vlink永远属于Area 0。
使用Vlink解决不规则区域的问题
- 资源消耗
- 虚链路只能穿越1个区域