0
点赞
收藏
分享

微信扫一扫

一个简单的修改DNS配置的脚本

场景

公司主机房迁移,域控也在其中,其他机房有部分服务器DNS指向了该机房域控。
新机房部署了新的域控,如何将存量指向老机房域控的服务器DNS配置更新为新的域控呢?

脚本内容

#Script_Name: Update_DNS_Server.ps1

$new_dns_servers = "172.18.7.54","172.18.7.55"
$old_dns_lists = "172.18.7.53","172.18.7.80"
$ip = Get-NetIPConfiguration
$ifip = $ip.IPv4Address.IPAddress

#服务器多网卡防止全改
if ($ifip.Split(".")[-2] -eq "7") {

$ifindex = $ip.InterfaceIndex
$current_dns_servers = $ip.DNSServer.ServerAddresses

foreach ($i in $current_dns_servers) {
if ($i -in $old_dns_lists) {
Set-DnsClientServerAddress -InterfaceIndex $ifindex -ServerAddresses ($new_dns_servers)
}

}
}

批量执行

1.可以使用invoke-command 命令,比如

Invoke-Command -FilePath c:\scripts\Update_DNS_Server.ps1 -ComputerName Server01,Server02,Server03

机器过多的话,可以维护一个文件,写一个脚本循环执行invoke-command。

2.通过saltstack 批量执行。

salt * cmd.script salt://scripts/Update_DNS_Server.ps1 shell='powershell'
举报

相关推荐

0 条评论