IGP 协议链路状态协议
OSPF区域结构
大型OSPF网络存在的问题
最短路径优先(SPF)算法的频繁计算
路由表庞大
链路状态数据库(LSDB)庞大
划分区域后的OSPF
SPF的计算频率更低
路由表更小
降低了链路状态更新(LSU)开销
骨干区域
常规区域
对于OSPF区域划分,Cisco建议如下:
每个区域保护的路由器数量不应超过50台
每台路由器所属的区域最多不要超过3个
5 种报文
Hello 周期性发送10S、30 老化时间40S、120、
EIGRP 5S、60S 老化时间15S 、180S
Database Description (DBD)描述拓扑信息
Link-state request (LSR)链路状态请求
Link-state update (LSU)链路更新
Link-state Acknowledgment (LSACK)链路ACK
显式确认、隐式确认(基于序列号的确认机制)
OSPF Paceket
版本号+类型+报文长度+R-ID+Area-ID+Chck-sum+认证类型+认证信息+Data
Router-ID 选举
1、手工配置
2、在所有状态为UP UP 的环回口中选举最大的IP 地址
3、物理接口最大的IP 地址(UP UP )
Hello 报文建立邻居条件
hello and dead *
Area ID*
认证*
Stub area flag*
建立邻接过程
1、Down 初始状态,接口被宣告进OSPF,没有发送任何报文
2、Init 通过接口发送一份hello
3、Two-Way 通过接口收到了一份neighbor 字段包含自身RID 的hello
----------------------------------------------------------
4、Exstart 交换3 个不带LSA 报头的DBD 选择Master/Slave
5、Exchange 由Master 发起的带有LSA 报头的DBD 信息交互
----------------------------------------------------------
6、Loading 交互LSR LSU 以及LSAck 实现LSDB 的同步
7、Full 一旦LSDB 同步。邻接关系到达Full
每个状态都不是路由器同时到达的,都是一个先到达后一个再到达
在MA 网段建立OSPF 邻接关系时DR 和BDR 的选举原则
1:参与该MA 网段的路由器接口的OSPF 优先级,越高越好(0-255),默认1
2:该MA 网段所连接的路由器的RID,越高越好
Wait 40S 120S
OSPF MA 网段接口的OSPF 优先级如果值为0,代表的不算优先级的最小值,而是该接口没有资格在这个网段参选DR 和BDR,只能成为DRother
1、DR、BD 无法被抢占
2、DR 挂了BDR 会立即去抢占成为新的DR,而新的BDR 通过在所有DRother 之间重新选举得出
3、DR 和BDR 都是路由器的接口概念,每个网段的DR 和BDR 都是通过相同的机制单独选举的
4、在以太网环境建议拥有DR 何BDR 实现备份,而在FR 环境中,只能是Hub节点成为DR,任何spoke 节点都不能成为DR 和BDR
5、在一个MA 网段内没有DR 和BDR,没有任何邻接更新存在也不会有任何LSA的传递
一台运行OSPF 的路由器,只要在一个接口开启了OSPF 进程,则该接口会立即监听发往224.0.0.5 的组播流量,而仅当一个节点成为DR 或BDR 时,该接口才会同时监听发往224.0.0.5 和224.0.0.6 的组播流量
在一个MA 网段内,所有路由器发送给DR 和BDR 的报文的目的地址都是224.0.0.6,而DR 将LSA 整合之后以224.0.0.5 的地址发生给网段内所有其他的路由器
为确保网络中的所有路由器做出一致的路由选择决策,每台路由器都必须记录下述信息
直接相连的邻接路由器
网络或区域内的其他路由器及其连接的网络
前往每个目的地的最佳网络
11 类LSA 主要用1~5、7 类LSA Cisco中OSPF V2不支持6类和8类LSA
1、Router LSAs
2、Network LSAs
3or4、Summary LSAs
5、Autonomous system external LSAs
6、Multicast LSAs
7、Defined for not-so-stubby ares
8、边界网关协议(BGP)的外部属性LSA
9、10或11类,不透明(opaque)LSA
LSA Type :传输范围、什么样的路由器会发生、LSA 包含了什么信息
1 类:点到点的网络
传播范围:只能在一个区域内传递,不能穿越ABR
通告者:每台属于一个区域的路由器都会基于该区域通告一条1 类LSA
包含内容:拓扑信息,其中描述该路由器所有宣告进该区域的链路的前缀,掩码,网络类型以及度量值
Link-ID:通告该LSA 的路由器的RID
ADV Router:通告该LSA 的路由器的RID
2 类:MA 网络
传播范围:只能在一个区域内传递,不能穿越ABR
通告者:MA 网段中的DR 路由器
包含内容:纯拓扑信息,包含了该MA网段直连的所有路由器的RID 信息,该MA 网段的掩码
Link-ID:该MA 网段DR 接口的IP 地址
ADV Router:该DR 的RID
3 类 ABR 路由器传递域间路由
传播范围:除了该区域之外的所有区域
通告者:ABR
包含内容:一3 类LSA 包含一条OSPF 域间路由, O IA
Link-ID:3 类LSA 路由前缀
ADV Router:ABR 的RID.3 类的LSA 在OSPF 路由选择域内传递的时候为了保证可达性每跨越一个ABR 都会自动改写为该ABR 的RID
4 类:Summary ASB LSA
传播范围:除了ASBR 所在区域之外的整个路由选择域
通告者:和ASBR 在同一区域的ABR 路由器
包含内容:纯拓扑信息,描述了ASBR 所在位置
Link-ID:ASBR 的RID
ADV Router:通告者ABR 的RID,并且该值每跨越一个ABR 都会自动改变,同3类LSA
5 类:外部(External)LSA
传播范围:整个OSPF 路由选择域
通告者:ASBR
包含内容:纯路由信息,一条OSPF 域外路由对应一条5 类LSA
Link-ID:域外路由的路由前缀
ADV Router:ASBR 的RID。该LSA 在OSPF 域内传递的时候,ADV Router 不会发生任何改变。
O IA 域间路由
O E1、O E2 域外路由
6类:多播OSPF LSA
这些LSA用于OSPF多播应用中
7类:用于NSSA的LSA
这些LSA用于NSSA中
8类:BGP的外部属性LSA
这些LSA用于互联OSPF和BGP
9、10或11类:不透明LSA
这些LSA用于升级到OSPF,旨在在OSPF域中分发应用程序特定的信息。例如Cisco使用9类不透明LSA在OSPF中实现MPLS流量工程。分发不透明LSA时,使用的是标准的LSDB扩散机制。这3种LSA的扩散范围各不相同,9类LSA只在本地网络或子网内扩散,10类LSA只在当前域内扩散,而11类LSA扩散到整个自治系统(与5类LSA相同)不透明LSA是在 RFC5250(The OSPF Opaque LSA Option)中定义的。
Seed Metric:种子度量值,对于OSPF 而已如果将BGP 路由重分发进入,则Seed
Metric 默认为1,所有其他外部路由确实Seed Metric 是20
修改 O E1 和O E2 类型在ASBR 上操作
OSPF 汇总会产生一条和汇总路由一样的指向NULL0 接口的路由
域间汇总:需要在ABR 上部署,实现对3 类LSA 的汇总传递
在OSPF 进程中配置,而且跨区域后需要在每个ABR 上配置
域×××总:需要在ASBR 上部署,实现对5 类LSA 的汇总传递
在OSPF 进程中配置,
配置OSPF LSDB过载保护
如果其他路由器没有正确配置,道长大量前缀被重分发,将肯生成大量的LSA,这将耗尽本地的CPU和内存资源。可以使用路由配置命令 MAX-LSA来配置OSPF LSDB过载保护,以防止这种问题发生
启用该命令功能后,路由器将就是其收到的(不是自己生成的)且存储在LSDB中的LSA数量。如果这个数量达到配置的阀值,将把一条错误信息写入日志,并在它超过阀值时发出通知
如果一分钟后LSA数量仍超过阀值,OSPF进程将终止所有邻接关系,并清空OSPF数据库,这被称为忽略状态。在忽略状态下,属于该OSPF进程的接口不能接受和发生OSPF分组。
在参数ignore-time指定的时间内,OSPF进程将保持忽略状态。参数ignore-time
指定了OSPF进程连续进入忽略状态多少次后,将永久关闭,必须进行人工干预
OSPF进程保持正常状态的时间达到 Reset-time 指定的时间后,忽略状态计数器将重置为0
将默认路由通告给标准区域的方式有两种。
1、是将0.0.0.0通告给OSPF域(条件是发出通告的路由器已经有一条默认路由),这是使用命令default-information originate实现
2、通告0.0.0.0,而不管发错通告的路由器是否有默认路由,这是通过在命令default-information originate中指定关键字always实现的
要生成一条外部默认路由,并将其导入到OSPF域中,可使用路由器配置命令default-information originate [always][metric][metric-type][route-map]
OSPF路由汇总
区域间路由汇总:使用路由器配置命令area area-id range address mask [advertise |not-advertise |cost]
外部路由汇总:使用路由器配置命令summary-address ip-address mask [not-advertise] [tag]
OSPF 区域:
Stud 区域:该区域内的所有路由器都需要修改该区域为stub 区域。如果将一个OSPF 区域部署为stud,该区域的ABR 会将入区域反向的4、5 类LSA 同时过滤,同时该ABR 将会主动向区域内部发生一条O IA 的0.0.0.0/0 的3 类缺省路由,seed metric 为1
Totally Stud(完全末节)区域:在Stub 区域的基础上ABR 路由同时会将3、4、5 类入向传递的LSA 过滤掉,同时会主动向该区域注入一条O IA 的0.0.0.0/0 的缺省路由,seed metric 为1
一条路由器只要可以产生5 类LSA,则该路由器就是ASBR
Not-So-Stubby (NSSA 非完全末节区域):在NSSA 区域内可以拥有ASBR,并且重分发进入OSPF 的路由器是以7 类LSA 形式存在,该类型的LSA 只能存在于NNSA区域内,并且该区域所有ABR 会通过比较RID 选举一个转换器(最大的RID 者),该转换器会将内部的ABR 都会过滤从外部进入该区域的4、5 类LSA。但是该区域的任何ABR 都不会主动向内部下放缺省路由,为了实现内部可以去的外网可达性,需要在该区域ABR 上手工下放缺省路由 O N2 0.0.0./0 Seed Metric =1
Totally NSSA (完全非完全末节区域)基于NSSA 区域的概念基础,ABR会主动阻止3、4、5、类LSA 进入该区域,并且ABR 会主动向区域内下放O IA 0.0.0.0/0
0.0.0./0 Seed Metric =1 的缺省路由
O> O IA>O E1 /E2 =O N1 /N2
不规则区域:
1、远离骨干区域的非骨干区域
2、被分割的Area0
解决方案:
1、在出现问题的ABR 上(没有和Area0 直连的ABR 上),使用双OSPF 进程,并且执行单点双向重分发
2、在出现问题的ABR 上建立一个Tuunel 链路连接到离其最近的Area0 中的ABR路由器上。在这两台ABR 上对Tuunel 配置IP 地址为同一个IP 子网段,并且将其宣告进OSPF 的区域O
3、使用Virtual-Link 在出问题的ABR 已经离他最近的Area0 中的ABR 上部署
启用链路级明文认证:
接口下
Ip ospf authentication-key cisco
Ip ospf authentication
启用链路级明文认证:
接口下
Ip ospf message-digest-key 13 md5 cisco
Ip ospf authentication message-digest
启用区域级明文认证:
接口下
Ip ospf authentication-key cisco
进程下
Area 0 authentication
启用区域级密文认证:
接口下
Ip ospf message-digest-key 13 md5 cisco
进程下
Ip ospf authentication message-digest
启用Virtual-Link 的明文认证
Area 2 Virtual-Link 91.1.1.1 authentication-key cisco
Area 2 Virtual-Link 91.1.1.1 authentication
只有在Virtual-Link 初始化建立邻接关系的时候生效
启用了Virtual-Link 密文认证
Area 2 Virtual-Link 91.1.1.1 message-digest-key md5 cisco
Area 2 Virtual-Link 91.1.1.1 authentication message-digest
OSPF 网络类型:
1、Loopback Loopback 无论接口掩码多少,都以/32 位主机路由通告
2、Point-to-Point Serial/ISDN BRI/ 支持组播,无DR
FR 的P2P 子接口
3、Broadcast 以太网接口支持组播,有DR
4、NBMA FR 的主接口/
FR 的多点子接口不支持组播,有DR
5、Point-to-Multipoint ----------- 组播\无DR\32 位直连接口路由
6、Point-to-Multipoint Non-Broadcast ----- 单播\无DR\32 位直连接口路由
No frame-relay inverse-arp
NO arp frame-relay
在FR 环境中部署OSPF:
1、网络类型使用NBMA
为了建立邻居需要在Hub 节点手工指Neighbor
为了保证路由传递没问题,需要手工修改接口的OSPF 优先级,保证Hub成为DR,Spoke 什么都不是
为了保证Spoke 节点所连接的下游网段内的PC 可以互访,需要在Spoke 节点彼此指手工FR 映射
2、网络类型使用Broadcast
由于支持组播发送,因此不需要手工指Neighbor(FR Map 开启伪广播功能)需要修改接口OSPF 优先级改变DR 的位置
需要手工配置FR 的映射实现Spoke 节点的彼此访问
3、网络类型使用P2MP Non-Broadcast
需要手工指Neighbor 建邻居
不需要手工修改接口OSPF 优先级,因为没有DR/BDR
不需要手工帧中继映射,因为/32 的主机路由
4、网络类型使用P2MP
不需要手工Neighbor
不需要修改优先级
不要手工映射