最近,我遇到一个粉丝朋友,他问我关于二等兵VLAN的事情。老阳心想,不过他还没在微信官方账号学过科普。今晚我会谈到它。
例如,5000台主机连接到运营商的交换机,运营商将这些主机放在同一个VLAN中。这里有一个非常大的安全风险:
如果有任何主机伪装成网关,其他主机的出站流量就会被这个假网关劫持。
通过将每台主机置于唯一的VLAN中,运营商可以防止ARP欺骗。但是没有那么多VLANs。毕竟最大VLAN只有4096。
其实只要用户主机能够通过ARP广播发现网关的MAC地址,然后和网关进行通信,就可以和整个互联网进行通信,因为网关是连接互联网的。
主机如何才能只通过ARP广播发现网关的MAC地址,从而防止ARP欺骗攻击,最大限度地减少VLAN的使用次数?
这个解决方案的名字是“私人VLAN”。
至于VLAN的这一部分,我也很喜欢每天5分钟的基本VLAN原则。我想详细了解这部分的内容。事实上,在思科CCNA或华为HCIA的课程中有非常详细和生动的解释。
感兴趣的朋友可以详细了解一下。
01什么是私人VLAN?
专用VLAN,也称为专用VLAN,是一种计算机网络技术,它包含受限制的交换机端口,因此它们只能与给定的“上行链路”进行通信。
受限端口称为“专用端口”,每个专用VLAN通常包含许多专用端口和一个上行链路。上行链路通常是连接到路由器、防火墙、服务器、提供商网络或类似中央资源的端口。
日常工作中,一个办公室的同事电脑之间不互通,或者办公室的电脑无法与外部服务器交互。一般来说,所有的流量都会通过内网外的网关,由网关来处理。
以下示例显示了通过网关服务器进行通信的几种场景,网关服务器托管我们打算使用的服务:
这些数字都表明,流量通过上行链路连接而不是直接到达目标主机,这表明与同一子网中的主机直接通信的能力通常不是必需的,而是一种负担。
02广播域
第2层交换机允许连接到其端口的设备在数据链路层直接相互通信,即不需要路由器或防火墙等中间设备。
因此,同一个VLAN上的主机共享同一个广播域。
这也意味着他们的流量通常不会被分析,也不会在设备受到威胁时被阻止。在这种情况下,受感染的主机可以随意感染或攻击同一网段上的其他机器。
有许多技术可以防止或减轻这种行为,如NAC、在线检测。
03网络分段
在一个组织内部,一个公司的不同部门通常是分开的,这样一个部门的主机就可以和另一个部门的主机分开。
这种分离有许多原因:
只要查看主机的IP子网,就可以很容易地确定主机属于哪个组。
当主机离开其子网到达其网络外的另一台设备时,它需要经过一个中间节点,如路由器或防火墙,这有利于引入流量限制规则。
虽然这种分离适用于网络的不同部门,但是如果您想要阻止同一VLAN中主机之间的流量,该怎么办呢?
从前面的例子可以看出,通常不需要这些主机互相访问,宁愿避免这种情况。
由于共享广播域的特性,主机可以不通过中间设备直接通信,因此解决方案是指示底层交换机通过激活专用VLAN配置来修改和限制特定VLAN中的流量。
04二等兵VLAN
在正常情况下,交换机允许流量从一个端口流向同一VLAN中的任何其他端口,如下例所示:
现在,如果我们将VLAN配置为专用,我们可以看到流量将不再从一个端口流向其他端口:
当然这种情况用处不大。我们仍然需要一个端口来接收我们的流量。
这通常是本地网关连接的端口,它被命名为混杂端口:
尽管混杂端口可以接收来自私有VLAN中所有其它端口的流量,但这些端口将无法相互发送流量:
如前所述,同一个隔离端口将继续向混杂端口发送和接收流量:
为了更好地理解私有VLAN背后的操作,您应该理解所涉及的技术术语。
隔离端口
只有来自这些端口的流量才允许流向混杂端口,任何流量都不能从一个隔离端口流向另一个端口,从而阻止了在同一VLAN中从一台主机到另一台主机的任何通信尝试。在我们的图表中,我们用黄色标记表示这些端口。
混合端口
这是唯一可以向隔离端口发送流量的端口。由于隔离端口无法相互发送流量,因此它们只能接收来自该端口的流量。在我们的图中,我们用红色标记表示这个端口。
公共端口
加入公共vlan的端口称为公共端口。在我们的图表中,我们使用蓝色标记来表示这些端口。
示例1,隔离端口:
在下图中,我们可以看到连接到传统VLAN的主机。
流量可以自由地从一台主机移动到另一台主机,然后到达网关,这样它就可以到达外部子网。
一旦我们将VLAN配置为私有,主机之间的流量就会被拦截。
为了提供到VLAN的外部连接,我们将一个端口配置为混杂端口,并连接到本地网关:
因此,主机根本无法相互访问,但它们只能访问其VLAN之外的服务。
示例2:
现在假设VLAN有一组主机仍然需要相互通信。这可能是两台共享本地文件夹的主机,由于某种原因,它们无法移动到中央服务器。
尽管您仍想保护这些主机免受VLAN中其它设备的攻击,但您仍需要允许它们直接相互访问,并访问混杂端口以离开子网。
通过将连接到这两个特定主机的端口配置为公共端口,流量将在这两个端口和混杂端口之间流动,不会有流量进出隔离端口。
从交换机的角度来看,有必要区分来自混杂端口的流量和来自隔离端口的流量。
这是通过定义两个不同的VLANs实现的。一个主VLAN将识别来自混杂端口的流量,而辅助VLAN将代表来自隔离端口的流量。
随着安全性成为每个公司越来越重要的因素,私有VLAN提供了一种快速简单的解决方案来增强主机之间的隔离。
这种方法可以应用于访客网络,以及大多数访问网络,甚至是配备有物理服务器的小型数据中心。
通过在同一个交换机中添加多个主从VLAN,甚至通过将专用VLAN的概念扩展到其他设备以获得分布式概念,可以进一步丰富这一概念。
如今,私有VLAN的应用也出现在采用宏分段等技术的VXLAN网络中,从而支持零信任等复杂的安全选项。
整理:老阳做了8年的高级网络工程师,更多的是网络工作者的升级干货。请关注微信官方账号:网络工程师俱乐部。