Чому ipv6 128bit, а не 64bit?


13

Комп'ютерні процесори перемістилися з 32 біт на 64 біт. Чому IP-адреси перейшли з 32-бітного до 128-бітного (пропускаючи 64-бітний)?

Редагувати:

Я не збирався робити пряме порівняння. Цікаво, чому IP-адреси пропустили 64-бітні.


8
Я не розумію, чому вони будуть пов'язані, крім того, що це був великий збіг жирів.
Ігнасіо Васкес-Абрамс

2
Коли IPv4 спочатку був розроблений, ми всі вважали, що він досить великий. Мало хто, якщо є, передбачив те, що сталося через 20+ років. Вивчивши урок, здавалося доречним не повторювати ту саму помилку. За допомогою IPv6 можна було б призначити кожному людині на планеті власну (32-бітну) мережу розміром IPv4 із залишеною кімнатою.
dbasnett

Усі, хто каже, що вони не пов'язані - ви впевнені в цьому? Багато програмних і апаратних частування IPv4 - адреси як беззнакових 32-бітних цілих чисел. Додавання підтримки IPv6 до вашої програми не так просто, як "s / uint32_t / uint128_t /".
Джеральд Гребінь

7
@Gerald; Так, ми впевнені. IPv4 обрав 32-бітний, оскільки це був найбільший реєстр, знайдений у будь-яких загальних процесорах на той час. Це був довільний вибір, який здавався на той час досить хорошим. Ми сьогодні розумніші, ніж підбирати довільні номери на основі регістрів процесора в наші дні. Вибрано 128 біт, оскільки він забезпечує достатню кількість IP-адрес, що ми можемо витрачати їх багато на такі речі, як механізми сумісності IPv4, зручність тощо; і переконайтеся, що нам не потрібні такі лайно, як NAT, відновлюючи кінцеву маршрутизацію до Інтернету.
Chris S

@ChrisS І все ж навіть 128 біт недостатньо для деяких механізмів сумісності IPv4. Подивіться на 6to4 та Тередо. Недолік 6to4, який вирішено з Тередо, працює через NAT44. Але тоді чому Тередо повинен був усунути одну з особливостей, яку має 6to4? За допомогою 6to4 ви можете запустити всю мережу, а з Teredo ви можете запустити лише одного хоста. Причина у вас не може бути обох - це те, що IPv6-адреса становить лише 128 біт, і для обох знадобиться 192 біта. 6-й - ще один приклад механізму переходу, який міг би скористатися ще кількома бітами в IPv6-адресі.
kasperd

Відповіді:


21

Два не пов'язані між собою. Рішень щодо структури IPV6 безліч. В статті Вікіпедії IPv6 є багато інформації .

В основному, 128-бітний адресний простір IPv6 дає нам такий масивний адресний простір, що ми навряд чи коли-небудь використовуватимемо його (2 ^ 128 адреси, або 3,4 * 10 ^ 38).

Більший адресний простір також дозволяє покращити ієрархічну модель адресації, оскільки CIDR та подібні "хаки" більше не потрібні для маршрутизації. Адресний простір дозволяє розділяти 64-бітну адресу хоста і 64-бітну мережеву адресу, а адресу хоста можна самостійно налаштувати.

Що більше місця, у нас є більше адрес, і їх легше організувати. IPv4 - це схоже на захаращену квартиру з 1 спальнею, а IPv6 - це гігантський склад, в якому ми можемо налаштувати все набагато організованіше.


1
MAC адреси також унікальні і з 48 бітами використано лише менше 5%. Використовуючи 64-бітну адресу, було б у 2^64/2^48=65536рази більше адрес, що дозволяє використовувати менше 0,00007%, якщо ми призначимо ipv6 кожному пристрою з зареєстрованим mac (малоймовірно)
NeDark

4

вони як би зробив крок 64 біт, так як в більшості моделей розгортання IPv6 вам присвоюється префікс / 64, що означає ваш «публічний» IP - адреса 64 біт фіксованою і все інше призначаються вами у вашій приватній мережі (також Цілих 64 Біт).


1
Лише провайдери видають / 64, і, як я бачив, це насправді трапляється не дуже часто. Моя особиста думка полягає в тому, що річ 64 + 64 була дурною ідеєю, і ми повинні дотримуватися чогось ближчого до CIDR.
Кріс С

2
@chris s: Ви абсолютно неправі.
bahamat

@bahamat, хочете розширити цю непідтримувану думку?
Chris S

1
@chris s: Це не думка. Загалом питання провайдера / 48. Підмережі (майже) завжди / 64 і рідше менші. RFC каже, що людям, а також організаціям слід давати / 48. Ви тільки думаєте, що 64/64 - це погана ідея, оскільки ви не розумієте, наскільки насправді є 64-бітний префікс (це 12 підмереж на см ^ 2 площі землі на поверхні землі). Ви, очевидно, трохи знаєте про IPv6, що добре, але ви привносите застарілий настрій v4 в v6. Зупинити це. Я поважаю вас за вашу репутацію, але в цьому випадку ви помиляєтесь.
Багам

1
@Chris S: Точно моя думка. Ви не розумієте, наскільки це насправді величезна кількість. Хто б'є з префіксами, ні. Глобальний адресний простір - 2000 :: / 3. За експоненціальним коефіцієнтом використання очікується, виділяючи / 48, закінчиться 2150. У тому числі спеціальний простір використання, який залишає некранутим понад 86%. І це враховуючи, що жоден ніколи не буде видалений та повторно використаний. Накидати їх навколо, як цукерки, означає, що для дітей ваших дітей буде багато.
Багамат

4

Тому що дизайнери IPv6 переплатили за попередню помилку IPv4. 32-розрядної дійсно занадто мало, але 64-бітний би був кожен бит настільки ж ефективний, як і 128-розрядний (розділений на 40 + 24 замість 64 + 64). Але зараз вже пізно змінити.


2

Із 64-бітними IP-адресами все ще буде мало. Наприклад, кожна Ethernet-карта має 48-розрядний унікальний ідентифікатор. Якщо ви дозволили карткам використовувати 48-бітні унікальні ідентифікатори в якості адреси хоста, 64-бітові залишили б лише 16-бітні для мережевої частини, що недостатньо.

Із 128-бітними IP-адресами не вистачає. І це дозволяє робити всілякі акуратні речі.


48-розрядний простір не використовується повністю як сьогодні. Чому б ми вважали дефіцитним 64-бітовий простір (що в 65536 разів перевищує 48-бітний простір), коли ми навіть не займали більше 10% 48-бітного простору?
Луїс Масуеллі

Погоджено, таке твердження вимагає певного обґрунтування.
SilverbackNet

Надання кожному пристрою унікального ідентифікатора набагато простіше, ніж створення адресного простору для маршрутизації. Можна зробити перший дуже ефективно, але останній повинен бути неефективним. Ви хочете, щоб кожен глобальний префікс мав місце для безлічі підмереж (яких має бути / 64) від Google до домашнього користувача. Таким чином, Інтернет-провайдери видають / 48. Очевидно, що кожна людина на планеті не потребує простору підмережі розміром Google, але це набагато простіше, якщо просто припустити, що перша 48 є глобальною маршрутизацією, наступна 16 - підмережа, а останні 64 - ідентифікатор хоста. Коментатори мають рацію, дефіциту було не тому, що було обрано 128-бітну, класну мережу.
Микола Піпітон

У багатьох пакетах IPv6 в Інтернеті все одно ця частина нульова. Хто хоче виставити свою MAC-адресу світові? Особливо сьогодні, коли конфіденційність стала більшою проблемою
curiousguy12
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.