![使用 GPO 更改域服务器上的主 DNS 和辅助 DNS](https://linux22.com/image/790719/%E4%BD%BF%E7%94%A8%20GPO%20%E6%9B%B4%E6%94%B9%E5%9F%9F%E6%9C%8D%E5%8A%A1%E5%99%A8%E4%B8%8A%E7%9A%84%E4%B8%BB%20DNS%20%E5%92%8C%E8%BE%85%E5%8A%A9%20DNS.png)
Windows Server 2016。
域内所有服务器自动获取IP地址,DNS地址手动设置:
主 DNS 172.16.0.1
辅助 DNS 172.16.0.2
我创建了第三个 DC (172.16.0.3),并移动了 FSMO 角色。
我想将所有服务器(大约 50 台)上的主 DNS 更改为新的 DC 172.16.0.3。
我使用以下脚本创建了一个批处理文件:
@echo off
set dnsserver=172.16.0.3
set dnsserver2=172.16.0.1
for /f "tokens=1,2,3*" %%i in ('netsh interface show interface') do (
if %%i EQU Enabled (
rem echo change "%%l" : %dnsserver%
netsh interface ipv4 set dnsserver name="%%l" static %dnsserver% both
netsh interface ipv4 add dnsserver name="%%l" %dnsserver2% index=2
)
)
然后我创建了一个 GPO 并将其链接到域。
计算机配置|策略|Windows 设置|脚本|(启动\关机)|选择启动在脚本属性中,我添加了批处理文件。
在该组策略的安全过滤中,我保留了经过身份验证的用户,添加了域管理员组和一些服务器来测试它。(注意:经过身份验证的用户包括所有组和用户和计算机,因此不需要添加服务器和域管理员)。
我登录到这些服务器运行gpupdate /force
但没有成功,GP 没有应用该脚本。
我需要更改所有服务器上的 DNS IP,无需重新启动或登录。
注意:脚本是正确的,我以管理员身份手动运行它,它更改了 DNS IPS。
答案1
答案2
可以配置脚本在计算机启动时运行或立即运行。
请检查您的 GPO 是否按配置工作(在启动时)。如果是这样,并且您希望立即执行脚本,则应将其编程为计划任务,以便在“任务创建/修改时”执行