19.04.2023

IPv6 unter Windows

Befehle
Windows als IPv6 Router
IPv6 Tunneltechnik deaktivieren/aktivieren
Unique Local Addresses (ULA) und DHCPv6 einrichten
sonstiges

 

Seitenanfang

Befehle

 

Befehl Beschreibung
netsh ? Hilfe zum Befehl
netsh int ipv6 show ? Hilfe zum Befehl
Ethernet Schnittstelle anzeigen
netsh interface ipv6 show interfaces Name und Schnittstellenindex der Netzwerkkarten ausgeben
netsh interface ipv6 show ipstats Zeigt IP-Statistiken an
Ethernet Schnittstelle konfigurieren / anzeigen
Get-NetIPInterface Ethernet -AddressFamily IPv6 | fl (PS) Eigenschaften der Schnittstelle anzeigen
Get-NetIPv6Protocol (PS) Eigenschaften der Schnittstelle anzeigen
netsh int ipv6 show int level=verbose ausführliche Infos aller Schnittstellen anzeigen
netsh int ipv6 show int ethernet v ausführliche Infos der angegebenen Schnittstellen anzeigen
IPv6 Einstellungen konfigurieren / anzeigen
ipconfig /release6 IPv6 DHCP Adresse freigeben
ipconfig /renew6 IPv6 DHCP Adresse neu zuteilen lassen
netsh interface ipv6 show addresses aktuellen IPv6-Adressen anzeigen
netsh int ipv6 show addr Kurzform aktuellen IPv6-Adressen anzeigen
netsh int ipv6 show addr ethernet v IP-Adresse der Ethernet Schnittstelle anzeigen ausführlich
netsh interface ipv6 show dnsservers DNS ServerAdressen anzeigen
netsh int ipv6 show int <IndexID oder Name des Interface> Einstellungen der angegebenen Schnittstelle anzeigen mit IndexID
Get-NetIPInterface <Name des Schnittstelle> -AddressFamily IPv6 | fl (PS) Einstellungen der angegebenen Schnittstelle anzeigen mit IndexID
Get-NetIPAddress -AddressFamily IPv6 (PS) IPv6 Adressen anzeigen
netsh int ipv6 set addr eth FD37:83EF:3822:FF54::24/64 IP-Adresse der Ethernet Schnittstelle zuweisen
netsh int ipv6 delete addr eth FD37:83EF:3822:FF54::24 IP-Adresse der Ethernet Schnittstelle löschen
netsh int ipv6 add addr "LAN-Verbindung" fd01:1:1:20::1 type=anycast Windows IPv6 AnyCast Adresse definieren, zur Verwendung z.B. als Lastverteilung, mehrere Geräte sind unter einer IPv6 erreichbar, der Server, der am nächsten dran ist wird kontaktiert.
   
Route konfigurieren / anzeigen
netsh int ipv6 show route Route anzeigen
route -6 print Route anzeigen
netsh interface ipv6 add route FD37:83EF:3822::/48 publish=yes interface = Ethernet Route neu anlegen
netsh interface ipv6 set route FD37:83EF:3822:FF54::/64 publish=yes interface = Ethernet bestehende Route ändern
netsh interface ipv6 delete route FD37:83EF:3822:FF54::/48 interface = Ethernet bestehende Route löschen
   
Neighbor Discovery
netsh interface ipv6 show neighbors Neighbor-Cache Einträge anzeigen
netsh int ipv6 set neighbors "Ethernet" "FD37:83EF:3822:FF54::254" "12-34-56-78-9a-bc" Eintrag zum Neighbor-Cache hinzufügen, der Eintrag ist bis zum nächsten Neustart gültig, mit dem Parameter store=persistent wird er fest hinterlegt
netsh int ipv6 delete neighbors "Ethernet" "FD37:83EF:3822:FF54::254" Eintrag im Neighbor-Cache löschen
   
Konfiguration testen
ping -6 <hostname oder IPv6>  
tracert -6 <hostname oder IPv6>  
pathping -6 <hostname oder IPv6>  
   
sonstiges
   
netsh interface ipv6 show destinationcache Zielcacheeinträge anzeigen
netsh interface ipv6 show prefixpolicies Präfix-Richtlinieneinträge anzeigen
netsh interface ipv6 reset IPv6 Schnittstelle Einstellungen zurücksetzen, danach wird ein Neustart nötig
netsh int ipv6 set addr eth FD37:83EF:3822:FF54::24/64 IP-Adresse der Netzwerkkarte zuweisen
   

