我在使用英特尔网卡的 Hyper-V 主机上运行 VLAN 时遇到了严重问题。
硬件:
路由器/交换机(Linux 软件桥),即 Mikrotik 1100 AH,路由器操作系统 5.1
带有 4 端口英特尔 NIX 的 Hyper-V 服务器
在网卡上,VMLB 组中有 1-4 个活动端口(当降至一个进行测试时),使用 VMQ(但也测试过不使用)。此组仅连接到 Hyper-V 网络(即无管理访问权限)。
迄今为止:
网络用于传输各种流量,没有进行隔离。这是“设置”阶段的事情。我们现在需要将流量移到不同的 VLAN 中,以隔离虚拟机组。
没有 VLAN,网络也能正常工作。根据http://www.intel.com/support/network/sb/CS-030993.htmVMQ 激活应自动激活虚拟交换机上的 VLAN 支持。我是否遗漏了什么?
网络设置为:连接类型:外部。允许管理操作系统已关闭。
再次强调,整个系统即使没有 VLAN 也能正常运行。
我现在使用一台虚拟机(辅助 DNS、外部网卡),并在合成网络适配器中打开“启用虚拟 LAN 识别”并在那里添加 VLAN id(998)。
我将 VLAN NIC 添加到交换机上的桥接组,用标签 998 标识,并将 IP 地址添加到该组。
最后,我关闭了与 hyper-v 服务器 sans 1 的所有 NIC 连接(这样我就能确切知道将使用哪个端口)
我查看了以太网接口(数据包日志)。我看到一些 VLAN 998 流量从 mikrotik 路由器上的以太网端口通过。即以太网 800(ip)和 806(arp)。我认为 VLAN 在路由器上正常工作。
线索来了:虚拟机上似乎没有流量。数据似乎只是被丢弃了。也就是说,arp -a 显示了另一端的 mac 地址,因此某些东西似乎通过了。
有人知道吗?当我再次删除 VLAN 时,一切“都正常”。
答案1
即使 VMQ 自动启用,您仍然需要在 Intel 网卡上启用 VLAN 中继。
在我们的 Hyper-V 设置中,它们默认访问类型,并且额外的 VLAN 标记流量会被丢弃。设置为中继端口和中继到交换机的团队可以接受 VLAN 流量,并且它会使用上面的设置路由到虚拟机。