积极答复者
windows 2012 虚拟化hyperv 上pvlan功能实现的问题

问题
-
内网核心上设有vlan9,10
根据What's New in Hyper-V Virtual Switch设置完PVLAN功能,在服务器内部可以实现PVLAN的功能。
但发现无法和外部核心交换机上VLAN 10的服务器之间的访问,请问问题出在哪里?
虚拟机 PVLAN功能需要外部交换机的PVLAN功能支持吗?还是在hyperv 里面可以直接使用powershell命令设置剥离secondary出去直接使用primaryvlanid ?
命令输入如下,上联口为trunk
Set-VMNetworkAdapterVlan –VMName VM1 –Isolated –PrimaryVlanId 10 –SecondaryVlanId 20
Set-VMNetworkAdapterVlan –VMName VM1 –Isolated –PrimaryVlanId 10 –SecondaryVlanId 30
谢谢
答案
-
您好!
根据我的研究,PVLAN只能在本交换机上建立,不允许通过TRUNK端口延伸到其他交换机上。pvlan私有用户可以向外传数据但是当出去的时候是通过主vlan出去的,所以对外界来说不知道主vlan下还有私有vlan.而对内部来说是划分了各个vlan,主要用在上层设备所支持vlan数量有限的情况下。
希望我的回答对您有所帮助,如果有什么不清楚的地方,请您告诉我。
微软一站式示例脚本库: http://blogs.technet.com/b/onescript
- 已编辑 Tom Zhang – MSFTModerator 2013年2月7日 7:14
- 已标记为答案 Tom Zhang – MSFTModerator 2013年2月7日 7:14
全部回复
-
您好!
根据我的研究,PVLAN只能在本交换机上建立,不允许通过TRUNK端口延伸到其他交换机上。pvlan私有用户可以向外传数据但是当出去的时候是通过主vlan出去的,所以对外界来说不知道主vlan下还有私有vlan.而对内部来说是划分了各个vlan,主要用在上层设备所支持vlan数量有限的情况下。
希望我的回答对您有所帮助,如果有什么不清楚的地方,请您告诉我。
微软一站式示例脚本库: http://blogs.technet.com/b/onescript
- 已编辑 Tom Zhang – MSFTModerator 2013年2月7日 7:14
- 已标记为答案 Tom Zhang – MSFTModerator 2013年2月7日 7:14
-
您好
谢谢您的回复
根据您的研究,结论并不和我的相同,问题可能出在其它点上。
我这边使用的是h3c的交换机,和服务器连接使用的是trunk接口,允许所有vlan通过。
服务器里面hyperv交换机上联接口根据默认配置未做更改。
然后在命令行使用以下命令为两台虚拟机vm1和vm2配置了pvlan,另外一台虚拟机vm3使用access 接口属于vlan10。命令如下:
Set-VMNetworkAdapterVlan –VMName VM1 –Isolated –PrimaryVlanId 10 –SecondaryVlanId 20
Set-VMNetworkAdapterVlan –VMName VM2 –Isolated –PrimaryVlanId 10 –SecondaryVlanId 30
vm1和vm2虚拟机的ip地址为192.168.10.21和192.168.10.22,网关为192.168.10.254(在h3c三层交换机上,h3c上配置有vlan10,vlan地址为192.168.10.254)。vm3地址为192.168.10.23
最后我使用ping命令测试网关(ping 192.168.10.254)发现vm1和vm2无法ping 通。而vm3可以ping通,因此我怀疑我的配置有问题。
请问我的配置有问题吗?是不是遗漏了配置。
- 已建议为答案 GlaveTiger 2013年2月16日 14:26
-
我也碰到同样的问题,不过琢磨了好久,这个问题顺利解决了,具体参考以下步骤:
1、在装了hyper-v role的2012 server上,通过lbfoadmin.exe命令,配置NIC Teaming。一个team包含几块物理网卡,可以根据自己的实际需要设置,当然一块网卡也成。
2、配完team以后,然后在team上根据primary vlan设置子接口,有几个primary vlan就新建几个对应vlan的子接口。
3、对于只有一个primary vlan的情况,网卡外接的物理交换机接口设置为access模式和对应的vlan;对于有多个primary vlan的情况,物理交换机接口设置为trunk模式,并允许所有这些primary vlan的报文通过。
4、通过hyper-v 管理器或powershell, 为每个primary vlan都新建一个v-switch。
5、给虚拟机添加合适的网卡,并挂到primary vlan对应的v-switch上。
6、同powershel命令,给每个虚拟机配置pvlan:比如
Set-VMNetworkAdapterVlan –VMName VM1 -Isolated –PrimaryVlanId 10 –SecondaryVlanId 20
Set-VMNetworkAdapterVlan –VMName VM2 -community –PrimaryVlanId 10 –SecondaryVlanId 30
Set-VMNetworkAdapterVlan –VMName VM3 -promiscuous –PrimaryVlanId 10 –SecondaryVlanIdlist 20-307、通过以上按序ke作了!
- 已建议为答案 GlaveTiger 2013年2月16日 14:45
-
非常感谢GlaveTiger提供的解决方法,这是可能是种曲线方法。
想请问Tom Zhang – MSFT<abbr class="affil">Microsoft Contingent Staff, Moderator</abbr> 先生,在windows2012 hyperv的重点宣传的PVLAN功能,难道只能通过这个方法实现吗。
“pvlan私有用户可以向外传数据但是当出去的时候是通过主vlan出去的”--这个论断如果按下面两篇文档的配置命令是无法实现的,出去的不是主vlanhttp://technet.microsoft.com/en-us/library/hh848475.aspx
http://technet.microsoft.com/zh-cn/library/jj679878.aspx
- 已编辑 intport 2013年2月18日 7:05