广播域和子网性能

Dav*_*d W 0 networking

几周前,我在 Facebook 上与另一位网络工程师进行了一次有趣的讨论,讨论如下:

我:

我想抨击认为将 200 多台设备组成的网络放到 192.168.2.0/23 子网(不,结尾 3 不是错字)以及(相当可能)同一个人认为在没有 VGA 或控制台 [或串行] 输出的硬件上安装无头防火墙是个好主意。

他:

我不明白。如果我要为 200 多个设备创建一个网络,并且我希望它们都在同一个广播域中,则 /23 是 510 可用的票证。是不是没有网络分段让您烦恼?

我:

创建一个 10/16 会是一个更好的方法(在使它干净并且以后易于处理方面)。此外,这个特定的客户正在疯狂增长,到明年应该会拥有 500 多台设备。

他:

除非你有一个很好的理由,否则我会避免任何超过 /22 的广播域。你有什么样的交换和路由?听起来是时候使用 SVI 或棒上的路由器了。

基本上,我的烦恼是设置原始网络的人使用 192.168.2.0/23 这样做,导致 192 网络被分成 2 个独立的 IP 块(我不喜欢结尾八位字节不同的事实,但是同一个子网)。

所以这是我的问题:

设置子网掩码低于网络上设备数量实际要求的网络是否存在网络性能问题?是否有任何其他原因导致这是一个坏主意(除了创建较小子网的安全和逻辑原因 - 创建某些 VLAN,将网络的一部分与另一部分分开等......)?

顺便说一句,我浏览了关于IPv4 子网划分的规范问题的最佳答案,并了解了一些东西,但它并没有从性能的角度直接回答我的问题。不过,具体来说,我发现该答案末尾的“为什么要对网络进行子网划分的三大主要原因”部分很有帮助。

在我看来,如果我将总共 30 台设备放在一个 10/16 子网上,就不会有问题。但是,如果我将 2048 个左右的设备放在 10/16 上,中间没有任何路由器或第 3 层交换,那么显然会出现问题,因为很多设备都试图广播。

EEA*_*EAA 6

我想抨击认为将 200 多台设备组成的网络放到 192.168.2.0/23 子网是个好主意的人(不,结尾 3 不是打字错误)...

为什么这是一件坏事?我同意你的 FB 朋友:这个子网大小似乎是用例的完美大小。

...以及(很可能)同一个人认为将无头防火墙安装到没有 VGA 或控制台 [或串行] 输出的硬件上是个好主意。

我和你在一起。我运行了许多无头防火墙(嵌入式硬件上的 pfSense),但它们都有串行控制台。

创建一个 10/16 会是一个更好的方法(在使它干净并且以后易于处理方面)。此外,这个特定的客户正在疯狂增长,到明年应该会拥有 500 多台设备。

一个10.0.0.0/16?!?作为单个子网?500 台设备?当然,它会起作用,但它似乎非常浪费。您想在子网分配中给自己一些喘息的空间,但这是极端的。

基本上,我的烦恼是设置原始网络的人使用 192.168.2.0/23 这样做,导致 192 网络被分成 2 个独立的 IP 块(我不喜欢结尾八位字节不同的事实,但是同一个子网)。

所以你不喜欢/23它,因为它看起来很奇怪?似乎有些事情你可能需要克服。

在幕后,一切都是二进制的。

设置子网掩码低于网络上设备数量实际要求的网络是否存在网络性能问题?

“更低”,我想你的意思是“更大”?如果没有,请告诉我,我会修改。

简而言之,没有。假设相同数量的设备和相同的流量配置文件,a 上的性能将与 a/30上相同/8

是否有任何其他原因导致这是一个坏主意(除了创建较小子网的安全和逻辑原因 - 创建某些 VLAN,将网络的一部分与另一部分分开等......)?

首先,正如我之前提到的,如果您不需要它们,创建巨大的子网是非常浪费的。当然,RFC1918 IP 地址是免费的,但是如果您需要更改,创建大于必要的子网会限制您将来的灵活性。

作为一般规则,对于最终用户群体,我更喜欢/24网络。如果有重大的技术需求,我会增加一个/22,但绝不会比这更大。在移动到更大的子网之前,我将竭尽全力将网络分割成更小的子网(和更小的广播域)。

但是,如果我将 2048 个左右的设备放在 10/16 上,中间没有任何路由器或第 3 层交换,那么显然会出现问题,因为很多设备都试图广播。

可能是一个问题。但可能没有。这并不明显。这完全取决于您的用例的性质。

如果您不喜欢您的前任设置网络的方式,那么请考虑更改它。但不要出于审美原因这样做(“/23看起来很奇怪”)。出于合理的技术原因这样做,并确保您更改为的任何架构实际上都比您不赞成使用的架构更好

  • 2. `如果你不喜欢你的前任如何设置网络,那么考虑改变它。但不要出于审美原因这样做(“/23 看起来很奇怪”)。出于合理的技术原因这样做` - 我无法告诉你有多少次我听到人们说他们需要实施某些东西,因为他们认为他们应该这样做,或者因为有人告诉他们应该这样做但缺乏任何明确定义的业务或技术原因来这样做. 感谢您将此包含在您的答案中。 (2认同)