Kurze Version
Before September 2012 After September 2012
Precedence Prefix Precedence Prefix
---------- ------------- ---------- -------------
50 ::1/128 IPv6 loopback 50 ::1/128 IPv6 loopback
40 ::/0 Native IPv6 40 ::/0 Native IPv6
40 fc00::/7 ULAs 35 ::ffff:0:0/96 IPv4
40 fec0::/10 site-local 30 2002::/16 6to4
40 3ffe::/16 6bone 5 2001::/32 Teredo
30 2002::/16 6to4 3 fc00::/7 ULAs
20 ::/96 IPv4compat 1 fec0::/10 site-local
10 ::ffff:0:0/96 IPv4 1 3ffe::/16 6bone
5 2001::/32 Teredo 1 ::/96 IPv4compat
Lange Version
RFC6724 definierte eine Änderung, wie Adressen bevorzugt werden sollen. Mit dieser Änderung ist IPv6 in fast allen Fällen nicht mehr die bevorzugte Adresse :(
Diese Frage, die im Juni 2012 gestellt wurde, wurde von einem RFC ab September 2012 "behoben" . Abhängig von Ihrer Windows-Version hatten Sie diese neue Richtlinie entweder sofort (Windows 8.1) oder wahrscheinlich bereits über ein Update ( Windows 8, Windows 7, Windows Vista).
Wir sind hier, weil wir IPv6 verwenden möchten . Wir wollen, dass diese Änderung rückgängig gemacht wird.
Wie man es zurücklegt
Wenn Sie mehrere IP-Adressen für einen einzelnen Host erhalten, muss Ihr Computer entscheiden, welche Adresse er verwenden soll. Ein Beispiel für ein Ranking könnte sein:
- IPv6-Loopback
- Natives IPv6
- Unique-Local-Adressen (ULAs), zB fdxx ::
- Standortlokal, zB fec0
- 6knochen
- 6to4
- IPv4compat
- IPv4
- Teredo, zB 2001
Auf Ihrem Windows-Computer wird dieses Ranking als Präfixrichtlinie bezeichnet .
Präfix-Richtlinie
Sie können die Präfixrichtlinie Ihres Computers anzeigen, indem Sie Folgendes ausführen:
>netsh int ipv6 show prefixpolicies
In früheren Zeiten (ursprünglich definiert durch RFC 3484 ) lautete die Präfixrichtlinie:
Precedence Prefix
---------- -------------
50 ::1/128 IPv6 loopback
40 ::/0 Native IPv6
40 fc00::/7 ULAs
40 fec0::/10 site-local
40 3ffe::/16 6bone
30 2002::/16 6to4
20 ::/96 IPv4compat
10 ::ffff:0:0/96 IPv4
5 2001::/32 Teredo
Du siehst also, dass es so ziemlich immer IPv6 verwenden würde (yay!):
- IPv6-Loopback
- Natives IPv6, ULAs, standortlokal, 6one
- 6to4
- IPv4compat
- IPv4
- Teredo
Wenn Sie sich um die Bereitstellung von IPv6 bemüht haben: Es hat einfach funktioniert.
Neue Präfixrichtlinie
Im Jahr 2012 wurde eine neue Präferenzreihenfolge von RFC6724 definiert . Heutzutage stellt die Präfixrichtlinie so ziemlich sicher, dass Sie IPv6 niemals verwenden werden:
Precedence Prefix
---------- -------------
50 ::1/128
40 ::/0 Native IPv6
35 ::ffff:0:0/96 IPv4
30 2002::/16
5 2001::/32
3 fc00::/7 ULAs
1 fec0::/10 site-local
1 3ffe::/16
1 ::/96
Sie werden feststellen, dass Sie niemals Ihre eindeutigen lokalen Adressen oder die standortlokale Adresse verwenden können. es ist immer wieder kaputt:
- IPv6-Loopback
- Natives IPv6
- IPv4
- 6to4
- Teredo
- ULAs
- Standortlokal
- 6knochen
- IPv6-Komp
Wie man es repariert?
Wir möchten, dass IPv6 so repariert wird, dass ULAs gegenüber IPv4 bevorzugt werden. Zumindest wollen wir die Verwendung von ULAs ( fc00::/7
) über die von IPv4 hinaus forcieren :
Precedence Prefix
---------- -------------
50 ::1/128
40 ::/0 Native IPv6
37 fc00::/7 ULAs <---------- from 3 up to 37
35 ::ffff:0:0/96 IPv4
30 2002::/16
5 2001::/32
1 fec0::/10 site-local
1 3ffe::/16
1 ::/96
Welches geschieht durch:
>netsh interface ipv6 set prefixpolicy prefix=fc00::/7 precedence=37 label=13 store=active
Dadurch bleibt es nur bis zum nächsten Neustart aktiv. So machen Sie die Änderung dauerhaft:
>netsh interface ipv6 set prefixpolicy fc00::/7 37 13
Wenn ich:
- Wir haben uns bemüht, ein globales ULA-Präfix für my / 48 zu generieren
- und wählen Sie eine Subnetz-ID für mein / 64
- und stellen Sie ULAs für jeden Computer im Unternehmen bereit
- und aktualisieren Sie die DNS-Server, um IPv6-ULA-Adressen zusätzlich zu IPv4-Adressen zurückzugeben
Das Mindeste, was der Computer tun könnte, ist die gemeinsame Höflichkeit, die Adresse zu verwenden.
Bonus Chatter
Das fc00::/7
Sortiment ist in zwei Teile gegliedert:
fd00::/8
- GlobalID-Präfix wird lokal generiert
fc00::/8
- ???
Niemand hat jemals wirklich entschieden, fc
dass es gut für ihn sein würde, und sitzt einfach da.
Die fd
Adressen sind definiert als:
fd
[40-bit random GlobalID]
[16-bit subnet]
[64-bits for host assignment]
Also, wenn Sie a4d7f6dd66
als Ihre kryptografisch zufällige 40-Bit- GlobalID generiert haben, erhalten Sie Ihre / 48:
fda4:d7f5:dd66::
/ 48
fda4:d7f5:dd66:face::
/ 64 (im face
Subnetz)
fda4:d7f5:dd66:face::825
als Host-IP-Adresse
SixXS unterhielt eine öffentliche Datenbank mit GlobalID-Präfixen für eindeutige lokale Adressen, um die Wahrscheinlichkeit von Kollisionen zu verringern, z.
fdee:e004:2208::/48
: Apple Inc - Leopard OSX
fdd4:43c8:ba34::/48
: TekSavvy - Danny Murray
fdac:afbd:fea1::/48
: IBM Rational Build Forge - Chris Fuller
Aufgrund der langsameren Nutzung und des zunächst zweifelhaften Werts stellte SixXS den Service 2018 ein.
Bonus Lesung
netsh interface ipv6 show prefixpolicy
. Ich könnte morgen eine detailliertere Antwort veröffentlichen.