最好的方法来分割stream量,VLAN或子网?

我们拥有大约200个节点的中型networking,目前正在使用可堆叠或机箱式交换机取代旧的菊花链式交换机。

目前,我们的networking是通过子网分割的:生产,pipe理,知识产权(IP)等,每个都在一个单独的子网上。 创buildVLAN而不是子网会更有益吗?

我们的总体目标是防止瓶颈,为了安全而分开stream量,并且更轻松地pipe理stream量。

VLAN和子网解决了不同的问题。 VLAN在第2层工作,从而改变广播域(例如)。 而子网在当前上下文中是第3层

一个build议是实际执行两个

例如,为不同的设备types(开发,testing,生产,用户等)提供VLAN 10 – 15,

VLAN 10,您可能有子网192.168.54.x / 24 VLAN 11,您可能有子网192.168.55.x / 24

等等

但是,这将要求您的networking中有一台路由器

这取决于你走什么路线(你比以前更了解你的networking)。 如果您认为广播域的大小会出现某种问题,请使用VLAN。 如果您认为您的networkingpipe理域(例如您的pipe理networking)的大小可能会使用比1/24更靠近/ 24的networking

你的200个节点将适合一个/ 24,但是这显然不会给你增长的空间

听起来,你已经为不同的设备types使用不同的子网。 那么,为什么不坚持呢? 如果需要的话,可以将每个子网连接到一个VLAN。 第2层分割将导致networking的行为从当前的行为变化

你将不得不调查潜在的影响

(我一整天都在路上,错过了跳上这一场……但是,到了比赛的晚些时候,我会看看我能做些什么。)

通常,您可以在以太网中创buildVLAN,并将IP子网1对1映射到它们上面。 有没有办法做到这一点,但坚持在一个严格的“普通的香草”世界,你会创build一个VLAN,想出一个IP子网在VLAN中使用,分配一些路由器在该VLAN中的IP地址,将该路由器连接到VLAN(无论是物理接口还是路由器上的虚拟子接口),将一些主机连接到VLAN,并将其分配给您定义的子网中的IP地址,并将其通信出入VLAN。

除非有充分的理由,否则不应该开始划分以太局域网。 最好的两个原因是:

  • 缓解性能问题。 以太局域网不能无限缩放。 过度的广播或帧到未知目的地的泛滥将限制其规模。 以太网LAN中的单个广播域太大可能导致这两种情况之一。 广播stream量很容易理解,但是帧stream向未知的目的地会更加模糊。 如果设备数量太多,交换机MAC表溢出,交换机将被迫将所有端口的非广播帧泛洪,如果帧的目的地不匹配MAC表中的任何条目的话。 如果在以太网LAN中具有足够大的单个广播域,并且stream量configuration文件不频繁地主持对话(即不足以使其条目超出交换机上的MAC表),那么您也可以获得过多的帧泛滥。

  • 希望限制/控制三层或三层以上主机之间的stream量。 你可以在第二层(ala Linux ebtables)做一些hackery检查stream量,但是这很难pipe理(因为规则与MAC地址绑定在一起,而改变网卡需要修改规则)会导致看起来真的很奇怪的行为例如,在第2层HTTP的透明代理是非常怪异和有趣的,但是完全不自然,可能对于故障排除来说非常不直观),并且通常在较低层次上很难做到(因为第2层工具像棒和岩石在处理第3层+关注)。 如果要控制主机之间的IP(或TCP或UDP等)stream量,而不是攻击第2层的问题,则应在子网之间划分子网并粘贴具有ACL的防火墙/路由器。

带宽耗尽问题(除非它们是广播数据包或泛洪引起的)通常不能用VLAN和子网解决。 这是由于缺乏物理连接(服务器上的NIC太less,汇聚组中的端口太less,需要移动到更快的端口速度),并且无法通过子网划分或部署VLAN来解决不会增加可用的带宽量。

如果您还没有像MRTG那样简单的事情,那么在您开始潜在地引入瓶颈之前,您的交换机上的每个端口的stream量统计信息就是您的第一个业务订单。 原始字节计数是一个好的开始,但是您应该通过目标嗅探来获取更多关于stream量configuration文件的详细信息。

一旦你知道你的局域网上的stream量如何移动,你可以开始考虑子网的性能原因。

就“安全性”而言,在继续之前,您将需要了解很多关于应用程序软件的知识以及它如何进行交stream。

几年前,我为一家Medcial客户做了一个大小合适的局域网/广域网的devise,并要求我在第三层实体(Cisco Catalyst 6509监控模块)上放置访问列表,以控制子网之间的stream量通过“工程师“,他们几乎不了解它实际上需要什么样的工作,但对”安全“非常感兴趣。 当我回过头来研究每个应用程序以确定必要的TCP / UDP端口和目标主机时,我从“工程师”那里得到了一个震惊的回答,声明不应该那么困难。 最后,我听说他们正在运行没有访问列表的第3层实体,因为他们无法使所有软件都可靠地工作。

道德:如果你真的要尝试按下数据包,并在VLAN之间进行stream级别的访问,就可以用应用软件和学习/逆向工程来做很多工作。 主机限制访问服务器通常可以通过服务器上的过滤function来完成。 限制对networking的访问可能会带来虚假的安全感,并让pipe理员陷入自满的地步,他们认为:“我不需要安全地configuration应用程序,因为可以与应用程序交谈的主机受到networking'。” 我鼓励你在开始限制主机到主机通信之前审核你的服务器configuration的安全性。

99%的时间内,一个子网应该等同于一个VLAN(即每个访问子网应该映射到一个且只有一个VLAN)。

如果您在同一个VLAN中拥有多个IP子网的主机,则会破坏VLAN的用途,因为两个(或多个)子网将位于同一个广播域中。

或者,如果将一个IP子网放入多个VLAN中,除非您的路由器启用了代理ARP,否则IP子网上的主机将无法与其他VLAN中的主机进行通信。

我大多同意大卫·帕什利 :

  1. 我用一个/ 16的一切。
    • 但是它被分割成几个VLAN,通过Linux机器上的一个软件桥连接起来。
    • 在这个桥梁上,我有几个iptables规则来过滤组之间的访问。
    • 不pipe你如何分割,使用IP范围进行分组,这使得重组和特殊情况更容易。