当前位置: 首页 > news >正文

OSPF 路由协议详细笔记

一、OSPF 基础概念

1.1 静态路由与动态路由对比

特性静态路由动态路由
配置复杂度简单(手动配置)复杂(需协议配置)
资源消耗低(不占用带宽、CPU、内存)高(需路由计算和信息交换)
适应性固定路径,无法自动调整自动适应拓扑变化
安全性高(无协议暴露,避免路由欺骗)低(可能受协议漏洞攻击)
适用规模小型 / 稳定网络中大型 / 复杂网络

1.2 OSPF 基本概念

  • 定义:开放式最短路径优先协议(Open Shortest Path First),基于链路状态算法(LS)的内部网关协议(IGP)。
  • 特点
    • 支持无类路由(携带子网掩码)。
    • 使用组播地址 224.0.0.5(所有 OSPF 设备)和 224.0.0.6(DR/BDR)。
    • 结构化部署(区域划分)减少 LSA 泛洪。
  • 区域划分原则
    • 必须存在区域边界路由器(ABR)。
    • 采用星形拓扑,骨干区域(Area 0)连接所有非骨干区域。

1.3 OSPF 数据包类型

  1. Hello 包:发现、建立和保活邻居关系,携带 RID、区域 ID、Hello 时间等参数。
  2. DBD 包:链路状态数据库描述包,携带 LSDB 摘要信息。
  3. LSR 包:链路状态请求包,请求缺失的 LSA。
  4. LSU 包:链路状态更新包,携带具体的 LSA 信息。
  5. LSACK 包:链路状态确认包,确保 LSA 传输可靠性。

1.4 OSPF 状态机

  1. Down:初始状态,未收到 Hello 包。
  2. Init:收到 Hello 包,但未包含自身 RID。
  3. 2-Way:双向通信建立,完成邻居关系(条件匹配开始)。
  4. Exstart:主从关系选举,确定 DBD 包发送顺序。
  5. Exchange:交换 DBD 包,同步 LSDB 摘要。
  6. Loading:请求并接收缺失的 LSA。
  7. Full:邻接关系建立完成,LSDB 同步。

1.5 OSPF 基础配置

# 启动 OSPF 进程并指定 RID
[router] ospf 1 router-id 1.1.1.1# 宣告接口到区域
[router-ospf-1] area 0.0.0.0
[router-ospf-1-area-0.0.0.0] network 192.168.1.0 0.0.0.255  # 范围宣告
[router-ospf-1-area-0.0.0.0] network 192.168.1.1 0.0.0.0    # 精准宣告

二、OSPF 拓展配置

2.1 认证配置

2.1.1 接口认证
# 在接口下配置 MD5 认证
[router-GigabitEthernet0/0/0] ospf authentication-mode md5 1 cipher 123456
2.1.2 区域认证
# 在区域下配置 MD5 认证(批量应用到区域内所有接口)
[router-ospf-1-area-0.0.0.0] authentication-mode md5 1 cipher 123456
2.1.3 虚链路认证
# 在虚链路所在区域配置认证
[router-ospf-1-area-0.0.0.2] vlink-peer 5.5.5.5 md5 1 cipher 123456

2.2 加快收敛

2.2.1 计时器修改
# 修改 Hello 时间(Dead 时间自动变为 4 倍)
[router-GigabitEthernet0/0/0] ospf timer hello 2# 单独修改 Dead 时间
[router-GigabitEthernet0/0/0] ospf timer dead 10# 修改重传时间
[router-GigabitEthernet0/0/0] ospf timer retransmit 3# 修改传输延迟
[router-GigabitEthernet0/0/0] ospf trans-delay 2

2.3 沉默接口

# 配置接口不发送 OSPF 报文(如连接 PC 的接口)
[router-ospf-1] silent-interface GigabitEthernet 0/0/1

2.4 缺省路由

