Коротка версія
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
- 6 кістка
- 6то4
- IPv4compat
- IPv4
- Тередо, наприклад, 2001р
На вашому комп'ютері Windows цей рейтинг називається політикою префіксів .
Політика префіксів
Ви можете переглянути політику префіксів вашого комп'ютера, виконавши:
>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, локальний сайт, 6он
- 6то4
- IPv4compat
- IPv4
- Тередо
Якщо ви доклали зусиль для розгортання 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
- 6то4
- Тередо
- ULAs
- сайт-локальний
- 6 кістка
- IPv6compat
Як це виправити?
Ми хочемо виправити IPv6 таким чином, щоб ULAs віддав перевагу перед IPv4. Принаймні, ми хочемо просунути використання ULAs ( 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 для повернення IPla6 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
як криптовалюту випадковий 40-розрядний глобальний ID , ви отримаєте ваш / 48:
fda4:d7f5:dd66::
/ 48
fda4:d7f5:dd66:face::
/ 64 (у face
підмережі)
fda4:d7f5:dd66:face::825
як IP-адреса хоста
SixXS підтримував публічну базу даних унікальних префіксів локальної адреси GlobalID, щоб зменшити ймовірність колізій, наприклад:
fdee:e004:2208::/48
: Apple Inc - Leopard OSX
fdd4:43c8:ba34::/48
: TekSavvy - Денні Мюррей
fdac:afbd:fea1::/48
: IBM Rational Build Forge - Кріс Фуллер
Але через уповільнення використання та сумнівну цінність, в першу чергу, SixXS припинив послугу в 2018 році.
Бонусне читання
netsh interface ipv6 show prefixpolicy
. Я можу опублікувати більш детальну відповідь завтра.