在某些方面,我有时仍在努力理解 VLAN。
据我所知,有两种方法可以处理 VLAN(820.1Q):
- 基于端口的VLAN
- 标记 VLAN
基于端口的VLAN如果只需要一个以太网交换机,那么就足够了。我假设在这种情况下,交换机会保留一个内部查找表来确定哪个端口与每个 VLAN 相关联。
标记 VLAN在我连接多个交换机时,需要这些,以避免每个 VLAN 之间都需要额外的电缆。这样我就可以使用允许多个 VLAN 的中继。
据我所知,所有这些都发生在交换机端,因此我认为没有必要将 NIC 与 VLAN 关联。
它只是用来提供额外的安全性吗?有人能解释一下这个问题吗?
答案1
如果您使用的是基于端口的 VLAN,端点无需知道任何信息。如果您不知道,端点必须标记自己的数据包。您从未提到有关 NIC 分配的任何信息,因此我只能猜测您的意思。
标记的工作方式取决于您的操作系统,但显然您需要以某种方式告诉它通过该连接离开您的机器的数据包应被标记为 XY。
此外,由于我们正在处理第二层,您的 NIC 会处理大部分工作,因此需要能够解释 802.1Q 标签(如果它们到达该接口)。如果它们能够解释,您很可能希望以某种方式使用该信息。
没有人会阻止您将中继运行到使用它的端点。在这种情况下,东西可能指很多不同的东西。一个简单的例子就是路由。如果您通过单个端口接收多个带标签的数据包并为这些 VLAN 实施路由,则必须发送相应带标签的数据包。另一个例子是虚拟化解决方案(忽略其中的魔法),如果您希望不同的虚拟机使用不同的 VLAN,它需要能够发送带标签的数据包。