OSPF 配置全攻略:从基础原理到实战演练

OSPF(Open Shortest Path First,开放最短路径优先) 是一种非常重要的 动态路由协议,他是一个内部网关协议 (Interior Gateway protocol, IGP),用于在 单一自治系统 (Autonomous System , AS) 内决策路由 。 适合小型,中型,较大规模的网络。

与 RIP(路由信息协议)相比,OSPF 具有 更快的收敛速度、更高的扩展性和更精确的路由计算能力。它基于 链路状态(Link-State) 运行,使用 Dijkstra 最短路径优先(SPF)算法 计算最优路径,并通过 区域(Area)划分 提高网络可扩展性。

一、OSPF 协议概述

1. OSPF 的核心特点基于链路状态数据库(LSDB):每个 OSPF 路由器都会维护整个自治系统的拓扑信息,而不是像 RIP 仅存储下一跳信息。采用 SPF(最短路径优先)算法:确保数据包始终走最优路径,避免 RIP 那样的跳数限制问题。支持 VLSM 和 CIDR:相比 RIP,OSPF 可以使用 可变长度子网掩码(VLSM),提高地址利用率。收敛速度快:当网络拓扑发生变化时,OSPF 只会更新变化部分,而不是像 RIP 那样定期广播整个路由表。支持区域(Area)划分:可以将大型 OSPF 网络划分为多个 区域,减少路由器的计算和存储负担,提高可扩展性。支持多路径负载均衡:可以同时使用多条路径进行数据转发,提高带宽利用率。2. OSPF 的工作原理

OSPF 通过 五种不同类型的数据包(Hello、DBD、LSR、LSU、LSAck) 进行邻居发现、链路状态更新和路由计算,具体过程如下:

(1) 邻居发现(Hello 报文)

OSPF 路由器通过 Hello 报文 在网络上发现邻居,并建立 OSPF 邻接关系。

(2) 建立邻接关系(DBD、LSR、LSU、LSAck)

交换 数据库描述报文(DBD),了解彼此的拓扑数据库。通过 链路状态请求(LSR) 和 链路状态更新(LSU) 交换完整的 LSDB 信息。使用 链路状态确认(LSAck) 确认更新信息是否正确。

(3) 计算最优路径(Dijkstra SPF 算法)

每个 OSPF 路由器都会运行 SPF 算法 计算最优路径,并更新本地路由表。

(4) 链路状态更新(LSU 触发式更新)

当拓扑发生变化时,OSPF 只会传播受影响部分的更新,而不会周期性广播整个路由表。

二、OSPF 典型拓扑示例

为了更好地理解 OSPF,我们使用 华为 ENSP 搭建一个简单的 OSPF 网络拓扑:

设备

接口

IP 地址

子网掩码

R1

G0/0/0

10.1.1.1

255.255.255.0

R1

G0/0/1

10.1.2.1

255.255.255.0

R2

G0/0/0

10.1.1.2

255.255.255.0

R2

G0/0/1

192.168.2.1

255.255.255.0

R3

G0/0/0

10.1.2.2

255.255.255.0

R4

G0/0/0

192.168.2.2

255.255.255.0

OSPF相关命令:

命令

作用

ospf [进程号]

进入 OSPF 进程,例如 ospf 1

area [区域号]

配置 OSPF 区域,例如 area 0

network [网络地址] [反掩码]

将接口划入 OSPF,例如 network 10.1.1.0 0.0.0.255

display ospf peer

查看OSPF邻居关系

display ospf routing

查看OSPF的路由信息

三、OSPF 配置步骤

1. 启用 OSPF 并进入 OSPF 进程

在 R1、R2、R3 上分别执行:

复制
<Huawei> system-view [Huawei] sysname R1 # 修改设备名称 [R1] ospf 1 # 启动 OSPF 进程 11.2.3.
2. 配置 OSPF 网络区域

在各个路由器上添加对应网络到 OSPF:

复制
[R1] interface GigabitEthernet 0/0/0 [R1-GigabitEthernet0/0/0] ip address 10.1.1.1 255.255.255.0 # 配置接口IP [R1] interface GigabitEthernet 0/0/1 [R1-GigabitEthernet0/0/1] ip address 10.1.2.1 255.255.255.0 # 配置接口IP [R1] ospf 1 [R1-ospf-1] area 0 [R1-ospf-1-area-0.0.0.0] network 10.1.1.0 0.0.0.255 # 将接口划入 OSPF [R1-ospf-1] area 1 [R1-ospf-1-area-0.0.0.1] network 10.1.2.0 0.0.0.2551.2.3.4.5.6.7.8.9.

神唱小知识: 配置完成后可以通过display ospf routing查看

对于 R2 和 R3和R4,执行类似命令:

复制
[R2] ospf 1 [R2-ospf-1] area 0 [R2-ospf-1-area-0.0.0.0] network 10.1.1.0 0.0.0.255 [R2] ospf 1 [R2-ospf-1] area 2 [R2-ospf-1-area-0.0.0.2]network 192.168.2.0 0.0.0.255 [R3] ospf 1 [R3-ospf-1] area 1 [R3-ospf-1-area-0.0.0.1] network 10.1.2.0 0.0.0.255 [R4] ospf 1 [R4-ospf-1] area 2 [R4-ospf-1-area-0.0.0.2] network 192.168.2.0 0.0.0.2551.2.3.4.5.6.7.8.9.10.11.12.13.14.15.

好啦,接下来就是 验收阶段 了。

(1) 我们先来看看R1的路由表,已经学到了全部路由

(2) 测试 OSPF 互通 : 在 R1 上 PING R4 的 192.168.2.2

正常连通,说明 OSPF 配置成功!🎉

(3) 查看路由器R1的OSPF邻居

(4) 显示路由器R1的OSPF路由信息

以上就是OSPF的基本配置啦,大家学到没有。

THE END
本站服务器由亿华云赞助提供-企业级高防云服务器