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

OSPF路由协议单区域

一、RIP协议的不足与OSPF的引入

  1. 网络规模限制 RIP最大跳数限制为15跳,超过即视为不可达,导致大型网络无法扩展。 示例:若数据需经16台路由器中转,RIP直接判定目标网络不可达

  2. 资源消耗问题

    • 定期全路由表更新:每30秒广播整个路由表,占用带宽。 计算示例:1000条路由 × 20字节/条 × 2台设备 = 单向消耗160Kb带宽/次 
    • 慢收敛:路由失效需180秒(失效计时器) + 60秒(清除计时器)才能更新,易形成环路 
  3. 路由选择不智能 仅依据跳数,忽略实际链路质量。 场景对比

    • RIP:选跳数少(1跳)但带宽低(10Mbps)的路径;
    • OSPF:选跳数多(2跳)但带宽高(1000Mbps)的路径,因开销更低(Cost=100/1000≈0.1) 

二、基本概念与工作原理

基本工作过程:先通过Hello报文发现邻居,把自己的直连拓扑信息打包成链路状态通过LSA存放到自己的链路状态数据库里,然后同一个区域同步链路状态数据库,然后所有路由器以自己为根,计算去往所有网段的路由

  • Router ID:唯一标识路由器,优先选择Loopback接口最大IP,次选物理接口最大IP 
    。 示例:若路由器有192.168.1.1/24(GE0/0)和192.168.2.1/24(GE0/1),Router ID为192.168.2.1
  • 链路状态(LS)与LSA
    • LS:描述直连网段(网段+掩码+开销)及邻居(Router ID+接口开销) 
    • LSA类型
      • LSA 1:路由器LSA,描述自身直连拓扑(每台路由器产生)。
      • LSA 2:网络LSA,由DR描述广播型网络中的设备列表 
  • LSDB与SPF计算
    • 每台OSPF路由器都有一个LSDB,用于存储LSA。
    • 同一区域内所有路由器LSDB一致,通过洪泛(Flooding)同步LSA
    • LSA在洪泛过程中内容保持不变。
    • 各路由器独立以自身为根运行SPF算法,生成最短路径树,计算路由表 
    • 各OSPF路由器单独进行SPF计算,互不影响。
2. 开销(Cost)计算
  • 公式Cost = 参考带宽 / 接口带宽,默认参考带宽100Mbps 出接口开销之和
  • 实例
    • 以太网(100Mbps):100/100 = 1
    • 串行链路(2Mbps):100/2 = 50
    • 计算端到端开销时累加路径值(如R1→R2→R3:10+10=20) 
    •  :现代网络需调整参考带宽(如设为1000Mbps)避免高速链路cost均为1

3. OSPF报文类型与封装

4. 邻居建立与DR/BDR选举
  • 邻居状态机: Down → Init → 2-Way → ExStart → Exchange → Loading → Full
    关键点
    •  
      • 2-Way状态确认双向通信,广播网络需选举DR/BDR。
      • Exchange阶段同步LSDB摘要,Loading阶段请求缺失LSA。
  • DR/BDR选举规则
    • 优先级最高者为DR,次高为BDR(默认优先级1,范围0-255)。
    • 优先级相同则比较Router ID(大者优先)。
    • 稳定性原则:已选举的DR/BDR不因新加入的高优先级路由器替换
      。 示例:若网络中有RID为3.3.3.3的路由器加入,原有DR(1.1.1.1)和BDR(2.2.2.2)保持不变。

三、OSPF区域划分与设计

1. 区域类型及作用
区域类型允许的LSA特点
骨干区域 (Area 0)所有LSA必选核心,连通所有非骨干区域
末梢区域 (Stub)屏蔽LSA 5/7(外部路由)由ABR下发默认路由替代外部路由
完全末梢 (Totally Stub)仅LSA 1/2 + 默认路由进一步屏蔽LSA 3(区域间路由)
NSSA允许生成LSA 7(本地外部路由)适用于需引入外部路由但不想接收外部LSA的边缘区域
2. 虚链路(Virtual Link)

应用场景:非骨干区域未直连Area 0时,通过虚链路跨越中间区域连接骨干区域。 配置示例

