OSPF路由协议介绍

文章目录

  • 一、OSPF协议概述
    • 1.1 OSPF工作过程
    • 1.2 OSPF的三张表
    • 1.3 OSPF邻居状态机
    • 1.4 OSPF建立邻居的条件
  • 二、OSPF区域
    • 2.1 OSPF区域划分
    • 2.2 OSPF的特殊区域,使用场合,作用及生成的默认路由
  • 三、OSPF路由器
    • 3.1 路由器的类型
    • 3.2 Router ID
      • 3.2.1 定义
      • 3.2.2 Router ID 选取规则
      • 3.2.3 OSPF设置Router ID的方法
    • 3.3 DR与BDR
      • 3.3.1 DR和BDR的选举方法
        • 自动选举DR和BDR
        • 手工选举DR和BDR
      • 3.3.2 DR和BDR的选举过程
    • 3.4 OSPF的度量值
  • 四、OSPF中的数据传输
    • 4.1 OSPF包类型及作用
    • 4.2 OSPF将网络分为四种类型
    • 4.3 LSA的定义与类型
      • 4.3.1 LSA的类型
      • 4.3.2 查看各类LSA的命令
  • 五、OSPF多区域的生成
    • 5.1 生成OSPF多区域的原因
    • 5.2 OSPF的三种通信量
    • 5.3 虚链路
      • 5.3.1 使用场合
      • 5.3.2 作用
      • 5.3.3 命令
      • 5.3.4 注意
    • 5.4 重分发
      • 5.4.1 OSPF与RIP的重分发
      • 5.4.2 重分发过程中下发默认路由
  • 六、OSPF的特点
  • 七、OSPF与RIP区别

一、OSPF协议概述

内部网关协议
属于IP协议,协议号为89号
DRother(其他路由器)的组播地址为224.0.0.5
DR(主路由器)/BDR(备份路由器)的组播地址为224.0.0.6

1.1 OSPF工作过程

链路状态路由协议(也可以说OSPF)工作原理:
每台路由器通过使用Hello报文与它的邻居之间建立邻接关系;
每台路由器向每个邻居发送链路状态通告(LSA),有时叫链路状态报文(LSP). 每个邻居在收到LSP之后要依次向它的邻居转发这些LSP(泛洪);
每台路由器要在数据库中保存一份它所收到的LSA的备份,所有路由器的数据库应该相同;
依照拓扑数据库每台路由器使用Dijkstra算法(SPF算法)计算出到每个网络的最短路径,并将结果输出到路由选择表中。
OSPF路由协议介绍_第1张图片

1.2 OSPF的三张表

1、邻居列表;
2、链路状态数据库;(拓扑表)
3、路由表。
其更新方式—触发更新

1.3 OSPF邻居状态机

状态 描述
1)Down 邻居状态机的初始状态,是指在过去的Dead—Internet时间内没有收到对方的Hello报文或OSPF没启动时。
(1-2)Attempt 只适用于NBMA类型的接口,处于本状态时,定期向那些手工配置的邻居发送Hello报文。
2)Init 本状态表示已经收到了邻居的hello报文,但是该报文中列出的邻居中没有包含我的Router ID(对方并没有收到我发的hello报文)。
3)2-way: 本状态表示双方互相收到了对端发送的hello报文,建立了邻居关系。在广播和NBMA类型的网络中。
4)Exstart 在此状态下,路由器和它的邻居之间通过互相交换DD报文(该报文并不包含实际的内容,只包含一些标志位)来决定发送时的主/从关系。建立主/从关系主要是为了保证在后续的DD报文交换中能够有序的发送。
5)Exchange 路由器将本地的LSDB用DD报文来描述,并发送给邻居。
6)Loading 路由器发送LSR报文向邻居请求对方的DD报文。
7)Full 在此状态下,邻居路由器的LSDB中所有的LSA本路由器全都有了。即,本路由器和邻居建立了邻接(adjacency)状态。

1.4 OSPF建立邻居的条件

1、Router-ID不能相同
2、Hello时间必须一致
3、Dead时间必须一致
4、区域ID必须相同
5、认证必须相同
6、STUB标志位必须相同(直连路由器特殊区域要求一致)
7、三层MTU不匹配无法形成邻接关系。(一边是Exstart,一边是Exchange)
8、OSPF版本号不相同(目前版本为2)
9、当OSPF网络类型是MA时,要求掩码一定一致(两个邻居)。因此会出现DR和LSA-2无法描述网段。

