重新启动我们的其中一台服务器(Windows Server 2012 R2)后,所有专用连接都变为公用,反之亦然(此用户遇到相同的问题)。诸如ping和iSCSI之类的东西停止工作了,经过一番调查,事实证明这是原因。左键单击托盘中的网络图标将显示“现代”侧边栏,但仅显示连接列表,右键单击它们将不显示任何选项。 ,是否可以更改这些设置?我必须将其中一个连接设为公共(Internet访问),将其中两个设为私有(主干)。

评论

对于只需要从公共网络到私有网络(反之亦然)的任何人而言,这将一直贯穿Windows Server 2019riptidehosting.com/blog/…-尽管它不会解决您更深层次的问题。

#1 楼

电源外壳。这是将名为Ethernet1的网络接口的网络配置文件从现在的状态更改为“私有”的示例。我从Get-Help Set-NetConnectionProfile -Full获得此信息。

PS C:\>$Profile = Get-NetConnectionProfile -InterfaceAlias Ethernet1

PS C:\>$Profile.NetworkCategory = "Private"

PS C:\>Set-NetConnectionProfile -InputObject $Profile


文档:https://technet.microsoft.com/zh-cn/library/jj899566(v=wps.630) .aspx

评论


非常感谢!这救了我。一个小的更正(TechNet上有关Set-NetConnectionProfile的文章也有这种错字):Private应该是第二行中的字符串,即$ Profile.NetworkCategory =“ Private”是正确的。连接名称(“ Ethernet1”)也是如此。

– Groo
2014-10-23 12:56



我创建了一个脚本来为所有连接配置文件执行此操作,包括尚未激活的所有配置文件:gist.github.com/CMCDragonkai/dbd2d94840cdaf79d3f6964bbd58e92f

– CMCDragonkai
17年2月4日在10:06

感谢您提供了不会在任何未知网络上打开RDP的正确解决方案。

–弗洛里安·海格尔(Florian Heigl)
17年4月7日在19:11

techman的答案显示了如何使用更优雅的单行代码执行相同的操作:Set-NetConnectionProfile -InterfaceAlias Ethernet1 -NetworkCategory Private

–mwfearnley
18-3-28在11:57



适用于Windows Server 2016 Standard

–伊尔迪兹(YILDIZ)可以吗
19年11月25日在13:46

#2 楼

进行此更改的GUI方法:


按Winkey + R打开运行提示,然后键入gpedit.msc

导航到:Computer Configuration/Windows Settings/Security Setting /Network List Manager Policies。在右窗格中选择您的网络名称。注意:要显示当前未连接的网络,请在左窗格中右键单击“网络列表管理器策略”,然后选择“显示所有网络”。
转到“网络位置”选项卡,然后从从公共到私有。

关闭本地策略编辑器。

来源:
https://social.technet.microsoft.com/Forums/lync/zh- US / 82ccc68c-947e-435a-a237-1090f38d0dbe / windows-server-2012-r2-datacenter-network-stuck-in-public-mode

评论


如何将网络设置为域网络?

–克鲁纳尔
18-09-27在13:57

您不能手动将网络更改为域网络。将计算机加入域后,它将网络设置为域网络。

–加布里埃尔·格雷夫斯(Gabriel Graves)
18年2月2日在6:42

请注意,如果您设置“用户权限:用户可以更改位置”,则不会应用上述位置类型。将此设置为“不能”

–谢尔盖
20年7月2日,9:26

#3 楼

使用Powershell。这是将名为以太网的网络接口的网络配置文件更改为“私有”的示例。这是一个单行命令。

评论


这基本上是公认的答案,对吗?

– Groo
15年8月27日在17:05

该命令不需要变量。一行完成。这是一个改进的命令。

–techman
15年8月27日在17:13

另外,我发现此命令的原因是因为接受的答案对我不起作用。此命令直接设置连接类型,而不会发现。

–techman
15年8月27日在18:29

顺便说一句,它在Windows 7上不起作用,该命令在2012/8中引入。

–eckes
17年5月29日在11:47

使用:get-NetConnectionProfile来检查当前状态和接口名称。

–提洛
18年1月19日在19:18

#4 楼

我的家用2012R2域控制器上出现类似问题已有数月了。

我在用于域网络的GPO中关闭了MS防火墙。无法连接后,我发现主以太网连接被列为公共端口,因此防火墙处于打开状态。

为什么NIC从域更改为公共端口?在网络上的文章中,我得出以下结论:

域中唯一的DC重新启动后,初始化IP堆栈时AD服务不会立即可用。在操作系统中检测到这是一个公共网络,并相应地设置了NIC。

此计算机上此问题的永久解决方案是将“网络位置感知”服务设置为延迟启动。网络并相应地设置NIC。

评论


+1为延迟的开始建议。

– Esa Jokinen
18年1月28日在12:10

我们的永久修复方法是将NlaSvc设置为所有其他网络服务的依赖项。这样可以防止任何其他服务被莫名其妙地延迟或崩溃,并导致NlaSvc提前启动的可能性。 > sc配置nlasvcDepend = NSI / RpcSs / TcpIp / Dhcp / Eventlog / DNS / NTDS

–snomsnomsnom
20 Mar 30 '13:08



#5 楼

使用Powershell的另一种简单方法:

Set-NetConnectionProfile -NetworkCategory Private


评论


由于未指定任何特定适配器,因此这可能会将所有NIC设置为私有。

–注意
17-10-5在7:41

简短而甜美...所有网络配置文件都可以通过一个简短命令设置为“专用”。

– jharrell
19年8月8日在16:35

#6 楼

在VM上出现此问题,只需要重新启动网络位置感知服务就可以确定它已连接到域并开始使用域配置文件。

#7 楼

在我的Windows Server 2012 R2标准服务器上运行的原因是再次启用IPV6。

为了使以后的故障排除更加容易,我在左侧和右侧禁用了IPV6,然后执行了Windows防火墙不再显示已连接“域”。 br />