IGP 协议链路状态协议

OSPF区域结构

大型OSPF网络存在的问题

  1. 最短路径优先(SPF)算法的频繁计算

  2. 路由表庞大

  3. 链路状态数据库(LSDB)庞大

 划分区域后的OSPF

  1. SPF的计算频率更低

  2. 路由表更小

  3. 降低了链路状态更新(LSU)开销

  4. 骨干区域

  5. 常规区域

对于OSPF区域划分,Cisco建议如下:

  1. 每个区域保护的路由器数量不应超过50

  2. 每台路由器所属的区域最多不要超过3

种报文

Hello 周期性发送10S30 老化时间40S120

EIGRP 5S60S 老化时间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*

建立邻接过程

1Down 初始状态,接口被宣告进OSPF,没有发送任何报文

2Init 通过接口发送一份hello

3Two-Way 通过接口收到了一份neighbor 字段包含自身RID hello

----------------------------------------------------------

4Exstart 交换个不带LSA 报头的DBD 选择Master/Slave

5Exchange Master 发起的带有LSA 报头的DBD 信息交互

----------------------------------------------------------

6Loading 交互LSR LSU 以及LSAck 实现LSDB 的同步

7Full 一旦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

1DRBD 无法被抢占

2DR 挂了BDR 会立即去抢占成为新的DR,而新的BDR 通过在所有DRother 之间重新选举得出

3DR 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 的地址发生给网段内所有其他的路由器

为确保网络中的所有路由器做出一致的路由选择决策,每台路由器都必须记录下述信息

  1. 直接相连的邻接路由器

  2. 网络或区域内的其他路由器及其连接的网络

  3. 前往每个目的地的最佳网络

11 LSA 主要用1~5LSA  CiscoOSPF V2不支持6类和8LSA

1Router LSAs

2Network LSAs

3or4Summary LSAs

5Autonomous system external LSAs

6Multicast LSAs

7Defined for not-so-stubby ares

8、边界网关协议(BGP)的外部属性LSA

91011类,不透明(opaque)LSA

LSA Type :传输范围、什么样的路由器会发生、LSA 包含了什么信息

类:点到点的网络

传播范围:只能在一个区域内传递,不能穿越ABR

通告者:每台属于一个区域的路由器都会基于该区域通告一条LSA

包含内容:拓扑信息,其中描述该路由器所有宣告进该区域的链路的前缀,掩码,网络类型以及度量值

Link-ID:通告该LSA 的路由器的RID

ADV Router:通告该LSA 的路由器的RID

类:MA 网络

传播范围:只能在一个区域内传递,不能穿越ABR

通告者:MA 网段中的DR 路由器

包含内容:纯拓扑信息,包含了该MA网段直连的所有路由器的RID 信息,MA 网段的掩码

Link-ID:该MA 网段DR 接口的IP 地址

ADV Router:该DR RID

类 ABR 路由器传递域间路由

传播范围:除了该区域之外的所有区域

通告者:ABR

包含内容:一LSA 包含一条OSPF 域间路由, O IA

Link-IDLSA 路由前缀

ADV RouterABR RID.3 类的LSA OSPF 路由选择域内传递的时候为了保证可达性每跨越一个ABR 都会自动改写为该ABR RID

类:Summary ASB LSA

传播范围:除了ASBR 所在区域之外的整个路由选择域

通告者:和ASBR 在同一区域的ABR 路由器

包含内容:纯拓扑信息,描述了ASBR 所在位置

Link-IDASBR RID

ADV Router:通告者ABR RID,并且该值每跨越一个ABR 都会自动改变,同3LSA

类:外部(ExternalLSA

传播范围:整个OSPF 路由选择域

通告者:ASBR

包含内容:纯路由信息,一条OSPF 域外路由对应一条LSA

Link-ID:域外路由的路由前缀

ADV RouterASBR RID。该LSA OSPF 域内传递的时候,ADV Router 不会发生任何改变。

O IA 域间路由

O E1O E2 域外路由

6类:多播OSPF LSA

这些LSA用于OSPF多播应用中

7类:用于NSSALSA

这些LSA用于NSSA

8类:BGP的外部属性LSA

  这些LSA用于互联OSPFBGP

91011类:不透明LSA

这些LSA用于升级到OSPF,旨在在OSPF域中分发应用程序特定的信息。例如Cisco使用9类不透明LSAOSPF中实现MPLS流量工程。分发不透明LSA时,使用的是标准的LSDB扩散机制。这3LSA的扩散范围各不相同,9LSA只在本地网络或子网内扩散,10LSA只在当前域内扩散,而11LSA扩散到整个自治系统(与5LSA相同)不透明LSA是在 RFC5250The OSPF Opaque LSA Option)中定义的。