二、OSPF区域

为了适应大型的网络,OSPF在AS内划分多个区域。
每个OSPF路由器只维护所在区域的完整链路状态信息。(LSA)
区域:区域ID可以表示一个十进制数字,也可以表示一个IP。

2.1 OSPF区域划分

OSPF路由协议介绍_第2张图片
Area0:骨干区域
Area1、Area2:非骨干区域,其中非骨干区域又分为标准区域和特殊区域。

2.2 OSPF的特殊区域,使用场合,作用及生成的默认路由

OSPF路由协议介绍_第3张图片

三、OSPF路由器

3.1 路由器的类型

OSPF路由协议介绍_第4张图片

3.2 Router ID

3.2.1 定义

OSPF区域内唯一标识路由器的地址
必须给每一个OSPF路由器定义一个身份,就相当于人的名字,这就是Router-ID,并且Router-ID在网络中绝对不可以有重名,否则路由器收到的链路状态。

3.2.2 Router ID 选取规则

  1. 可以使用router-id命令指定router id
  2. 选取路由器loop back连接数值最高的IP地址
  3. 如果没有loop back接口,在物理端口中选举IP地址最高的
    改完接口优先级后,记得清除OSPF进程

3.2.3 OSPF设置Router ID的方法

1、对全局有效:

[R1]router-id 1.1.1.1 

2、只在OSPF中有效:

[R1]OSPF 1 router-id 1.1.1.1

3.3 DR与BDR

DR(主路由器)/BDR(备份路由器)
DRother(其他路由器)

其它路由器只和DR和BDR形成邻接关系
每一个网段选举一个DR和BDR

3.3.1 DR和BDR的选举方法

自动选举DR和BDR

网段上router id 最大的路由器将被选举为DR,第二大的将被选举为BDR

手工选举DR和BDR

优先级范围是0-255,数值越大,优先级越高,默认值为1
如果优先级相同,则需要比较router 值
如果路由器的优先级被设置为0,它将不参与DR和BDR选举

3.3.2 DR和BDR的选举过程

路由器的优先级可以影响一个选举过程,选举已完成,但是它不能强制更换已经存在的DR和BDR路由器。

3.4 OSPF的度量值

度量值为cost:10^8/BW(百兆宽带)

四、OSPF中的数据传输

4.1 OSPF包类型及作用

OSPF路由协议介绍_第5张图片

4.2 OSPF将网络分为四种类型

点对点网络(Point-to-Point)
广播多路访问网络(Broadcast MultiAcess BMA)
非广播多路访问网络(None Broadcast MultiAcess NBMA)
点到多点网络(Point-to-Multipoint)

4.3 LSA的定义与类型

LSA(链路状态广播)是链接状态协议使用的一个分组,它包括有关邻居和通道成本的信息。 LSA被路由器接收用于维护它们的路由选择表。

4.3.1 LSA的类型

OSPF路由协议介绍_第6张图片

4.3.2 查看各类LSA的命令

OSPF路由协议介绍_第7张图片

五、OSPF多区域的生成

5.1 生成OSPF多区域的原因

  1. 改善网络的可扩展性
  2. 快速收敛

5.2 OSPF的三种通信量

OSPF路由协议介绍_第8张图片

5.3 虚链路

5.3.1 使用场合

一个非骨干区域跨越一个非骨干区域时使用。

5.3.2 作用

帮助这个非骨干区域获取完整的lsdb。

5.3.3 命令

非骨干区域的中转区域打

 [R1] ospf
 [R1]area1
 [R1]vlink-peer 对端 router-id
 对端路由器在相同区域设置同样的命令

5.3.4 注意

虚链路只能帮助一个非骨干区域跨越非骨干区域,虚链路属于区域0。

5.4 重分发

5.4.1 OSPF与RIP的重分发

需要在ASBR中输入

ospf 1
import-route rip 1 cost 10
rip 1
import-route ospf 1 cost 0

5.4.2 重分发过程中下发默认路由

ospf中下发默认路由给其他ospf邻居

 default-route-advertise always cost 0

rip中下发默认路由给其他rip邻居

default-route originate cost 0

六、OSPF的特点

  1. 可适应大规模网络
  2. 路由变化收敛速度快
  3. 无路由环
  4. 支持变长子网掩码VLSM
  5. 支持区域划分
  6. 支持以组播地址发送协议报文

七、OSPF与RIP区别

OSPF路由协议介绍_第9张图片

你可能感兴趣的:(路由器,网络)