我有一台 Windows 11 Pro 机器 22H2 插入一个网络端口,该端口提供未标记的网络访问,以及使用 lldp-med 宣传的电话的标记 VLAN。
我的期望是,Windows 在默认配置下,在没有被告知任何有关电话 VLAN 的信息的情况下,应该忽略电话 VLAN,但事实并非如此。
由于我不明白的原因,Windows 以太网接口可以同时看到未标记的 LAN 和标记的电话 VLAN,然后在两个网络上为自己分配一个 IPv6 SLAAC 地址。由于有两个不同的身份,因此会出现混乱。
我如何告诉 Windows 完全忽略电话 VLAN?
谁能解释为什么这不是默认行为?
更新:
Windows 在 2017 年破坏了 VLAN,从那以后一直没有修复。
将注册表项 MonitorModeEnabled 设置为 1 可以解决 Realtek 卡的问题。
不要将 Windows 客户端机器和 VLAN 放在同一网络上。
答案1
我如何告诉 Windows 完全忽略电话 VLAN?
安装 Hyper-V 并配置连接到以太网接口的 vSwitch。
或者,通过设备管理器 (devmgmt.msc) 打开以太网接口的设置,并查找“高级”选项以启用 VLAN 过滤。
谁能解释为什么这不是默认行为?
据我所知,在 Windows 驱动程序模型中,VLAN 标记通常会转换为单独的“带外”字段(即,操作系统看到的是未标记的数据包 + 单独的 VLAN ID 元数据),并且各个驱动程序的工作是过滤掉不需要的标记或未标记的数据包。有些驱动程序不这样做。