3个子网,2个OSPF区域-可以工作吗?


10

如果我的拓扑涉及3个子网和两个OSPF区域,其中一个子网位于区域0中,而另外两个子网都位于区域1中,会发生任何问题吗?

例如:

[area 1, subnet 1]---[ABR #1]---[area 0, subnet 2]---[ABR #2]---[area 1, subnet 3]

三个不同的路由器?如果是这样,请提供路由器之间链接所在区域的详细信息。OSPF将链接放在单个区域中,并且该区域必须在链接的两侧都匹配
Mike Pennington

@Mike Pennington-您是否也在ABR中寻找OSPF网络语句?我说的是没有任何虚拟链接的配置。
医生

是的,有3种不同的路由器,如下所示:[区域1网络,子网1] --- [路由器#1] --- [区域0网络,子网2,终端设备#1] --- [路由器#2] --- [区域0网络,子网2,终端设备#2] --- [路由器#3] --- [区域1网络,子网3]
医生

Answers:


7

关于在骨干上划分区域1(区域0)的问题:

[区域1,子网1] --- [ABR#1] --- [区域0,子网2] --- [ABR#2] --- [区域1,子网3]

[区域1,子网1] --- [路由器#1] --- [区域0,子网2,终端设备#1] --- [路由器#2]-[区域0,子网2,终端设备#2] --- [路由器#3] --- [区域1,子网3]

简短的回答:您的建议没有问题...

长答案:

甚至彼得(Peter)的答案也认为,重复使用区域编号是不好的设计,但也没有提供证明这是不好的设计。如果您检查他使用的超链接,则不会解释此设计的不良后果。此外,关于R1和R3的连接可能会遇到问题的论据不多,因为R1到R3的链接可以在区域0或区域1中合法配置,具体取决于要传输的流量。他提到的困难是一个错误的困境。

RFC 2328中,第3.7节 OSPF明确允许您使用不连续的非骨干区域(以下称为“区域分区”):

    OSPF does not actively attempt to repair area partitions.  When
    an area becomes partitioned, each component simply becomes a
    separate area.  The backbone then performs routing between the
    new areas.  Some destinations reachable via intra-area routing
    before the partition will now require inter-area routing.
    ...  Also, the backbone itself must not partition.

因此,是否使用提议的不连续区域1只是个问题而已...有些人发现在图中使用该配置是不合逻辑的。这些人可能建议您将OSPF区域号保持在一起...因此,您必须将路由器#3上的[区域1,子网3]更改为[区域3,子网3]。其他人认为重用区域1没有问题,因为OSPF区域号仅对发出OSPF问候的路由器本地有效。

无论哪种方式,我们都应该承认OSPF是一种非常灵活的协议。无论在这场辩论中选择一方还是另一方。


1
仅供参考,此设计(不连续区域1)已在某些军事网络中投入生产。部署到将通过DMVPN连接回集线器站点ABR的远程站点的单元将获得具有标准配置的路由器。他们最多将更改路由器上的一个或两个IP地址。这是否是“最佳实践”值得怀疑,但是它是否有效,并且非专业人员很容易部署。

@ user2668高级别的军事政策并未在生产网络中推广这一点。尽管“特殊的”组织(请注意兔耳)倾向于按照自己的意愿去做,但是当他们想要时,这当然不是常态。可以肯定地说,有些分支area 0专门促进单个OSPF设计,以限制设计的复杂性。
Ryan Foley 2014年

8

这会起作用,但是除非您有特定原因,否则这将是一个糟糕的设计选择(IMHO)。

查看此讨论: 重复的OSPF区域ID

OSPF最佳实践

推荐的OSPF配置最佳实践(使用SSM示例)

OSPF区域配置最佳实践

更新#1

为了完整起见,我使用dyanmips模拟了这种情况。该平台是运行IOS版本12.4(15)T13的Cisco 3725s。

R1(lo0 1.1.1.1,f0 / 0 10.12.0.1)<-> R2(lo0 2.2.2.2,f0 / 0 10.12.0.2,f0 / 1 10.23.0.2)<-> R3(lo0 3.3.3.3,f0 / 0 10.23.0.3)。

R1和R3的环回接口位于区域1,所有其他接口位于区域0。

然后在R1和R3框之间进行ping操作(例如R3#ping ip 1.1.1.1源3.3.3.3),以确认连接。

我认为我仍然会回避这种架构。迈克(Mike)提出了完全有效的观点(并且测试证实了这一点)。OSPF区域是控制路由传播并减小路由器的链接状态数据库的大小的有用工具-但它们(至少对我而言)也可以用来证明我打算将网络的“此”部分与“ that”在结构上分开由于某种原因而成为网络的一部分。

如果将来您决定将R1连接到R3并使用相同的区域#,那么您已经幸运了,并坚决为自己节省了许多有关更改区域号或必须使用虚拟链接的问题。因此,也许这是一个赞成在各处使用两个区域ID(0和1)的论点-但同样,您最初并不希望R1和R3能够直接通信。耸耸肩

这是一个风格和个人喜好问题-似乎没有技术上的原因不可行,我也从未打算以其他方式表示。

更新#2

添加非ascii艺术连接图-线性绘制为三角形。R1和R3之间打算做什么?区域1应该是连续的还是分开的?

在此处输入图片说明


这样做是为了减少AS的不同部分之间发生的OSPF流量。我查看了您所有的链接,不知道是否错过了某些内容,但是为什么出于我提到的目的这是一个糟糕的设计选择?
医生

1
@Peter,除了Richard Burt的答案以外,我在您的链接中找不到任何暗示不相干的非骨干区域是问题的信息... Russ White对同一问题的答案驳斥了Richard的答案。您提到的指向OSPF区域配置最佳实践的链接对我找不到的不连续区域没有任何帮助。您能否详细说明答案?
Mike Pennington

@Mike Pennnington-没有技术原因不能使用不连续的OSPF区域,但是有很多实用的区域。维护环境并进行故障排除。就像代码中的注释一样,这不是必需的,但是以后会使您的生活变得更加轻松。
彼得

1
@Peter,这就是重点,您尚未证明它不太清楚...只是因为您不喜欢它不会对世界其他地区造成问题...在这一点上,我开始听到您没有证据支持您的论点
Mike Pennington

1
您需要限制广播域的区域,如果您对区域1和区域1进行素数处理,则取决于物理间隔,因为两个区域1不能生活在同一路由器中,或者泛洪域会加倍。如果您具有区域1和区域2,则可以拥有一个同时具有区域和区域0的路由器,并将您的SPF域加倍。您只是拥有更多的灵活性而不必使用相同的数量。也许不是更多的百万吨,但仍然取决于您的特定拓扑,您可能会遇到一些问题
fredpbaker

1

好吧,通常您需要使用虚拟链接通过另一个非区域0区域与区域0对话,或者通过非零区域连接区域0的2个部分。因此虚拟链接不适用。如果区域不是0,则可以有一个非连续区域,但是如上所述,这并不是一个好主意。话虽如此,您建议的拓扑将在没有虚拟链接的情况下工作。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.