OSPF 协议完整详解
一、基础概念
OSPF(Open Shortest Path First,开放式最短路径优先),链路状态路由协议,IETF 标准无类路由协议(支持 VLSM、CIDR),行业企业内网主流 IGP(内部网关协议)。
- 协议号:89(IP 层协议,非 TCP/UDP)
- 管理距离 AD:内部路由 110,外部路由 170
- 算法:SPF 迪杰斯特拉算法,计算最短路径树
- 组播地址:
- 224.0.0.5:所有 OSPF 路由器
- 224.0.0.6:DR/BDR
对比 RIP(距离矢量)核心区别
表格
| 类型 | 链路状态 | 距离矢量 |
| 跳数限制 | 无 | 最大 15 跳 |
| 收敛速度 | 快 | 慢 |
| 适用规模 | 大型、超大型园区 / 城域网 | 小型局域网 |
| 度量值 cost | 带宽为主 | 跳数 |
| 防环机制 | 区域划分 + SPF 天然无环 | 水平分割、毒性反转 |
二、Cost 开销计算公式
默认:Cost = 100Mbps / 接口带宽(Mbps)
- 千兆口:100/1000 = 1
- 百兆口:100/100 = 1
- 10M 以太网:10
- 串口 T1 (1.544M):64 可手动修改接口 ip ospf cost x 自定义开销。
三、OSPF 路由器角色
四、区域 Area 设计(核心防环、减小 LSDB)
- 标准区域:完整接收 1/2/3/4/5 类 LSA
- 末节区域 Stub:无 4/5 类外部 LSA,默认路由代替
- 完全末节 Totally Stub:无 3/4/5 类,仅区域内 LSA + 默认路由
- NSSA 非纯末节:允许引入本地外部路由(7 类 LSA),过滤外部域外路由
五、邻居建立完整状态机(Down→Full)
Hello 计时器
- 广播 / 点对点:10s Hello,40s Dead 死亡时间
- NBMA(帧中继):30s Hello,120s Dead 邻居建立条件必须全部匹配: 区域号、认证、Hello 间隔、Stub 标记、同网段子网掩码
六、5 类基础 LSA 链路状态通告(NSSA 新增 7 类)
表格
| 1 类 | 路由器 LSA | 每台路由器 | 本区域 | 描述自身直连链路 |
| 2 类 | 网络 LSA | DR | 本区域 | 描述广播网段拓扑 |
| 3 类 | 网络汇总 LSA | ABR | 整个 OSPF 域 | 区域间路由汇总 |
| 4 类 | ASBR 汇总 LSA | ABR | 整个 OSPF 域 | 告知 ASBR 位置 |
| 5 类 | AS 外部 LSA | ASBR | 整个 OSPF 域 | 外部引入路由(静态 / BGP) |
| 7 类 | NSSA 外部 LSA | NSSA 内 ASBR | 仅 NSSA 区域,转 5 类出区域 | NSSA 本地外部路由 |
三张核心表
七、外部路由两种度量类型
八、典型基础配置(Cisco IOS)
1. 单区域基础
ios
router ospf 1 # 进程号本地有效,设备间无需一致
router-id 1.1.1.1 # 手动指定Router-ID(推荐,优先loopback)
network 192.168.1.0 0.0.0.255 area 0 # 网段+反掩码+区域
! 接口修改cost
interface g0/0
ip ospf cost 5
2. DR 优先级控制(0 表示不参与选举)
ios
interface g0/0
ip ospf priority 10
3. ABR 路由汇总(减少 LSA)
ios
router ospf 1
area 1 range 10.0.0.0 255.255.0.0
4. ASBR 外部路由汇总
ios
router ospf 1
summary-address 172.16.0.0 255.255.0.0
九、常用排错命令
ios
show ip ospf neighbor # 查看邻居状态
show ip ospf database # 完整LSDB链路库
show ip route ospf # OSPF路由表
show ip ospf interface brief # 启用OSPF的接口
debug ip ospf hello # 调试Hello报文
debug ip ospf lsa-generation # 调试LSA生成
十、OSPF 优缺点
优点
缺点






