Короткая версия
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
Длинная версия
RFC6724 определила изменение в том, как следует предпочитать адреса. С этим изменением IPv6 больше не является предпочтительным адресом почти в каждом случае :(
Этот вопрос, который был задан в июне 2012 года, был “исправлен” в RFC с сентября 2012 года. В зависимости от версии Windows у вас либо была эта новая политика (Windows 8.1), либо, скорее всего, она уже была доставлена с помощью обновления (Windows 8, Windows 7, Windows Vista).
Мы здесь потому, что мы жмем использовать IPv6; мы хотим, чтобы это изменение было отменено.
Как вернуть
Если вы получаете несколько IP адресов для одного узла, ваша машина должна решить, какой адрес она будет использовать. Примером может служить ранжирование:
- Обратный цикл IPv6
- Нативный IPv6
- Уникальные локальные адреса (ULA), например, fdxx::
- Сайт-локальный, например. fec0
- 6bone
- 6to4
- IPv4compat
- IPv4
- Teredo, например, 2001
На вашей машине Windows этот рейтинг называется prefix policy.
Политика префиксов
Вы можете посмотреть политику префиксов вашего компьютера, запустив:
>netsh int ipv6 show prefixpolicies
В старые времена (изначально определенные RFC 3484 ), политика префиксов была:
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
Так что, как вы видите, она всегда будет использовать IPv6 (ура!):
- Обратная связь IPv6 в цикле
- Отрицательный IPv6, ULA, site-local, 6one
- 6to4
- IPv4-компат
- IPv4
- Teredo
Если вы прошли через усилия по развертыванию IPv6: это просто сработало.
Новая политика префиксов
В 2012 году новый порядок предпочтений был определен RFC6724 . В настоящее время политика префиксов практически гарантирует, что вы никогда не будете использовать IPv6:
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
Вы увидите, что вы никогда не сможете использовать свои уникальные локальные адреса или локальный адрес сайта; он постоянно нарушается:
- Петля IPv6
- Встроенный IPv6
- IPv4
- 6to4
- Тередо
- УЛЬСЫ
- сайт-локал 0х2 и 8. 6 кость 0х2 и 9. IPv6compat
Как это исправить?
Мы хотим исправить IPv6 так, чтобы ULA были предпочтительнее IPv4. По крайней мере, мы хотим подтолкнуть использование ULA (fc00::/7
) выше IPv4:
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
Что и делается:
>netsh interface ipv6 set prefixpolicy prefix=fc00::/7 precedence=37 label=13 store=active
Это сохранит его активным только до следующей перезагрузки. Чтобы изменение стало постоянным:
>netsh interface ipv6 set prefixpolicy fc00::/7 37 13
Если я:
- прошла через попытку сгенерировать глобальный префикс ULA для моей /48
- и выбрала идентификатор подсети для моей /64
- и установила ULA на каждую машину в предприятии
- и обновила DNS серверы для возврата IPv6 адресов ULA в дополнение к IPv4 адресам
меньше всего компьютер может сделать, это иметь обычную вежливость для использования адреса.
Бонусная болтовня
Диапазон fc00::/7
разделен на две части:
fd00::/8
- Префикс GlobalID, сгенерированный локально
fc00::/8
- ????
Никто на самом деле не решил, что fc
подойдет, и поэтому просто сидит там.
Адреса fd
определены как:
fd
[40-bit random GlobalID]
[16-bit subnet]
[64-bits for host assignment]
Так если вы сгенерировали a4d7f6dd66
как ваш cryptoghpcallly случайный 40-битный GlobalID, то это дает вам ваш /48:
fda4:d7f5:dd66::
/48
fda4:d7f5:dd66:face::
/64 (в подсети face
)
fda4:d7f5:dd66:face::825
как IP-адрес хоста
SixXS поддерживает общедоступную базу данных уникальных локальных адресных префиксов GlobalID для того, чтобы уменьшить вероятность коллизий, д. g.:
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
Но из-за замедления использования и сомнительной ценности в первую очередь, SixXS прекратила обслуживание в 2018 году.
Бонусное чтение