防止来自一个网络的 OSPF 路由重新分配到网络的其余部分?

网络工程 路由器 ospf 路由过滤器
2022-02-12 03:28:54

概要:网络 A 需要能够通过本地连接 (G0/0/3) 使用到网络 B 的静态默认路由。网络 A 不想通过其网络的其余部分路由任何网络 B 地址(当前网络 A 内的其他路由器正在接收许多子网)。

选项 1:使用单独的 OSPF 进程。在网络 A 的路由器上使用 OSPF 过程 1 与网络 B 形成 OSPF 邻接关系。然后使用 OSPF 过程 2 在网络 A 内形成所有其他 OSPF 邻接关系。

选项 2:将网络 A 路由器上的默认路由设置为 G0/0/3 上的网络 B,然后通过 G0/0/0 为网络 A 的其余部分设置静态路由。这可能是一个最小的子网列表,因为网络 A 通常是大块。CON:需要人工干预和协调。

选项 3:使用带有分发列表的路由映射的 OSPF 入站过滤。我们可以使用路由映射通过匹配进入 gi0/0/3 的路由来防止 OSPF 路由被添加到路由表中。我不知道的是,它们是否仍会被通告给网络 A 中的其他路由器。分发列表会阻止网络 B 的路由的重新分发吗?

警告:网络 A 管理员无法控制网络 B 的路由器。这就是为什么所有上述选项都包括仅适用于网络 A 路由器的解决方案。

1个回答

正如@ronmaupin 指出的那样,OSPF 不是为这种情况而设计的,而且效果很差。OSPF 的设计假设您可以完全控制网络,并且唯一确定从 A 到 B 的路径是成本。每个路由器都有网络的完整视图,以便做出最佳路径决策。

另一方面,BGP 正是为这种类型的场景而设计的,在这种场景中,路由决策更多地基于策略而不是简单的度量。BGP 假设您无法控制整个网络,因此您的路由器可以决定(基于策略)要通告哪些路由以及接受哪些路由。

在这种情况下,有一些使 OSPF 工作的杂物,但它们是杂物、创可贴和技巧,当您最需要它时会失败,或者在几个月后工程师(甚至您)尝试对其进行故障排除时会感到困惑.