IPv6 auf allen Schnittstellen deaktivieren

MS KB929852 Artikel gültig für Windows 7 SP1 / Windows Server 2008 R2

- durch das Hinzufügen des Wertes DisabledComponents DWORD 0xff (Decimal 255) wird IPv6 auf allen Schnittstellen deaktiviert

reg add HKLM\SYSTEM\CurrentControlSet\Services\Tcpip6\Parameters /v DisabledComponents /t REG_DWORD /d 255 /f

!!! Den Wert nicht auf HEX 0xffffffff Dezimal 4294967295 setzen, wie in einigen Hinweisen zu sehen setzen, das kann die Bootzeit verlängern !!!

Wert in Dezimal Wert in Hex Beschreibung Reihenfolge
0 0x0 (Defaulteinstellung) IPv6 voll aktiviert IPv6 vor IPv4
1 0x1 IPv6 für alle Tunnel-Interfaces deaktiviert IPv6 vor IPv4
2 0x2 6to4 deaktiviert IPv6 vor IPv4
4 0x4 ISATAP deaktiviert IPv6 vor IPv4
8 0x8 Teredo deaktiviert IPv6 vor IPv4
16 0x10 Deaktiviert IPv6 auf allen nicht Tunnel Schnittstellen (LAN und PPP) mit Ausnahme der IPv6-Loopback-Schnittstelle IPv6 vor IPv4
17 0x11 Deaktiviert alle IPv6-Schnittstellen mit Ausnahme der IPv6-Loopback-Schnittstelle IPv6 vor IPv4
32 0x20 IPv4 gegenüber IPv6 bevorzugen IPv4 vor IPv6
255 0xFF IPv6 komplett deaktiviert IPv4

- aktuell gesetzten Wert anzeigen

reg query HKLM\SYSTEM\CurrentControlSet\Services\Tcpip6\Parameters /v DisabledComponents

- Parameter löschen, IPv6 Einstellungen wird auf Windows Standard gesetzt

reg delete HKLM\SYSTEM\CurrentControlSet\Services\Tcpip6\Parameters /v DisabledComponents

- IPv6 nur auf bestimmten Schnittstellen deaktiveren

Systemsteuerung | Netzwerk- und Freigabecenter | Adaptereinstellungen ändern | Netzwerk Schnittstelle | Eigenschaften
Internetprotokoll Version 6 (TCP/IPv6): deaktiviern

- testen welches Protokoll bevorzugt wird

ping localhost
ping <PCimSubnetz>

IPv6 Parameter setzen

- IDs zufällig anordnen, IPv6-Adresse wird nicht aus der MAC-Adresse der Netzwerk Schnittstelle gebildet. (Windows Standardeinstellung)

netsh interface ipv6 set global randomizeidentifiers=enabled

- Temporäre Adresse verwenden (EUI-64 Standard) (Windows Standardeinstellung)

netsh interface ipv6 set privacy state=enabled

- aktuelle Einstellungen der Parameter anzeigen

netsh interface ipv6 show global
netsh interface ipv6 show privacy

- Maximale bevorzugte Gültigkeitsdauer, legt Zeit fest, nach welcher Zeit der Rechner eine neue temporäre Adresse erzeugt und für ausgehende Pakete auch einsetzt. (Windows Standardeinstellung)

netsh interface ipv6 set privacy maxpreferredlifetime=1d

- Maximale Gültigkeitsdauer, legt Zeit fest, in der der Rechner eingehende Verbindungen auf einer temporäre Adresse akzeptiert.

netsh interface ipv6 set privacy maxvalidlifetime=7d

Tagen (d), Stunden (h), Minuten (m)
Standard
Maximale Gültigkeitsdauer - maxvalidlifetime=7d
Maximale bevorzugte Gültigkeitsdauer - maxpreferredlifetime=1d

Das bedeutet also, nach einem Tag wird eine neue temporäre Adresse für ausgehende Verbindungen erzeugt, aber eingehende Pakete für die Verbindungen dieser temporäre Adresse werden 7 Tage angenommen.

- IDs zufällig anordnen und Temporäre Adresse verwenden deaktivieren

netsh interface ipv6 set global randomizeidentifiers=disabled
netsh interface ipv6 set privacy state=disabled

- Gültigkeit der Parameter setzen, bis zum Neustart oder permanent.
store=active - Einstellung bis zum nächsten Neustart gültig
store=persistent (Windows Standard) - Einstellung für immer gültig

netsh interface ipv6 set privacy state=disabled store=active

