用于 IPv4 的 OSPF 的现行版本为 OSPFv2,该版本由 John Moy 在 RFC 1247 中引入,并在 RFC 2328 中更新。 1999 年,RFC 2740 中发布了用于 IPv6 的 OSPFv3。

OSPF 是一种无类链路状态路由协议,默认管理距离为 110,在路由表中表示为路由源代码 O

OSPF 通过 router ospf process-id 全局配置模式命令启用。 process-id 值仅在本地有效,这意味着在路由器之间建立相邻关系时无需匹配该值。

OSPF 中的 network 命令与 其他 IGP 路由协议中的 network 命令具有相同的功能,但语法稍有不同。 wildcard-mask 值是子网掩码的反码,且 area-id 值应设置为 0

默认情况下,多路访问和点对点网段上每 10 秒发送一次 OSPF Hello 数据包,NBMA 网段上每 30 秒发送一次(Frame Relay、X.25 或 ATM),并且 OSPF 使用 OSPF Hello 数据包来建立邻接关系。 默认情况下 Dead 间隔是 Hello 间隔的四倍。

两台路由器的 Hello 间隔、Dead 间隔、网络类型和子网掩码必须匹配,才能建立相邻关系。 使用 show ip ospf neighbors 命令检验 OSPF 邻接关系。

在多路访问网络中,OSPF 选举出一个 DR 充当 LSA 的集散点。 如果 DR 发生故障,则由 BDR 承担 DR 的角色。 其他所有路由器都称为 DROTHER。 所有路由器将各自的 LSA 发送给 DR,然后由 DR 将该 LSA 泛洪给该多路访问网络中的其他所有路由器。

show ip protocols 命令用于检验重要的 OSPF 配置信息,其中包括 OSPF 进程 ID、路由器 ID 和路由器正在通告的网络。

OSPFv3 在接口上启用,而不在路由器配置模式下启用。 OSPFv3 需要配置本地链路地址。 必须为 OSPFv3 启用 IPv6 单播路由。 在接口可以启用 OSPFv3 之前,需要使用 32 位路由器 ID。