RTC(config-router)# area 2 vlink-peer 5.5.5.5 // RTC与RTE建立虚链路

四、单区域OSPF配置实践

1. 基础配置命令

RTA(config)# router ospf 1 // 启动OSPF进程 RTA(config-router)# router-id 1.1.1.1 // 手动指定RID RTA(config-router)# network 192.168.1.0 0.0.0.255 area 0 // 宣告网段 RTA(config-router)# passive-interface Gig0/0 // 禁止该接口发Hello包

注意

  • network命令使用反掩码(如0.0.0.255匹配192.168.1.x网段)。
  • 被动接口仍生成LSA,但不建立邻居 
2. 典型拓扑与验证

验证命令

show ip ospf neighbor // 查看邻居状态 show ip ospf database // 检查LSDB一致性 show ip route ospf // 查看OSPF路由表

结果:所有路由器应学到全网路由(如RTA看到10.1.35.0/24 via RTC)

五、关键对比与总结

RIP vs OSPF核心差异
特性RIPOSPF
算法距离矢量(跳数)链路状态(SPF树 + 带宽开销)
收敛速度慢(分钟级)快(秒级)
资源消耗高(定期全表广播)低(触发更新 + 增量LSA)
防环机制水平分割/毒性逆转算法天然防环
适用规模≤15跳的小型网络大型企业/运营商网络

附:复杂概念简释

  1. LSA洪泛与老化

    • 洪泛:新LSA通过LSU报文扩散至全网,邻居用LSAck确认。
    • 老化:LSA默认存活3600秒,超时前半小时间隔(1800秒)主动刷新 
  2. DR/BDR选举规则

    • 优先级:数值高者胜(默认1,0表示不参与)。
    • RID:优先级相同时,RID大者胜。 关键原则:已选举的DR/BDR不因新加入的高优先级路由器而替换
http://www.dtcms.com/a/295234.html

相关文章:

  • MSOP/DIFOP端口 vs. IP地址的关系以及每个IP下面有什么自己的东西
  • 征服 Linux 网络:核心服务与实战解析
  • RWA与DeFi(去中心化金融)的关系是什么?RWA在DeFi中扮演什么角色?
  • 香草社游戏系列原声大碟OST合集全无损 FLAC格式 30GB
  • 详细介绍AI在金融、医疗、教育、制造四大领域的落地案例,每个案例均包含实际应用场景、技术实现方案、可视化图表和核心代码示例
  • 【每天一个知识点】生成对抗聚类(Generative Adversarial Clustering, GAC)
  • 【Unity开发】数据存储——XML
  • C++11+ 原子操作 `std::atomic`,现代并发编程的核心
  • Delegate、Action 与 Func 委托的全面解析
  • GitHub Actions打包容器,推送 AWS ECR 并使 EKS 自动拉取以完成发版部署
  • 【Java基础06】ArrayList
  • 软考 系统架构设计师系列知识点之杂项集萃(115)
  • Python 程序设计讲义(14):Python 的数据运算——数值运算
  • RabbitMQ--消息顺序性
  • Java集合去重
  • OpenMed 项目深度分析:推动医疗 NLP 领域的开源革命
  • pcie常用的查看寄存器方法
  • node.js中的path模块
  • 低速信号设计之 QSPI 篇
  • 【LeetCode数据结构】二叉树的应用(一)——单值二叉树问题、相同的树问题、对称二叉树问题、另一棵树的子树问题详解
  • Faiss中L2欧式距离与余弦相似度:究竟该如何选择?
  • Web前端入门:JavaScript 哪些地方需要 try...catch 异常捕获
  • 【图论】倍增与lca
  • Avalonia 基于MVVM的时间统计/系统时间显示 示例
  • EPSON爱普生全系列废墨垫已满清零工具分享附教程下载
  • EasyExcel 模板导出数据 + 自定义策略(合并单元格)
  • 基于深度学习的胸部 X 光图像肺炎分类系统(三)
  • Turbo Intruder 并发插件无法试用--更换新版Burpsuit解决(简单解决安装、破解问题)
  • 开源Qwen凌晨暴击闭源Claude!刷新AI编程SOTA,支持1M上下文
  • 跨境支付入门~国际支付结算(结算篇)