IPv6/Windows/IPv6 unter Windows
IPv6 unter Windows
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 IP-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 |
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
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
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
Unique Local Addresses (ULA) und DHCPv6
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