Windows 8 Hyper-V和VLAN

我试图设置Windows 8的Hyper-V,以便我有:

  • 有2个VMS连接到它的开关
  • 连接到所述交换机并被设置为中继的Vyatta盒(本地vlan 1,允许vlan 1-4000)
  • Windows 2008 R2服务器访问vlan 2002

我已经创build了所有的虚拟机,并且都连接到相同的交换机。 我使用PowerShell的以下命令将Vyatta的networking接口设置为中继模式:

 $ z =(Get-VMNetworkAdapter -VMName vyatta)[1]
 Set-VMNetworkAdapterVlan -VMNetworkAdapter $ z -Trunk -NativeVlanId 1 -AllowedVlanIdList 1-4000
 GET-VMNetworkAdapterVlan
 VMName VMNetworkAdapterName模式VlanList
 ------ -------------------- ---- --------
                              swname未标记
 windowsvmnetworking适配器访问2002年
 vyattanetworking适配器干线1,1-4000

据我了解VLAN和Hyper-V,这应该是我需要做的一切。 但是,似乎剥离标签并用本地VLAN的标签replace它。

当在Vyatta的接口(tcpdump -s0 -XX -nnpi eth0)上进行捕获时,从Windows机器到达的ARP包如下所示:

 11:26:50.908865 ARP,请求who-has 10.16.32.1告诉10.16.32.2,长度为28
         0x0000:ffff ffff ffff 0015 5d01 dc03 0806 0001 ........] .......
         0x0010:0800 0604 0001 0015 5d01 dc03 0a10 2002 ........] .......
         0x0020:0000 0000 0000 0a10 2001 ..........

注意显示0001(VLAN ID = 1)而不是07d2(VLAN ID = 2002)的0x000C-x000F。

我还注意到,如果我更改AllowedVlanIdList,使其不包含2002年,我将不再看到ARP请求。

任何人都知道我可以强制Hyper-V来保持标签,或者这是对W8 Hyper-V的限制吗?

我不确定Windows Server 2008 R2是否支持您在那里使用的networking设置,既不在Virtual Machine Manager 2008 R2中,也不在2008 R2的Hyper-Vpipe理器中,我是否可以看到如何在每个虚拟机上设置VLAN中继机器级别。 在我的设置中,按照Virtual Machine Manager 2008 R2的networkingconfiguration,我看到:

Virtual Machine Manager 2008 R2主机属性窗口,显示Networking选项卡,并选择LAN适配器并将VLAN设置为Trunk模式。

在交换机上,我将VLAN 1设置为主(无标记),其他所有标记以及将服务器的交换机端口设置为中继。 然后,我build立了我的Vyatta盒子,使其每个VLAN都有一个我想要访问的网卡,但是我从来没有能够在VLAN上设置一个中继,而虚拟机的pipe理似乎表明在2008 R2中这是不可能的,而且我不确定它是否实际执行。

我知道Set-VMNetworkAdapterVlan PowerShell cmdlet是在WMF 3.0pipe理包中添加的,因为它是在发布时Set-VMNetworkAdapterVlan严重问题,所以build议不要安装在2008 R2上。 (我相信,WMF 4.0将会很快发布并解决这些问题。)您可能会将2008年R2上用于将Vyatta VM的networking适配器设置为干线模式的cmdlet完全实现。 我从来没有见过一个虚拟机configuration在树干模式我自己。

唉,我没有与Vyatta和Wireshark的2012年安装程序来testing您的设置。

将NativeVlanId设置为0

它应该工作。