我有一个场景,需要在 Hyper-V 中构建大量虚拟机,我无法使用 SCVMM,必须使用脚本方法来创建这些虚拟机。我有一个 CSV,其中填写了所有必需的信息,因此我的 Create-VM 代码可以正常工作并创建虚拟机,没有任何问题。
我的问题是,我想在创建期间为虚拟机网卡分配一个静态 MAC 地址。这将帮助我根据实验室要求设置 DHCP IP 预留。创建虚拟机后,我执行以下命令:
Set-VMNetworkAdapterVlan -VMName $VMName -Access -ComputerName $VMHost -VlanId $VLANID | Get-VMNetworkAdapter | Set-VMNetworkAdapter -StaticMacAddress $Config.intMAC
此时,我已经将 NIC 添加到此 VM,理论上它应该将 MAC 地址设置为 $Config.intMAC 所保存的任何值,但事实并非如此,单选框仍然选择动态 MAC 地址,而静态值保持未选择状态且全为 0。
我该如何以编程方式分配 MAC?
答案1
尝试:
get-vm -name $vmname | Get-VMNetworkAdapter | Set-VMNetworkAdapter -StaticMacAddress "00112233445566"
请记住,如果您使用变量,则 mac 地址是一个字符串。