- Powershell ab Win8 - Temporäre Adresse verwenden aktivieren (Windows Standardeinstellung)

Set-NetIPv6Protocol -UseTemporaryAddresses Enabled

- Powershell ab Win8 - Eigenschaften der Schnittstelle anzeigen

Get-NetIPv6Protocol

 

Route konfigurieren / anzeigen per Powershell

- Route erstellen

New-NetRoute -DestinationPrefix FD37:83EF:3822:FF54::/64 -InterfaceAlias "Ethernet" `
-NextHop FD37:83EF:3822:FF54::254 `
-AddressFamily IPv6

- Route ändern

Set-NetRoute -DestinationPrefix FD37:83EF:3822:FF54::/64 -InterfaceAlias "Ethernet" `
-AddressFamily IPv6 `
-Publish Yes

- Route anzeigen

alle IPv6 Routen anzeigen

Get-NetRoute -AddressFamily IPv6

Einstellungen der angegebenen IPv6 Route anzeigen

Get-NetRoute -DestinationPrefix FD37:83EF:3822:FF54::/64 |fl

- Route löschen

Remove-NetRoute -DestinationPrefix FD37:83EF:3822:FF54::/64
Get-NetRoute | ?{ $_.NextHop -eq "FD37:83EF:3822:FF54::254" } | Remove-NetRoute

 

 

Seitenanfang

Windows als IPv6 Router

- den Router eine Adresse zuweisen

netsh interface ipv6 set address "LAN-Verbindung" 2001:db8::1

- Route für den Präfix einrichten

netsh interface ipv6 add route 2001:db8::/64 "LAN-Verbindung" publish=yes

- Advertisement einrichten, auf dieser Schnittstelle verteilt Windows dann im Netzwerk den LAN-Präfix.

netsh interface ipv6 set interface "LAN-Verbindung" advertise=enable

- mit dem Zusatz forwarding=enable leitet Windows dann tatsächlich IPv6 Pakete weiter.

netsh interface ipv6 set interface "LAN-Verbindung" advertise=enable forwarding=enable
Seitenanfang

IPv6 Tunneltechnik deaktivieren/aktivieren

- alle IPv6 Tunneltechniken deaktivieren (Powershell Win8/8.1/2012/2012R2)

Set-Net6to4Configuration -State disable
Set-NetTeredoConfiguration -Type disable
Set-NetIsatapConfiguration -State disable

- alle IPv6 Tunneltechniken aktivieren (Powershell Win8/8.1/2012/2012R2)

Set-Net6to4Configuration -State Default
Set-NetTeredoConfiguration -Type Enabled
Set-NetIsatapConfiguration -State Default

- alle IPv6 Tunneltechniken deaktivieren (Eingabeaufforderung Win7/2008R2)

netsh interface 6to4 set state disabled
netsh interface teredo set state disabled
netsh interface isatap set state disabled

- alle IPv6 Tunneltechniken aktivieren (Eingabeaufforderung Win7/2008R2)

netsh interface 6to4 set state default
netsh interface teredo set state client
netsh interface isatap set state default
Seitenanfang

Unique Local Addresses (ULA) und DHCPv6 einrichten

ULA IPv6 Adressen sind für private Netzwerke reserviert und werden nicht ins Internet geroutet.

FD - Präfix der ULA
37:83EF:3822 - zufälliger (einmaliger) 40-Bit-Wert
FF54 - gewählte Subnet ID

- DHCPv6 Server mit fester IPv6 einrichten, im Beispiel FD37:83EF:3822:FF54::1/64

Einstellungen im DHCP-Server unter IPv6

Präfix - FD37:83EF:3822:FF54::
Präferenz - 255
Clients suchen den DHCP Server mit dem höchsten Präferenzwerten im LAN, um die Konfigurationsparameter zu beziehen. Die Werte reichen von 0 (niedrigste Präferenz) bis 255 (höchste Präferenz)
DHCP Ausschluss
Start-IPv6 :1
End-IPv6 :49
Start-IPv6 :100
End-IPv6 :FFFF:FFFF:FFFF:FFFF

im Beispiel wird der Bereich von 1 - 256 nicht vergeben und ist Reserviert für Server u.a. Geräte die eine feste IPv6 Adresse bekommen.

- wenn kein IPv6 Gateway vorhanden ist, den Eintrag für Standardgateway leer lassen, aber den Server als "Next Hop" bekannt machen, durch das aktivieren der Weiterleitung. forwarding=ENABLED.

