我们有一个 Windows Server 2008 R2 域控制器,总是重新启动后,将其 NLA 位置设置为“网络 3”。毫无疑问,默认设置为公共,这与我的域配置文件防火墙设置不符。我必须手动禁用并重新启用网络适配器,然后它才能将自身设置回域配置文件。
我试过了KB2524478以及一大堆其他事情。现在我厌倦了尝试解决这个问题(而且时间很快就用完了),所以只想绕过它。我原本想编写禁用/启用脚本netsh
并完成它,但我想更进一步,确保 NLA 位置是实际上是“网络 3”,而不是“the-domain.example.org”(更具体地说,只是检查它不是域)。这样,我可以更频繁地安排它,而不仅仅是在启动时安排。
我只是缺少这个难题的一块 - 如何使用我可以管道传输的东西来检索位置FIND /i "the-domain.example.org"
,以便我可以按如下方式运行它:
<something> | ...
FIND /i "the-domain.example.org" || ...
NETSH interface set interface name="Local Area Connection" admin=DISABLED & ...
NETSH interface set interface name="Local Area Connection" admin=ENABLED
那么是什么<something>
?
答案1
您可以查询相应的注册表项,以查看网络配置文件的设置。您需要查看\HKLM\Software\Microsoft\Windows NT\CurrentVersion\NetworkList\Signatures
以找到相应接口的子项。这需要一点侦查工作,但最简单的方法是查找您的当前的默认网关。找到接口的 SubKey 后,记下 ProfileGUID。然后,您可以使用 ProfileGUID 找到该接口的配置文件设置..\NetworkList\Profiles
。从那里将 REG_DWORD:Category 重新设置为 2 应该会将接口的配置文件设置为域。
您需要在更改类别属性之前关闭 NLA 服务。net stop nlasvc
只需关闭 NLA 和 netprofm 即可。更改注册表后,请重新启动它:net start netprofm
。