jim*_*gee 6 networking scripting command-line-interface windows-server-2008-r2
我们有一个 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
Run Code Online (Sandbox Code Playgroud)
那么什么是<something>
?
小智 5
您可以查询相应的注册表项以查看网络配置文件的设置。您需要查找\HKLM\Software\Microsoft\Windows NT\CurrentVersion\NetworkList\Signatures
相应接口的子项。这需要一些侦探工作,但最简单的方法是查找当前默认网关的 MAC 地址。找到接口的子键后,记下 ProfileGUID。然后,您可以使用 ProfileGUID 来查找该界面的配置文件设置..\NetworkList\Profiles
。从那里将 REG_DWORD:Category 设置回 2 应将接口的配置文件设置为域。
在更改类别属性之前,您需要关闭 NLA 服务。一个简单的操作net stop nlasvc
将停止 NLA 和 netprofm。更改注册表后,重新启动它:net start netprofm
。