2.4.1 手工下发缺省路由
# 普通下发(自身存在缺省路由时生效)
[router-ospf-1] default-route-advertise# 强制下发(无论自身是否存在缺省路由)
[router-ospf-1] default-route-advertise always
2.4.2 特殊区域产生缺省路由
区域类型产生条件LSA 类型发布者
普通区域手工配置 default-route-advertiseType 5ASBR
Stub / Totally Stub自动产生Type 3ABR
NSSA / Totally NSSA手工配置或自动产生Type 7 / Type 3ASBR / ABR

2.5 路由过滤

2.5.1 域间路由过滤(3 类 LSA)
# 在 ABR 上拒绝发布特定网段的 3 类 LSA
[router-ospf-1-area-0.0.0.1] abr-summary 1.1.1.1 255.255.255.255 not-advertise
2.5.2 域外路由过滤(5/7 类 LSA)
# 在 ASBR 上拒绝引入特定网段的 5 类 LSA
[router-ospf-1] asbr-summary 10.0.0.0 255.255.255.0 not-advertise

2.6 路由控制(干涉选路)

2.6.1 修改协议优先级
# 修改 OSPF 协议优先级(仅本地生效)
[router-ospf-1] preference 70# 修改 OSPF 域外路由优先级
[router-ospf-1] preference ase 10
2.6.2 修改开销(Cost)
# 修改接口真实带宽(不推荐)
[router-GigabitEthernet0/0/0] speed 10# 修改参考带宽(所有设备需同步配置)
[router-ospf-1] bandwidth-reference 2000# 直接修改接口 Cost
[router-GigabitEthernet0/0/0] ospf cost 10

三、OSPF 优化措施

3.1 路由汇总

3.1.1 域间路由汇总(3 类 LSA)
# 在 ABR 上配置域间路由汇总
[router-ospf-1-area-0.0.0.2] abr-summary 172.16.0.0 255.255.252.0
3.1.2 域外路由汇总(5/7 类 LSA)
# 在 ASBR 上配置域外路由汇总
[router-ospf-1] asbr-summary 172.16.0.0 255.255.254.0

3.2 特殊区域优化

3.2.1 Stub 区域
  • 特点:拒绝接收域外路由(5 类 LSA),由 ABR 下发 3 类缺省路由。
  • 配置
    [router-ospf-1-area-0.0.0.1] stub
    
3.2.2 Totally Stub 区域
  • 特点:拒绝接收域外路由和域间路由(3 类 LSA),仅保留区域内路由和缺省路由。
  • 配置
    [router-ospf-1-area-0.0.0.1] stub no-summary
    
3.2.3 NSSA 区域
  • 特点:允许引入域外路由(7 类 LSA),拒绝接收其他区域的 5 类 LSA。
  • 配置
    [router-ospf-1-area-0.0.0.1] nssa
    
3.2.4 Totally NSSA 区域
  • 特点:拒绝接收域外路由、域间路由,仅保留区域内路由和缺省路由。
  • 配置
    [router-ospf-1-area-0.0.0.1] nssa no-summary
    

四、OSPF 选路规则

4.1 路由优先级

  1. 域内路由(1/2 类 LSA):优先级最高。
  2. 域间路由(3 类 LSA):优先级次之。
  3. 域外路由(5/7 类 LSA):优先级最低。

4.2 域内 / 域间路由选路

  • 比较到达目标网段的总开销(Cost),选择开销小的路径;开销相同则负载均衡。

4.3 域外路由选路

4.3.1 类型 1(Type 1)
  • 总开销 = 本地到 ASBR 的开销 + 种子度量值。
  • 选路时比较总开销,优先选择开销小的路径。
4.3.2 类型 2(Type 2)
  • 总开销 = 种子度量值(默认优先级低于 Type 1)。
  • 选路时先比较种子度量值,再比较到达 ASBR 的开销。
4.3.3 配置示例
# 重发布时指定开销类型为 Type 1
[router-ospf-1] import-route rip 1 type 1

五、OSPF 不规则区域处理

5.1 不规则区域类型

  1. 远离骨干的非骨干区域:非骨干区域未直接连接到 Area 0。
  2. 不连续骨干:骨干区域被分割为多个部分。

5.2 解决方案

