识别 VLAN 标记的 NIC 如何工作?

网络工程 局域网 以太网
2022-02-16 07:28:55

我想了解服务器或工作站上支持 VLAN 的 NIC 的用途?

当涉及到 VLAN 时,我的印象是交换机完成了大部分工作。

这是过滤流量的另一种方式吗?或者网卡是否接收流量?

2个回答

VLAN 从根本上说是一种在一个物理以太网网络上构建多个虚拟以太网网络的技术。

有时您希望将多个 VLAN 连接到主机。也许主机是路由器。也许它是一个 DHCP 服务器。也许您希望拥有多个逻辑上独立的网络,这些网络不相互路由,但少数主机需要存在于多个网络上。

不管是什么原因,有三种方法可以做到这一点。

一种是为每个 VLAN 使用单独的 NIC 和电缆。这种方法避免了主机需要任何 VLAN 支持的概念,但这意味着额外的电缆、额外的交换机端口和额外的 NIC。在某些情况下,它甚至可能不实用。

第二种方法是让操作系统实现一个通用 VLAN 层,该层处理 VLAN 封装并提供虚拟接口。这几乎可以使用任何 NIC 完成。Linux 多年来一直对此提供支持,但 Windows 最近才添加支持。

第三种方法是 NIC 供应商实现 VLAN 支持并在 NIC 驱动程序中创建多个虚拟接口,从而向操作系统提供多个虚拟 NIC。在 MS 添加本机支持之前,许多 NIC 供应商在 Windows 上都这样做了。

出于某种原因,一些 NIC 供应商似乎在他们的驱动程序中实现了 VLAN 标记,而不是创建多个虚拟接口。这使得 VLAN 标记功能几乎毫无意义(在一些网络故障排除场景之外)。

一些服务器(和一些工作站,但不太常见)设置为能够与交换机进行中继。这意味着服务器可以在同一链路上的多个 VLAN 中分配地址,并且服务器可以直接在不同的网络上服务。

在大多数情况下,即使使用支持 VLAN 的 NIC,服务器和工作站也没有为 VLAN 配置,它们会丢弃标记帧,但服务器连接到不同的 VLAN 以直接处理诸如 DHCP 之类的事情可能很有用,不需要路由的不同 VLAN 的 NTP 等。