OSPF多区域介绍

OSPF多区域的基本概念

OSPF(Open Shortest Path First)是一种基于链路状态的动态路由协议,支持多区域划分以实现层次化网络设计。多区域通过将大型网络分割为多个逻辑区域,减少路由表规模、优化SPF计算并提高网络稳定性。区域0(Area 0)是骨干区域,其他非骨干区域必须直接或间接连接到骨干区域。

OSPF路由器角色

  • 内部路由器(IR) :所有接口属于同一区域,仅维护本区域LSDB。
    • DR(指定路由器) 和 BDR(备份指定路由器)
    • DR 和 BDR 之外的路由器称为 DR Other
  • 区域边界路由器(ABR):连接多个区域,维护各区域的LSDB并汇总区域间路由。
  • 自治系统边界路由器(ASBR):引入外部路由(如RIP、静态路由),生成Type 5或Type 7 LSA。

OSPF多区域的优势

  • 减少LSDB规模:每个区域仅维护本区域的链路状态数据库(LSDB),降低内存和CPU消耗。
  • 限制LSA泛洪范围:LSA(链路状态通告)仅在区域内传播,区域间通过ABR汇总路由。
  • 提高收敛速度:区域内部拓扑变化不会触发其他区域的SPF计算。

OSPF多区域配置要点

  1. 区域划分:确保非骨干区域与Area 0直接相连,虚链路(Virtual Link)仅作为临时解决方案。
  2. 路由汇总 :在ABR上配置区域间路由汇总(area X range命令),减少Type 3 LSA数量。
  3. 特殊区域配置
    • 末节区域:ABR需配置area X stub,区域内所有路由器需一致启用该特性。
    • NSSA:使用area X nssa命令,并可选配置no-summary禁止Type 3 LSA。

OSPF选路原则

  1. 按照路由类型的优先级选择
    1. 区域内路由(Intra Area)
    2. 区域间路由(Inter Area)
    3. 第一类外部路由(Type1 External)
    4. 第二类外部路由(Type2 External)
  2. 在类型相同的情况下,选择路由开销(Cost)较小的路由

OSPF路由汇总

① 区域间路由汇总(在 ABR 上做)

把 Area 1 里的 10.1.0.0/24--10.1.255.0/24 汇总成 10.1.0.0/16 通告进 Area 0:

复制代码
router ospf 1
 area 1 range 10.1.0.0 255.255.0.0

位置:ABR(同时连接 Area 0 和 Area 1 的路由器)。

② 外部路由汇总(在 ASBR 上做)

把该路由器重分发进 OSPF 的多条静态外部路由 172.16.0.0/24--172.16.255.0/24 汇总成 172.16.0.0/16:

复制代码
router ospf 1
 summary-address 172.16.0.0 255.255.0.0

位置:ASBR (做了 redistribute static 或其他协议的路由器)。

LSA类型

四种OSPF特殊区域

前置说明如下(命令以思科设备演示)

加完全:禁止 Type-3 LSA(区域间汇总路由)

加非纯:允许本区域以 Type-7 LSA 的方式引入少量外部路由,由 ABR 转成 Type-5 泛洪到其它区域。

末梢区域
复制代码
! ===== ABR =====
router ospf 1
 router-id 10.0.0.1
 network 10.1.0.0 0.0.0.255 area 1
 network 10.0.0.0 0.0.0.255 area 0
 area 1 stub          ! 关键字
!

! ===== 区域内路由器 IR =====
router ospf 1
 router-id 10.0.0.11
 network 10.1.1.0 0.0.0.255 area 1
 area 1 stub          ! 关键字
!
完全末梢区域
复制代码
! ===== ABR =====
router ospf 1
 router-id 10.0.0.1
 network 10.1.0.0 0.0.0.255 area 1
 network 10.0.0.0 0.0.0.255 area 0
 area 1 stub no-summary   ! 多一个 no-summary
!

! ===== IR =====
router ospf 1
 router-id 10.0.0.11
 network 10.1.1.0 0.0.0.255 area 1
 area 1 stub              ! 与 Stub 写法完全一样
!
非纯末梢区域
复制代码
! ===== ABR =====
router ospf 1
 router-id 10.0.0.1
 network 10.1.0.0 0.0.0.255 area 1
 network 10.0.0.0 0.0.0.255 area 0
 area 1 nssa              ! 关键字
!

! ===== IR =====
router ospf 1
 router-id 10.0.0.11
 network 10.1.1.0 0.0.0.255 area 1
 area 1 nssa              ! 关键字
!
完全非纯末梢区域
复制代码
! ===== ABR =====
router ospf 1
 router-id 10.0.0.1
 network 10.1.0.0 0.0.0.255 area 1
 network 10.0.0.0 0.0.0.255 area 0
 area 1 nssa no-summary   ! 多一个 no-summary
!

! ===== IR =====
router ospf 1
 router-id 10.0.0.11
 network 10.1.1.0 0.0.0.255 area 1
 area 1 nssa              ! 与其它 NSSA 成员写法一致
!
相关推荐
IpdataCloud8 小时前
担心IP暴露隐私?用安全IP查询工具自查,三步配置网络出口
网络·tcp/ip·安全·ip
xy34538 小时前
wireshark 如何捕获信息
网络·测试工具·渗透测试·wireshark
玖玥拾10 小时前
C# 语言进阶(十五)C# 游戏服务端 MySQL 数据库
服务器·开发语言·网络·数据库·mysql·c#
一个有温度的技术博主11 小时前
【VulnHub 实战】DC-1 靶机渗透测试笔记(一):信息收集与主机发现
服务器·网络·笔记
白帽小阳12 小时前
2026前端面试题!(附答案及解析)
javascript·网络·python·安全·web安全·网络安全·护网行动
hehelm13 小时前
Linux网络编程—TCP字典翻译系统
linux·开发语言·网络·c++·tcp/ip
持力行14 小时前
D-BUS会话总线
运维·网络
pt104314 小时前
思科网络自动化-API常用数据编码格式(JSON/XML/YAML)课程与实践
linux·服务器·网络
糖果店的幽灵14 小时前
安全测试从入门到精通_网络基础与HTTPS
网络·https·php
Keepingrun15 小时前
HTTP基础
网络·网络协议·http