Netzwerk-Adapter auf DHCP umstellen per PowerShell

Heutzutage sind Netzwerkkarten in einem Gerät nicht mehr wegzudenken. Per PowerShell Script lässt sich ein Netzwerk-Adapter von einer statischen IP auf DHCP umstellen.

Prüfen ob IP-Adresse statisch oder auf DHCP eingestellt ist

Möchte man auf einem Computer prüfen, ob der Netzwerk-Adapter, beziehungsweise die Netzwerk-Karte statisch oder auf DHCP eingestellt ist, so hilft ein PowerShell Script. Per Powershell lassen sich die Adapter ermitteln, und prüfen ob das Dynamic Host Configuration Protocol den Status “enabled” oder “disabled” besitzt.

$NETadapter = Get-NetAdapter | ? {$_.Status -eq "up"}
$interface = $NETadapter | Get-NetIPInterface -AddressFamily "IPv4"

if ($interface.Dhcp -eq "Enabled") {
    Write-Host "Adapter:" $interface.InterfaceAlias
    Write-Host "DHCP ist aktiviert!"
    }

if ($interface.Dhcp -eq "Disabled") {
    Write-Host "Adapter:" $interface.InterfaceAlias
    Write-Host "DHCP ist deaktiviert!"
    }
DHCP Status Netzwerk-Adapter  powershell

Nach dem Ausführen des PowerShell Scripts wird der Dynamic Host Configuration Protocol Status des Netzwerk-Adapters ausgegeben. Somit erkennt man ob die IP-Adresse statisch hinterlegt wurde, oder der Adapter auf DHCP eingestellt wurde. Bei Übernahme eines fremden Netzwerks kann diese sehr hilfreich sein. Das Resultat könnte man sich per Mail senden lassen, direkt ausdrucken oder per Log speichern.

Sollte der Netzwerk-Adapter nicht auf DHCP eingestellt sein, so lässt sich dieser per PowerShell Script aktivieren. Dieser Schritt wird allerdings im nächsten Teil dieses Beitrags erklärt.

Netzwerk-Adapter auf DHCP einstellen per PowerShell Script

In speziellen Netzwerken, welche oft von Unternehmen betrieben werden gibt es Clients, welche eine statische IP-Adresse besitzen. Möchte man diese Netzwerkadapter auf DHCP einstellen, wäre das per Hand machbar – allerdings sehr aufwändig. Mit einem PowerShell Script lässt sich das Vorhaben erledigen, allerdings werden natürlich Administrator-Rechte benötigt. Außerdem könnte das Script per GPO verteilt werden, um mehrere Clients im Netzwerk umzustellen.

Die Prüfung, ob die Netzwerkkarte bereits auf DHCP eingestellt ist, haben wir oben beschrieben. Falls die IP statisch vergeben ist, muss nun per PowerShell DHCP aktiviert werden:

$NETadapter = Get-NetAdapter | ? {$_.Status -eq "up"}
$interface = $NETadapter | Get-NetIPInterface -AddressFamily "IPv4"

if ($interface.Dhcp -eq "Enabled") {
    Write-Host "Adapter:" $interface.InterfaceAlias
    Write-Host "DHCP ist aktiviert!"
    }

if ($interface.Dhcp -eq "Disabled") {
        
    # Gateway entfernen
    if (($interface | Get-NetIPConfiguration).Ipv4DefaultGateway) {
            $interface | Remove-NetRoute -Confirm:$false
    }
    
    # DHCP aktivieren
    $interface | Set-NetIPInterface -DHCP Enabled
    
    # Alle Felder zuruecksetzen
    $interface | Set-DnsClientServerAddress -ResetServerAddresses

    # IPConfig renew
    ipconfig /renew | out-null

    Write-Host "DHCP auf $interface.InterfaceAlias aktiviert."
}

Das PowerShell Script ist in den ersten Zeilen gleich bei der Prüfung, unterscheidet sich allerdings nur, falls die IP statisch hinterlegt ist. Dann müssen alle Einstellungen im Netzwerk-Adapter geleert werden und DHCP aktiviert werden.

Johannes Huber
 

In seiner Freizeit macht Johannes nichts lieber, als für ITnator Beiträge zu schreiben. Input bekommt er hierfür von Problemen in der IT Administration von Servern, Clients und vielen weiteren IT Komponenten.

Click Here to Leave a Comment Below 0 comments