Netzwerkkonfiguration unter Windows Server

Übersicht

Dieser Artikel beschreibt, wie man Netzwerkeinstellungen unter Windows Server vollständig über PowerShell verwaltet.
Behandelt werden statische IP-Zuweisung, DNS-Konfiguration, Routing-Priorität und Besonderheiten bei Mehrfach-NIC-Systemen.


Variablenreferenz

Variable Beispielwert Beschreibung
<<INTERFACE_ALIAS>> Ethernet0 Name des Netzwerkadapters
<<IP_ADDRESS>> 192.168.10.100 Feste IPv4-Adresse
<<PREFIX_LENGTH>> 24 Präfixlänge (z. B. 24 für 255.255.255.0)
<<GATEWAY>> 192.168.10.1 Standard-Gateway
<<DNS1>> 192.168.10.10 Primärer DNS-Server
<<DNS2>> 8.8.8.8 Sekundärer DNS-Server (optional)

Schritt 1: Aktuelle Netzwerkkonfiguration prüfen

# Adapterübersicht anzeigen
Get-NetAdapter | Select-Object Name, Status, MacAddress, LinkSpeed

# IP-Konfiguration prüfen
Get-NetIPAddress | Select-Object InterfaceAlias, IPAddress, PrefixLength, DefaultGateway, PrefixOrigin
OriginType Bedeutung Hinweis
Manual Manuell gesetzte statische Adresse Über GUI oder PowerShell definiert
DHCP Automatische Zuweisung durch DHCP-Server Aktiv durch Set-NetIPInterface -Dhcp Enabled
WellKnown Systemreservierte Adresse (APIPA / Link-local) z. B. 169.254.x.x bei DHCP-Ausfall

Schritt 2: DHCP deaktivieren und statische IP zuweisen

# DHCP deaktivieren
Set-NetIPInterface -InterfaceAlias "<<INTERFACE_ALIAS>>" -Dhcp Disabled

# DHCP-Adresse entfernen
Get-NetIPAddress -InterfaceAlias "<<INTERFACE_ALIAS>>" -AddressFamily IPv4 |
  Where-Object { $_.PrefixOrigin -eq "Dhcp" } |
  Remove-NetIPAddress -Confirm:$false

# Statische IP setzen
New-NetIPAddress `
  -InterfaceAlias "<<INTERFACE_ALIAS>>" `
  -IPAddress "<<IP_ADDRESS>>" `
  -PrefixLength <<PREFIX_LENGTH>> `
  -DefaultGateway "<<GATEWAY>>"

Achtung:
Entfernen Sie keine IP-Adresse des aktiven Remotesitzungsadapters, um Verbindungsabbrüche zu vermeiden.


Schritt 3: DNS-Server konfigurieren

# DNS-Server definieren
Set-DnsClientServerAddress `
  -InterfaceAlias "<<INTERFACE_ALIAS>>" `
  -ServerAddresses ("<<DNS1>>","<<DNS2>>")

# Überprüfung
Get-DnsClientServerAddress -InterfaceAlias "<<INTERFACE_ALIAS>>"

DNS-Cache leeren und Auflösung testen:

Clear-DnsClientCache
Resolve-DnsName "www.microsoft.com"

Schritt 4: Priorität bei mehreren NICs festlegen

In Systemen mit mehreren Netzwerken muss die Routing-Priorität (InterfaceMetric) definiert werden.
Kleinere Werte haben Vorrang.

# Aktuelle Prioritäten anzeigen
Get-NetIPInterface | Sort-Object -Property InterfaceMetric |
  Select-Object InterfaceAlias, AddressFamily, InterfaceMetric

# Priorität ändern
Set-NetIPInterface -InterfaceAlias "<<INTERFACE_ALIAS>>" -InterfaceMetric 10

Empfohlene Werte:

  • Management-LAN: 10
  • Backup-LAN: 20–50
  • Cluster/iSCSI: 100 oder höher

Schritt 5: Funktionstest

# Verbindung zum Gateway prüfen
Test-Connection "<<GATEWAY>>" -Count 4

# DNS-Auflösung prüfen
Resolve-DnsName "www.microsoft.com"

Falls DNS-Einstellungen nicht greifen:
net stop dnscache && net start dnscache ausführen, um den Dienst neu zu starten.


Schritt 6: IPv6 bei Bedarf deaktivieren

# IPv6-Status prüfen
Get-NetAdapterBinding `
  -InterfaceAlias "<<INTERFACE_ALIAS>>" `
  -ComponentID "ms_tcpip6"

# IPv6 deaktivieren
Disable-NetAdapterBinding `
  -InterfaceAlias "<<INTERFACE_ALIAS>>" `
  -ComponentID "ms_tcpip6" `
  -PassThru

# Überprüfung
Get-NetAdapterBinding `
  -InterfaceAlias "<<INTERFACE_ALIAS>>" `
  -ComponentID "ms_tcpip6"

Zum erneuten Aktivieren:

Enable-NetAdapterBinding `
  -InterfaceAlias "<<INTERFACE_ALIAS>>" `
  -ComponentID "ms_tcpip6"

Schritt 7: Best Practices

  • Adapternamen fixieren:
    Rename-NetAdapter -Name "<<INTERFACE_ALIAS>>" -NewName "LAN-Primary"
    
  • Unerwünschte Routen entfernen:
    Get-NetRoute -AddressFamily IPv4
    Remove-NetRoute -DestinationPrefix "0.0.0.0/0" -InterfaceAlias "BackupNIC" -Confirm:$false
    

Adapter aktivieren/deaktivieren

# Deaktivieren
Disable-NetAdapter -Name "<<INTERFACE_ALIAS>>" -Confirm:$false
# Aktivieren
Enable-NetAdapter -Name "<<INTERFACE_ALIAS>>"

DHCP wieder aktivieren

Remove-NetIPAddress -InterfaceAlias "<<INTERFACE_ALIAS>>" -IPAddress "<<IP_ADDRESS>>" -Confirm:$false
Set-NetIPInterface -InterfaceAlias "<<INTERFACE_ALIAS>>" -Dhcp Enabled

Fazit

Mit PowerShell lassen sich Netzwerkkonfigurationen unter Windows Server präzise, reproduzierbar und skriptgesteuert verwalten.
In Umgebungen mit mehreren Adaptern ist die Kontrolle von Routing-Priorität und DNS-Definitionen entscheidend für Stabilität und Performance.
Durch konsequente Automatisierung kann die Netzwerkkonfiguration effizient verwaltet und konsistent bereitgestellt werden.