Windows 8.1 Hyper-Vnetworking适配器设置为公共,不会另存为私有

我有一系列运行Hyper-V进行unit testing的Windows 8.1机器。 我们经常使用PowerShell来改变这些系统的脚本以简化我们的pipe理。 但是,我们在这些机器上启用PowerShell远程处理时遇到了麻烦。

我们在这些机器上运行以下命令来尝试使用PowerShell远程function

启用-PSRemoting -force

但是我们总是得到以下错误:

WinRM防火墙例外将无法工作,因为此机器上的一种networking连接types设置为Public。 将networking连接types更改为Domain或Private,然后重试。

networking适​​配器如下:

Name : Network 2 InterfaceAlias : vEthernet (Broadcom NetXtreme Gigabit Ethernet) InterfaceIndex : 13 NetworkCategory : Private IPv4Connectivity : Internet IPv6Connectivity : LocalNetwork Name : Unidentified network InterfaceAlias : vEthernet (Windows Phone Emulator Internal Switch) InterfaceIndex : 10 NetworkCategory : Public IPv4Connectivity : NoTraffic IPv6Connectivity : NoTraffic 

我试着运行以下脚本来将未识别的networking设置为私有的

 Set-NetConnectionProfile -name "Network 2" -NetworkCategory private Set-NetConnectionProfile -name "Unidentified Network" -NetworkCategory private 

但是,这些脚本在机器的正常运行时间内工作,但是当机器重新启动时,Unidentifiednetworking会恢复到公共状态。

为什么这个重置,以及如何让脚本更改保持?

谢谢!

您可以从NLA(networking位置感知)中排除某些nics。 在VMware工作站场景中执行此操作非常普遍,因为VMware nics总是以未识别/公共方式结束。 就是这样:

  1. 导航:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002BE10318}
  2. 你会发现像0000,0001,0002等枚举键。
  3. 将它们逐一加载并查找DriverDesc REG_SZ值数据。
  4. 在相同的registry项中find要排除的NIC的名称(DriverDesc值),创build另一个新的DWORD值,将其命名为*NdisDeviceType (区分大小写)。 双击此值,在“数值数据”字段中input1作为十进制数据

(摘自) http://www.petri.co.il/forums/showthread.php?t=45181

您可以通过组策略将所有未识别的networking设置为私有:

gpedit.msc >计算机configuration> Windows设置>安全设置>networking列表pipe理器策略>未识别的networking> Location type: Private