実運用環境では、仮想マシンに複数NICを割り当てた環境を構築することがよくあります。
GUIのHyper-Vマネージャーだと気にならないのですが、PowerShellで複数NICを割り当てたVMの仮想SW割り当てを変更しようとすると... 全部仮想NICの接続先が指定した仮想SWになってしまいます。
元の設定

| PS C:\> Connect-VMNetworkAdapter -VMName "Test-VM" -SwitchName "Test" | 
全部 Test になってしまった orz

これは、NICの識別子である名前が、Hyper-Vマネージャーで作成すると「ネットワーク アダプター」と同じ名前になってしまうからです。
同じ名前なので識別ができない

この状況を回避するには、NICの作成時に名前を指定するしかないのですが、GUIでは名前を指定することができません。
つまり、複数NICをハンドリングVMをPowerShellで管理する場合は、PowerShellでNICを作るしかないっ事になります。
それでは、Add-VMNetworkAdapterでNICを追加してみましょう。
| Add-VMNetworkAdapter -VMName "Test-VM" -SwitchName "DMZ" -Name "NIC_01" | 
「NIC_01」が追加された

デフォルトの「ネットワーク アダプター」もRename-VMNetworkAdapterで管理しやすい名前に変更しておきます。
| Rename-VMNetworkAdapter -VMName "Test-VM" -Name "ネットワーク アダプター" -NewName "NIC_02" | 

この状態にしておけば、目的の仮想NICを指定した仮想SWに接続変更ができます。
| Connect-VMNetworkAdapter -VMName "Test-VM" -Name "NIC_01" -SwitchName "Test" | 

識別できない仕様逆手にとって、"ネットワーク アダプター"をRemove-VMNetworkAdapterで削除すると、全ての仮想NICを削除することができます。
| Remove-VMNetworkAdapter -VMName "Test-VM" -Name "ネットワーク アダプター" | 
Hyper-V server 2012 R2 の目次に戻る
http://www.vwnet.jp/Windows/etc.asp#Hyper-V_server_2012_R2


Copyright © MURA All rights reserved.