MESH拓扑中的OSPF配置
OSPF 不使用网状拓扑。所有 OSPF 区域都必须连接到区域 0(骨干区域),因为从一个区域到另一个区域的所有流量都必须通过区域 0。这是一种环路预防机制。
OSPF 路由器了解其自身区域内的一切(路由路由器、成本等)。区域将这些知识分隔开来。路由器对其他区域的所有了解是它必须将目的地为另一个区域的流量发送到区域 0。
如果有时会发生某个区域无法物理连接到区域 0,则必须在该区域和区域 0 之间创建虚拟链接。区域 0 也必须是连续的,您不能有两个不同的区域 0。如果区域 0 被拆分,您将需要实现一个虚拟链接。
如果你想要冗余连接,那么你需要有多个连接从每个区域到区域 0。
在RFC 2328, OSPF 版本 2 中可以找到不能使用 OSPF 网格的原因:
3.1. 自治系统的支柱
OSPF 主干是特殊的 OSPF 区域 0(通常写为区域 0.0.0.0,因为 OSPF 区域 ID 通常被格式化为 IP 地址)。OSPF 骨干网始终包含所有区域边界路由器。骨干网负责在非骨干网区域之间分发路由信息。主干必须是连续的。然而,它不必是物理上连续的;可以通过配置虚拟链路来建立/维护主干连接。
可以在任何两个骨干路由器之间配置虚拟链路,这些路由器具有到公共非骨干区域的接口。虚拟链路属于主干。该协议将通过虚拟链路连接的两个路由器视为通过未编号的点对点骨干网络连接。在主干图上,两个这样的路由器通过弧连接,弧的成本是两个路由器之间的区域内距离。沿虚拟链路流动的路由协议流量仅使用区域内路由。
3.2. 区域间路由
在两个非骨干网区域之间路由数据包时,使用骨干网。数据包将通过的路径可以分为三个连续的部分:从源到区域边界路由器的区域内路径,源和目标区域之间的主干路径,然后是另一条到目的地的区域内路径. 该算法找到具有最小成本的一组此类路径。
从另一种角度来看,区域间路由可以被描述为在自治系统上强制采用星型配置,主干作为枢纽,每个非主干区域作为辐条。
主干的拓扑结构决定了区域之间使用的主干路径。可以通过添加虚拟链路来增强主干的拓扑结构。这使系统管理员可以对区域间流量所采用的路由进行一些控制。
在数据包离开源区域时使用的正确区域边界路由器的选择方式与选择通告外部路由的路由器的方式完全相同。一个区域中的每个区域边界路由器为该区域汇总它对该区域外部的所有网络的成本。在为区域计算 SPF 树后,通过检查区域边界路由器的摘要来计算到所有区域间目的地的路由。