OSPF

 

 【OSPF】

OSPF开放式路径最短优先[距离矢量]协议 基于链路状态的内部网关协议
通过同步LSDB 运用SPF算法计算最优路由。OSPF是一个完全的链路状态路由协议吗?
不是,只区域内,区域内无环。
【BGP是增强的距离矢量协议】

IPv4是Version 2 IPv6是Version3

在OSPF之前是RIP作为内部网关协议 存在收敛慢,环路路由,可扩展性差
优点:采用组播形式收发报文减少对不运行OSPF路由器的影响
OSPF支持无类型域间路由选路
OSPF支持对等价路由进行负载均衡
OSPF支持报文加密

【快速收敛机制】

1:OSPF快速收敛是为了提高路由的收敛速度而做的拓展特性:包括PRC(部分路由计算)和智能定时器
2:同时,OSPF支持故障恢复快速收敛,例如通过OSPF IP PRC(fast rerouter快速重路由)实现备份链路的快速切换
也可以与BFD联动快速感知故障

【RouterID】
必须存在Router ID 32比特无符号整数 是一台自治系统的唯一标识
手工配置
协议自动选取:优先从Loopback地址中选择最大的IP地址作为Router ID
如果没有配置Loopback接口 则选取最大的IP地址为Router ID
在路由器运行了OSPF并确定了Router ID后,如果该Router ID对应的接口Down或者
接口消失 或者出现更大IP 重新启动OSPF进程后 才会进行Router ID重新选取

【链路状态】

包括接口的IP地址 掩码 网络类型 链接的邻居 所有这些链路状态的集成
形成链路状态数据库

【COST】
OSPF使用cost“开销”作为路由度量值
每一个激活OSPF的接口都有一个COST值 cost=100M/接口带宽
其中100M为OSPF的参考带宽
一条OSPF路由的COST由该路由从路由的起源一路到达本地如接口的COST总和

OSPF特性
(1)支持接口验证和区域验证
(2)采用触发更新,可以使用路由标记tag对外部路由进行跟踪
(3)为确保链路状态数据库更新,每30分钟进行更新。
(4) OSPF默认优先级为10.外部路由为150。
(5) OSPF需要维护链路状态数据库,邻居表和路由表。
(6) 区域area 以接口为单位划分区域,在同一个区域内的路由器拥有相同的链路状态数据库,每一个区域维护一个单独LSDB
(7)area0是骨干区域,其他区域必须与骨干区域相连。

Hello报文 :周期性发送 维持OSPF邻居关系
DD报文: 描述本地LSDB的摘要信息 用于两台设备进行数据库同步
LSR报文:向对方请求所需LSA
LSU报文:发送对方所需的LSA
LSAck报文:对接收的LSA进行确认

Router-LASA(type1)每个都会产生 描述了设备的链路状态和开销 在所属区域传播
Network-LSA(type2)由DR产生,描述本网段的链路状态 在所属区域传播
Network-summary-LSA(type3)由ABR产生,描述区域内某个网段的路由,并通告
给发布或接收此LSA的非Totally STUB或NSSA区域
ASBR-summary-LSA(type4)由ABR产生,描述到ASBR的路由,通告给除ASBR
所在区域的其他相关区域
AS-external-LSA(type5)由ASBR产生,描述到AS外部的路由,通告到所有区域
NSSA LSA(type7)由ASBR产生,描述到AS外部路由 仅在NSSA区域内传播
Opaque LSA(type9/10/11)提供扩展的通用机制

区域内路由:所有接口都在同一个area
区域边界路由器ABR:同属两个以上区域 但是其中一个必须是骨干区域。
连接骨干和非骨干既可以是物理也可以是逻辑
骨干路由器:至少一个接口属于骨干区域。所有的ABR位于Area0的内部设备都是骨干路由器
AS边界路由器:与其他AS交换信息称为ASBR,不一定位于AS边界,只要引入外部路由信息就是

路由类型:AS区域内和区域间描述的是AS内部的网络结构,AS外部路由则描述了应该
应该如何选择到AS以外木的地址的路由,OSPF将引入的AS外部路由分为
Type1 和Type2
Intra Area 区域内路由
Inter Area 区域间路由
Tpye1 外部路由:这类路由的可信程度高一些,所有计算出外部路由的开销和自治
系统内部的路由开销是相当的,并且和OSPF自身路由的开销具有可比性
Type2 外部路由:可信度比较低 OSPF协议认为从ASBR到AS之外的开销远远大于在AS内的ASBR开销

 

OSPF为什么划分区域

1、减小路由表大小

2、限制lsa的扩散

3、加快收敛

4、增强稳定性 

普通区域:缺省情况下,OSPF区域定位为普通区域,普通区域包括标准区域和骨干区域
标准区域是最通用的区域 传输域内路由 区域间和外路由