Seed Metric:种子度量值,对于OSPF 而已如果将BGP 路由重分发进入,则Seed

Metric 默认为1,所有其他外部路由确实Seed Metric 20

修改 O E1 O E2 类型在ASBR 上操作

OSPF 汇总会产生一条和汇总路由一样的指向NULL0 接口的路由

域间汇总:需要在ABR 上部署,实现对LSA 的汇总传递

OSPF 进程中配置,而且跨区域后需要在每个ABR 上配置

域×××总:需要在ASBR 上部署,实现对LSA 的汇总传递

OSPF 进程中配置,

配置OSPF LSDB过载保护

如果其他路由器没有正确配置,道长大量前缀被重分发,将肯生成大量的LSA,这将耗尽本地的CPU和内存资源。可以使用路由配置命令 MAX-LSA来配置OSPF LSDB过载保护,以防止这种问题发生

启用该命令功能后,路由器将就是其收到的(不是自己生成的)且存储在LSDB中的LSA数量。如果这个数量达到配置的阀值,将把一条错误信息写入日志,并在它超过阀值时发出通知

如果一分钟后LSA数量仍超过阀值,OSPF进程将终止所有邻接关系,并清空OSPF数据库,这被称为忽略状态。在忽略状态下,属于该OSPF进程的接口不能接受和发生OSPF分组。

06 OSPF路由器协议_第1张图片在参数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 会将入区域反向的4LSA 同时过滤,同时该ABR 将会主动向区域内部发生一条O IA 0.0.0.0/0 类缺省路由,seed  metric 1

Totally Stud(完全末节)区域:Stub 区域的基础上ABR 路由同时会将34类入向传递的LSA 过滤掉,同时会主动向该区域注入一条O IA 0.0.0.0/0 的缺省路由,seed metric 1

一条路由器只要可以产生LSA,则该路由器就是ASBR

Not-So-Stubby NSSA 非完全末节区域):NSSA 区域内可以拥有ASBR,并且重分发进入OSPF 的路由器是以LSA 形式存在,该类型的LSA 只能存在于NNSA区域内,并且该区域所有ABR 会通过比较RID 选举一个转换器(最大的RID 者),该转换器会将内部的ABR 都会过滤从外部进入该区域的4LSA。但是该区域的任何ABR 都不会主动向内部下放缺省路由,为了实现内部可以去的外网可达性,需要在该区域ABR 上手工下放缺省路由 O N2 0.0.0./0 Seed Metric =1

Totally NSSA (完全非完全末节区域)基于NSSA 区域的概念基础,ABR会主动阻止345、类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 网络类型:

1Loopback Loopback 无论接口掩码多少,都以/32 位主机路由通告

2Point-to-Point Serial/ISDN BRI/ 支持组播,无DR

FR P2P 子接口

3Broadcast 以太网接口支持组播,有DR

4NBMA FR 的主接口/

FR 的多点子接口不支持组播,有DR

5Point-to-Multipoint ----------- 组播\DR\32 位直连接口路由

6Point-to-Multipoint Non-Broadcast ----- 单播\DR\32 位直连接口路由

No frame-relay inverse-arp

NO arp frame-relay

06 OSPF路由器协议_第2张图片

 

06 OSPF路由器协议_第3张图片

FR 环境中部署OSPF

1、网络类型使用NBMA

为了建立邻居需要在Hub 节点手工指Neighbor

为了保证路由传递没问题,需要手工修改接口的OSPF 优先级,保证Hub成为DR,Spoke 什么都不是

为了保证Spoke 节点所连接的下游网段内的PC 可以互访,需要在Spoke 节点彼此指手工FR 映射

2、网络类型使用Broadcast

由于支持组播发送,因此不需要手工指NeighborFR Map 开启伪广播功能)需要修改接口OSPF 优先级改变DR 的位置

需要手工配置FR 的映射实现Spoke 节点的彼此访问

3、网络类型使用P2MP Non-Broadcast

需要手工指Neighbor 建邻居

不需要手工修改接口OSPF 优先级,因为没有DR/BDR

不需要手工帧中继映射,因为/32 的主机路由

4、网络类型使用P2MP

不需要手工Neighbor

不需要修改优先级

不要手工映射