I wrote another script which uses wsman to remotely change DNS ips
http://kunaludapi.blogspot.in/2013/06/change-dns-ip-address-remotely-on.html
This script require you to enable psremoting (powershell required) on remote server and servers should be running windows 2012.
enable-psremoting
-force #on remote computer
Set-Item
wsman:\localhost\client\trustedhosts * -Force #on remote computer
below is the script can be run from client machine
$Computerlist = get-content "C:\list\servers.txt"
foreach ($computername in $computerlist)
{$result = get-wmiobject win32_pingstatus -filter "address='$computername'"
if ($result.statuscode -eq 0)
{
$Session = new-pssession -computername $computername
Invoke-command {import-module netadapter} -session $session
Invoke-command { $dns=@("192.168.33.40","192.168.33.7")} -session $session
Invoke-command {get-netadapter -name "vNetwork" | Set-DnsClientServerAddress -ServerAddresses $dns } -session $session
Invoke-command {$ips = $(get-netadapter -name "vnetwork" | Get-DnsClientServerAddress| where-object {$_.AddressFamily -eq "2"}).serveraddresses } -session $session
Invoke-command {"$env:computername DNS IPs -- $ips" } -session $session
}
else
{Write-host "$Computername is down or need to enable powershell remoting" -b "Red" -foregroundcolor "white"}
}
remove-pssession *
No comments:
Post a Comment