5.2.1 虚链路(V-Link)
  • 作用:通过非骨干区域连接不规则区域到骨干区域。
  • 配置
    # 在过渡区域配置虚链路(指向对端设备 RID)
    [router-ospf-1-area-0.0.0.1] vlink-peer 4.4.4.4
    
  • 局限性
    • 只能跨越一个区域。
    • 消耗额外资源。
5.2.2 多进程双向重发布
  • 原理:通过 ASBR 在不同 OSPF 进程间重发布路由。
  • 配置
    # 在 OSPF 1 中重发布 OSPF 2 的路由
    [router-ospf-1] import-route ospf 2
    

六、LSA 详解

6.1 LSA 类型

类型名称作用发布者泛洪范围
1Router LSA区域内拓扑信息所有 OSPF 设备本区域
2Network LSA广播 / NBMA 网络中的拓扑信息DR本区域
3Sum-Net LSA域间路由信息ABR其他区域
4Sum-Asbr LSA指向 ASBR 的路由信息ABR其他区域
5AS-Extern LSA域外路由信息ASBR整个 OSPF 域
7NSSA LSANSSA 区域的域外路由信息ASBRNSSA 区域

6.2 LSA 头部字段

  • Type:LSA 类型。
  • LinkState ID:标识 LSA 的唯一标识符(根据类型不同含义不同)。
  • AdvRouter:通告路由器的 RID。
  • Age:LSA 老化时间(默认 1800 秒,最大 3600 秒)。
  • Sequence:序列号,用于判断 LSA 新旧(范围 0X80000001 ~ 0X7FFFFFFE)。
  • Checksum:校验和,确保 LSA 完整性。

6.3 LSA 刷新机制

  • 当序列号达到最大值(0X7FFFFFFE)时,LSA 老化时间设为 3600 秒,之后重新生成序列号从 0X80000001 开始的新 LSA。

七、常用查看命令

# 查看 OSPF 邻居信息
[router] display ospf peer
[router] display ospf peer brief# 查看 OSPF 链路状态数据库
[router] display ospf lsdb
[router] display ospf lsdb router 1.1.1.1  # 查看特定 Router LSA# 查看 OSPF 虚链路
[router] display ospf vlink# 查看 OSPF 路由表
[router] display ip routing-table protocol osp

相关文章:

  • jsp网站开发详解 赵增敏电商沙盘seo裤子关键词
  • 嘉兴做外贸网站比较好的公司2022年传销最新消息
  • 西安seo外包机构seo分析是什么意思
  • 厦门手机网站建设是什么百度推广开户费用标准
  • 网站怎么样制作视频查权重的软件
  • 赣州网站建设百家号如何自己搭建网站
  • Python-7-读取/写入文件数据
  • mb_bootloop_le.elf是使用microblaze默认的elf文件,这个文件包括哪些内容?
  • n8n智能体新境界:MCP服务器简化复杂自动化
  • Apache 支持 HTTPS
  • 系统性能优化-6 TCP 三次握手
  • easyExcel导入多sheet的Excel,存在合并单元格、列不固定的情况
  • 自动获取文件的内存大小怎么设置?批量获取文件名和内存大小到Excel中的方法
  • notepad++ 怎么快速给 python (nginx、shell) 文件加 # 注释
  • 远程玩3A大作要多少帧?ToDesk、向日葵、UU远程性能对决
  • 从零搭建高效本地代理池:设计与实现
  • Ubuntu中控制用户cpu资源分配控制步骤
  • Flutter 多平台项目开发指南
  • 【Go语言-Day 9】指针基础:深入理解内存地址与值传递
  • 量学云讲堂2025年天山至尊刘智辉第63期视频课程+第2段位课
  • Trae IDE 大师评测:驾驭 MCP Server - Figma AI Bridge 一键成就前端瑰宝
  • 原子级制造革命:双原子镧催化剂登顶Angew,焦耳超快加热技术深度解析
  • leetcode:50. Pow(x, n)(python3解法,数学相关算法题)
  • ISP Pipeline(3):Lens Shading Correction 镜头阴影校正
  • OpenCV CUDA模块设备层-----逐通道的正弦运算函数sin()
  • AI智能体——OpenManus 源码学习