Massenfern Wechsel der DNS-Server in Netzwerkschnittstelle (NIC) Einstellungen in Windows

Während der Aktualisierung der Domänencontroller oder ihnen zusätzlich\Entfernung in Active Directory-Domäne, gibt es immer einen Bedarf DNS-Server im Netzwerk-Schnittstellen-Einstellungen in Windows zu ändern. Auf diesen Computern oder Servern, auf denen Sie die Netzwerkeinstellungen mit DHCP eingestellt - es gab keine Probleme. Aber auf solche, in denen Sie die Einstellungen manuell konfigurieren, müssen Sie sie auch manuell geändert werden. Es ist lang und unbequem.

Hier ist Skript in Powershell , die Ihre Aufgabe leichter machen wird und alle automatisch zu machen. Sie müssen nur eine Liste mit Servern herzustellen.

$computerlist = "server1.domain.local",
				"server2.domain.local",
				"server3.domain.local" #Beachten Sie, dass es am Ende kein Komma dieser Zeichenfolge ist
				;
$dnsservers =@("10.1.1.1","10.1.1.2") #Die Liste der neuen DNS-Server
 
foreach ($computername in $computerlist) { 
    $result =  get-wmiobject win32_pingstatus -filter "address='$computername'" 
    if ($result.statuscode -eq 0) { 
        $remoteNic = get-wmiobject -class win32_networkadapter -computer $computername | where-object {$_.netconnectionstatus -ne $null} 
        $index = $remotenic.index 
        $DNSlist = $(get-wmiobject win32_networkadapterconfiguration -computer $computername -Filter ‘IPEnabled=true’ | where-object {$_.index -eq $index}).dnsserversearchorder 
        $priDNS = $DNSlist | select-object -first 1 
        Write-host "Changing DNS IP's on $computername" -b "Yellow" -foregroundcolor "black" 
        $change = get-wmiobject win32_networkadapterconfiguration -computer $computername | where-object {$_.index -eq $index} 
        $change.SetDNSServerSearchOrder($DNSservers) | out-null 
        $changes = $(get-wmiobject win32_networkadapterconfiguration -computer $computername -Filter ‘IPEnabled=true’ | where-object {$_.index -eq $index}).dnsserversearchorder 
        Write-host "$computername's Nic1 Dns IPs $changes" 
    } 
    else { 
        Write-host "$Computername is down cannot change IP address" -b "Red" -foregroundcolor "white" 
    } 
}

Beachten Sie, dass Benutzer, unter dem Sie das Skript ausgeführt werden soll, über Administratorrechte auf diesen Remote-Server haben muss!

Tags: Windows (DE), powershell (de), skript

Drucken