骨干区域:连接所有其他OPF区域的中央区域 骨干区域通常用Area0表示,所有区域经过骨干,避免环路的产生
STUB(末端)区域:不允许发布AS外部路由 只允许发布区域内路由和区域间
在STUB中路由的规模和传递数量都会大大减少,只传递1类,2类,3类
为了保证到自治系统外的路由可达,由该区域的ABR发布Type3缺省路由传播到区域内
所有到S外部的路由必须通告ABR才能发布
NSSA区域:可以引入AS外部路由,但是不会自动引入由ASBR发布type7(专门)通告给本区域,

这些type7在ABR上转换成type5并且泛洪到整个OSPF域中

NSSA区域同时保留AS内的STUB区域的特征,该区域的ABR发布Type7所有通过ABR才能发布
Totally NSSA区域:Totally区域允许引入AS外部路由 由ASBR发布Type7通告给本区域
这些Type7 LSA在ABR上转换成Type5 LSA 并且泛洪到整个域   减少3类LSA
Totally NSSA:区域同时保持自治系统的Totally STUB Area区域的特征
该区域的ABR发布Type3 和Type7必须通过ABR,进一步减少3类减少LSA

特殊区域:
         (1)OSPF路由器需要同时维护区域间,区域内,外部路由,信息库。当网络规模不断扩大时,
LSDB也会不断扩大,如果某个区域不需要其他区域的流量
         (2)OSPF通过划分区域可以减少LSA的数量

1 STUB区域
          (1)STUB区域的ABR不向STUB区域内传播它接受到的自治系统外部路由
          (2)STUB区域内路由,LSDB规模都会大幅度减少
          (3)STUB区域内的ABR生成一条缺省路由(对应三类LSA),并发布给STUB区域的其他路由器
          (4)骨干区域不可以配置STUB区域
          (5)STUB区域所有路由器都要配置成STUB路由器
          (6)STUB区域内不能存在ASBR
          (7)虚连接不能穿过STUB区域创建。

2 tolly STUB区域
          (1)
     


网络类型
 (1)P2P网络:仅两台设备直连,支持广播组播,掩码不同,不同网段可以建立邻居。
 (2)广播型网络:多台设备通过共享介质连接的网络,支持广播组播
 (3)帧中继网络:两台或者两台以上设备通过虚链路连接,每台设备全互通,不支持广播和组播。
 (4)点到多点网络:多个点到点网络的合集,支持组播和广播。

DR和BDR
在广播网和NBMA网络中,任意两台路由器之间都要传递路由信息。网络中有
N台路由器 则需要建立n*(n-1)/2个邻接关系,这使得任何一台路由器都会多次
传递,浪费带宽资源,为解决这一问题,OSPF定义了指定路由器DR和备份指定路由BDR
所有路由器都只将信息给DR,由DR将LSA广播出去,除DR和BDR之外的路由器
之间将不再建立邻接关系,也不再交换任何路由信息,


 如果DR失效,则网咯中的路由器必须重新选举DR,并且同步,这需要很长的时间
BDR是对DR的一个备份,在选举DR的同时也选举出BDR,BDR也建立邻接关系交换路由信息
当DR失效后,BDR会立即成为DR
DR和BDR不是认为指定的,而是由本网段中所有的路由器共同选举出来的。
 路由器接口的DR优先级决定了该接口在选举DR,BDR所具有的资格。本网段
内DR优先级大于0的路由器都作为“候选人”。选举中使用的“选票”就是Hello报文
每台路由器将自己选出的DR写入Hello报文中,每台路由器将自己选出的DR写入Hello报文中
发给网段上的其他路由器。当处于同一网段的两台路由器同时宣布自己是DR时,DR优先级高者胜出
如果优先级相等对比RouterID

邻居状态机
在OSPF网络中,为了交换路由信息,邻居设备之间首先要建立邻接关系,
邻居关系:交换HELLO报文,报文中定义的参数双方一直形成邻居关系
邻接关系:形成邻居关系后,如果两端设备成功交换DD报文和LSA,才建立邻接


状态机:Down-Attempt-init-2way-Exstart-Exchange-loding-full
Down:邻居会话的初始阶段,表明没有邻居失效时间间隔内收到来自邻居路由器
的hello数据包
Attempt:该状态仅发生在NBMA网络中,表明对端在邻居失效时间间隔,超时前
任然没有回复Hello报文。此时路由器依然发送轮询Hello报文的时间间隔
init:收到Hello报文后
2way:收到hello报文中包含自己的RouterID,则2way;如果不需要形成邻接关系
关系则邻居状态机就停留在此状态, 否则进入Exstart
Exstart:开始协商主从关系,并确定DD的序列号,此时状态为Exstart
Exchange:主从协商完毕后开始交换DD报文,此时状态为Exchange
Loading:DD报文交换完成即Exchange done,此时状态为Loading
Full:LSR重传列表为空,此时状态为Full

