我想使用 Powershell 将 Windows 中“未识别”网络的连接类型更改为“私有”。理想情况下,这应该适用于 Win 8 和 10。
另一种解决方案是让 Windows 识别此网络,然后我可以将位置设置为私有。这是一个仅 VirtualBox 主机与 Linux 主机的网络。
我可以使用 UI 按照以下步骤执行此操作:
- 打开组策略编辑器,例如(开始-> gpedit.msc)
- 计算机配置 -> Windows 设置 -> 安全设置 -> 网络列表管理器策略
- 当显示“未识别的网络”时,右键单击 -> 属性
- 将“位置类型”更改为私人
我已经用谷歌搜索并尝试过:
$networkListManager = [Activator]::CreateInstance([Type]::GetTypeFromCLSID([Guid]"{DCB00C01-570F-4A9B-8D69-199FDBA5723B}"))
$connections = $networkListManager.GetNetworkConnections()
$connections |foreach {
$_.GetNetwork().SetCategory(1)
}
但重启后将无法恢复。
答案1
我写脚本去年我把它放到了 GitHub 上。它确实实现了你想要的效果:
Set-NetworkProfileCategory.ps1 -Name 'Unidentified network' -private
我暂时没有测试过,不过你可以尝试一下。