- Name und InterfaceIndex der Netzwerk-Schnittstelle ermitteln

(Powershell ab Windows 8/2012)

Get-NetIPAddress -AddressFamily IPv6

(Eingabeaufforderung Windows 7/2008)

netsh interface ipv6 show interface

- auf dem DHCPv6 Server folgende Befehle ausführen (Eingabeaufforderung)

netsh interface ipv6 set int ethernet forwarding=ENABLED
netsh interface ipv6 set int ethernet advertise=enable

advertise=enable - Routerankündigungen über die Schnittstelle
routerdiscovery=enable - Routersuche (Standardeinstellung von Win2012R2)
managed=disable - Verwaltete Adresskonfiguration (Standardeinstellung von Win2012R2) Stateless Mode, IPv6 Adresskonfiguration erfolgt ohne DHCPv6 Server per Autoconfiguration.
managed=enabled - Stateful Mode, wenn der Client die IPv6 von einem DHCPv6 bezieht.

(PowerShell)

Set-NetIPInterface Ethernet -AddressFamily IPv6 `
 -Advertising Enabled `
 -Forwarding Enabled `
 -RouterDiscovery Enabled `
 -ManagedAddressConfiguration Disabled

- aktuelle Konfiguration der Schnittstelle mit Namen Ethernet anzeigen

Get-NetIPInterface Ethernet -AddressFamily IPv6 | fl

- auf dem Windows DHCPv6 Server, das beziehen von DHCPv6 Adressen für die angegebene Schnittstelle des Servers deaktivieren

Set-NetIPInterface <Interface Name> -AddressFamily IPv6 -Dhcp Disabled
Set-NetIPInterface Ethernet -AddressFamily IPv6 -Dhcp Disabled

- die bestehende Route ändern und auf Veröffentlichen setzen, Route wird beim vergeben der festen IPv6 auf dem Server automatisch angelegt. Es handelt sich dabei um die Route ins Subnet.

netsh interface ipv6 set route FD37:83EF:3822:FF54::/64 publish=yes int = Ethernet

Durch das veröffentlichen der Route und dem Router Advertisements (Parameter advertise=enable) ist dem Host der Präfix des Netzwerkes bekannt. Der Host kann sich jetzt eine Adresse aus dem Subnetz zuteilen Stateless Address Autoconfiguration.

DHCPv6 Server per Powershell einrichten

- Konfiguration der Netzwerkkarte

IPv6-Adresse setzen

New-NetIPAddress -InterfaceAlias "Ethernet" -AddressFamily IPv6 `
-IPAddress FD37:83EF:3822:FF54::1 `
-PrefixLength 64

DNS Server eintragen

Set-DnsClientServerAddress -InterfaceAlias "Ethernet" `
-ServerAddresses FD37:83EF:3822:FF54::1

Route des Subnet auf Veröffentlichen setzen

Set-NetRoute -DestinationPrefix FD37:83EF:3822:FF54::/64 -InterfaceAlias "Ethernet" `
-AddressFamily IPv6 `
-Publish Yes

Routerankündigungen aktivieren

Set-NetIPInterface Ethernet -AddressFamily IPv6 `
-Advertising Enabled

- DHCP und DNS Server installieren

Import-Module ServerManager
Add-WindowsFeature DHCP, DNS, RSAT-DHCP, RSAT-DNS-Server

- Definition des DHCPv6-Bereichs

DHCP Bereich und Lifetime von 8 Stunden, max. 15 Stunden setzen

Add-DhcpServerv6Scope -Name "IPv6 Bereich" `
-Description "Default IPv6 Bereich" `
-Prefix FD37:83EF:3822:FF54:: `
-PreferredLifeTime 0.08:00:00 `
-ValidLifeTime 0.15:00:00 -State Active

Ausschlussbereich definieren

Add-DhcpServerv6ExclusionRange -Prefix FD37:83EF:3822:FF54:: `
-StartRange FD37:83EF:3822:FF54::1 `
-EndRange FD37:83EF:3822:FF54::256

- Setzen der DHCPv6-Optionen

DNS Server und Domainnamen setzen

set-DhcpServerv6OptionValue -DomainSearchList "domain.tld"
set-DhcpServerv6OptionValue -DnsServer FD37:83EF:3822:FF54::1,::1

- Konfiguration der Firewall

Set-NetFirewallRule -DisplayName "Datei- und Druckerfreigabe (Echoanforderung - ICMPv6 eingehend)" `
-Enabled True -Direction Inbound `
-Action Allow

 

Seitenanfang

sonstiges