Chang DNS and WINS servers on multiple servers using Powershell: Difference between revisions

From roonics
Jump to navigation Jump to search
No edit summary
No edit summary
 
(12 intermediate revisions by the same user not shown)
Line 58: Line 58:


3.  Now run the script.
3.  Now run the script.




Line 63: Line 64:
[[Category:PowerShell]]
[[Category:PowerShell]]
[[Category:scripts]]
[[Category:scripts]]
‎<comments />

Latest revision as of 10:03, 20 March 2022

Sometimes you may need to change the DNS and WINS (if you still use it) on multiple servers which can be very time consuming, to do this on multiple servers with a script follow the below.

1. Export a list of the servers you wish to change the DNS and WINS servers on and save it as a txt file in the same location as the script called "computers.txt" as below:

server01
server02
server03
server04

2. Copy and paste the below script in to Notepad and save it as a ps1 file:

$servers = Get-Content computers.txt

foreach($server in $servers)

{
    Write-Host "Connect to $server..."
    $nics = Get-WmiObject Win32_NetworkAdapterConfiguration -ComputerName $server -ErrorAction Inquire | Where{$_.IPEnabled -eq "TRUE"}

    foreach($nic in $nics)

    {
        # EDIT NEW DNS SERVERS HERE
	$newDNS = "10.10.10.1","10.10.10.2"
                
        Write-Host "`tExisting DNS Servers " $nic.DNSServerSearchOrder
        Write-Host "`tExisting WINS Primary Server" $nic.WINSPrimaryServer
        Write-Host "`tExisting WINS Secondary Server" $nic.WINSSecondaryServer

        $x = $nic.SetDNSServerSearchOrder($newDNS)
        if($x.ReturnValue -eq 0)
        {
            Write-Host "`tSuccessfully Changed DNS Servers on " $server
        }
        else
        {
            Write-Host "`tFailed to Change DNS Servers on " $server
        }
        
        # EDIT NEW WINS SERVERS HERE
        $y = $nic.SetWINSServer("10.10.10.3","10.10.10.4")
        if($y.ReturnValue -eq 0)
        {
            Write-Host "`tSuccessfully Changed WINS Servers on " $server
        }
        else
        {
            Write-Host "`tFailed to Change WINS Servers on " $server
        }

    }

}

3. Now run the script. ‎<comments />