OSPF报文认证
OSPF支持报文验证功能,只能通过验证的OSPF报文才能接收,否则将不能
正常建立邻居
路由器支持两种验证方式
区域验证方式 接口验证方式(优先)

OSPF路由聚合
    路由聚合是指ABR可以将具有相同前缀的路由信息聚合在一起,只发布一条路由到其他区域
区域间通过路由聚合,可以减少路由信息,从而减小路由表的规模,提高设备性能
OSPF有两种路由聚合方式:
ABR聚合:ABR向其他区域发送路由信息时,以网段为单位生成Type3 LSA,如果该网域
中存在一些连续的网段,则可以通过命令将这些连续的网段聚合成一个网段。这样ABR只发送一条聚合后的LSA
所有属于命令指定的聚合网段范围的LSA将不会再被单独发送出去
ASBR聚合:配置路由聚合后,如果本地设备是自治系统边界路由器ASBR,将对引入的聚合
地址范围内的Type5 LSA进行聚合。当配置了NSSA区域时,还要对引入的聚合地址
范围内的Type7 LSA进行聚合
如果本地设备即是ASBR又是ABR,则对由Type7 LSA转化成Type5 LSA进行聚合处理

OSPF缺省路由
缺省路由是指目的地址和掩码都是0的路由,当设备无精准匹配的路由时,就
可以通过缺省路由进行报文转发。由于OSPF路由的分级管理,Type3缺省路由
的优先级高于Type5和Type7
OSPF缺省路由通常应用于下面两种情况
1:由区域边界路由器(ABR)发布Type3 缺省SummaryLSA,用来指导区域
内设备进行报文的抓发
2由自治系统边界路由器(ASBR)发布Type5外部缺省ASE LSA,或者Type7外部

缺省NSSA LSA,用来指导AS内设备进行自治系统外报文的转发

OSPF反掩码

   OSPF中宣告网段为 network+ip+反掩码

通配符掩码中,0表示要检查的位,1表示不需要检查的位。而在IP子网掩码中,数字1、0用来决定网络、子网,还是相应的主机的IP地址。例如:172.16.0.0/16这个网段,使用的子网掩码为:255.255.0.0。

在反掩码中,相应位为1的地址会被忽略,为0的必须被检查。


OSPF缺省路由的发布原则如下
1 OSPF路由器只有具有对区域外的出口时,才能够发布缺省路由LSA
2 如果OSPF路由器已经发布了缺省路由LSA,那么不再学习其他路由器发布
相同类型缺省路由。即路由计算时不再计算其他路由器发布的相同类型的缺省类型LSA
但数据库中存由对应的LSA
3外部缺省路由的发布如果要依赖于其他路由,那么被依赖的路由不能是本OSPF路由域内的路由
即不是本进程OSPF学习到的路由。因为外部缺省路由的作用用于指导报文的域外转发
而本OSPF路由域的路由的吓一跳都指向了域内,不能满足指导报文域外转发的要求

路由计算-域内路由
1,一类LSA router-lsa 在MA或NBMA中的作用
   

 

    (1)display ospf lsdb router self-originate  查看链路状态数据库
    (2)Link type   网络类型 广播型网络
    (3)metric 开销值
    (4)一类LSA 只包含拓扑信息 不包含路由信息。

2.一类LSA在P2P网络的作用

 

   (1)一类LSA在P2P网络中既包含拓扑信息又包含路由信息,

 

 

 

   一类和二类合并之后变为三类在区域间进行传播。

 

 此拓扑违背了OSPF区域规则,及普通区域必须和骨干区域连接,RTC不是ABR无法传递3类LSA。解决方案虚连接如上。但是虚连接容易造成环路。

 

 5类LSA

 4类LSA

路由聚合
      1,在大规模部署路由表时候可能会出现路由表过大,导致查询速度降低,可以配置路由聚合,减少路由表的国模。
      2,路由聚合是指将多条IP地址前缀一样的地址聚合称为一个路由前缀,同时减少网络震荡,提高网络的稳定性。某一条链路频繁的UP/DOWN不会通告给IP地址范围外的路由。

 

 


             (1)ABR          abr-summay 192.168.0.0 255.255.248.0      三类在区域间传递,在ABR上配置
             (2)ASBR       asbr-summay 192.168.0.0 255.255.248.0     五类在区域间传递,在ASBR上配置  外部import导入
             (3)ABR需要进去ospf1  area1 配置 ASBR只需要进入ospf1 配置就可以不需要进去area


                 
   





posted @ 2022-03-02 10:02  付华建  阅读(607)  评论(0)    收藏  举报