是否可以使用 WMI 将 IP 地址绑定到 NIC?我已经能够启用静态 IP,但似乎找不到有关添加其他 IP 的任何信息。
这段代码很有帮助,在我意识到 IP 地址和子网文件是数组之后,它变得更有意义了: https://stackoverflow.com/questions/209779/how-can-you-change-network-settings-ip-address-dns-wins-host-name-with-code
基本上,当您分配 IP 和子网时,您会用逗号分隔不同的项目,因此:
newIP["IPAddress"] = new string[] { "1.1.1.1", "1.1.1.2"};
newIP["SubnetMask"] = new string[] { "255.255.255.0","255.255.255.0"};
答案1
我假设您正在使用 Win32_NetworkAdapterConfiguration 类的 EnableStatic 方法来分配静态 IP?
如果是这样,MSDN 文档将 IP 地址和网关参数作为列表引用,也许您可以使用数组来分配多个地址?
抱歉,目前我手头没有可以测试的 Windows 机器。也许等我回家后再测试吧。
http://msdn.microsoft.com/en-us/library/aa390383(v=VS.85).aspx
答案2
基本上,当您分配 IP 和子网时,您会用逗号分隔不同的项目,因此:
newIP["IPAddress"] = new string[] { "1.1.1.1", "1.1.1.2"};
newIP["SubnetMask"] = new string[] { "255.255.255.0","255.255.255.0"};
答案3
$IPs = ($NIC.IPAddress)
$mask = @()
foreach($ip in $IPs) {$mask += "255.255.254.0"}
$NIC.EnableStatic($ips, $mask)
尝试这个