Для чого нам потрібен IPv6?


44

Це буде якесь питання для новачків, але я не зовсім впевнений, чому нам насправді потрібен IPv6. AFAIK, історія така:

За старих часів, коли комп’ютерів не було вдосталь, 32-бітових IP-адрес вистачало всім. У ці часи маска підмережі була неявною. Тоді кількість комп’ютерів збільшилася і 32 біти стали недостатніми.

Тож маска підмережі почала ставати явною. По суті, розмір IP-адреси збільшився.

Моє запитання полягає в тому, що є недоліком продовження адресації за допомогою масок підмережі? Наприклад, коли вони також стають недостатніми, чи не можемо ми продовжувати використання "масок підмережі" тощо?

Я розумію, що він займає більше місця, ніж оригінальний IPv4 (і, можливо, не сильно відрізняється, ніж використання IPv6), але чи не явні маски підмережі є достатнім рішенням? Якщо ні, то чому вони недостатнє рішення?


13
Попередження: мабуть, термін «маска підмережі» тут використовується неправильно. Маска підмережі - це і т. 255.255.255.0Д. Про що тут говорять - це щось інше: маскування, більш відоме як NAT (Network Address Translation).
Сандер Стеффан

@SanderSteffann Насправді так. Пізніше я зрозумів, що не користуюся правильною термінологією. Будь ласка, відредагуйте питання. Я не зовсім впевнений, які терміни правильно використовувати. (Особливо частина «маски підмережі»)
Utku

Це було трохи, тому я поставив це у відповідь :)
Sander Steffann

Ніхто не згадує, наскільки простіше IPv6, ніж мережа.
Джейкоб Еванс

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

Відповіді:


80

Тут плутаються дві речі:

  • класне звернення до CIDR
  • Маскування / NAT

Перехід від класного звернення до безкласового міждоменного маршрутизації (CIDR) було вдосконаленням, яке зробило більш ефективним розподіл адрес для Інтернет-провайдерів та організацій, тим самим збільшивши термін служби IPv4. При класному зверненні до організації можна отримати одне з таких:

  • мережа класу A (a / 8 в умовах CIDR, з мережевою маскою 255.0.0.0)
  • мережа класу B (a / 16 в умовах CIDR, з мережевою маскою 255.255.0.0)
  • мережа класу C (a / 24 в умовах CIDR, з мережевою маскою 255.255.255.0)

Усі ці класи були виділені з фіксованих діапазонів. Клас А містив усі адреси, де перша цифра була від 1 до 126, клас B - від 128 до 191, а клас C - від 192 до 223. По маршрутизації між організаціями все це було жорстко закодовано в протоколи.

У класичні дні, коли організації знадобиться, наприклад, 4000 адрес, було два варіанти: надати їм 16 блоків класу C (16 x 256 = 4096 адреси) або дати їм один блок класу B (65536 адреси). Через те, що розміри жорстко закодовані, всі 16 блоків класу С повинні бути маршрутизовані окремо. Так багато людей отримали блок класу B, який містить набагато більше адрес, ніж їм насправді потрібно. Багато великих організацій отримають блок класу А (16 777 216 адрес) навіть тоді, коли знадобиться лише кілька сотень тисяч. Це витрачало багато адрес.

CIDR усунув ці обмеження. Класи A, B і C більше не існують (з моменту ± 1993 р.), А маршрутизація між організаціями може відбуватися на будь-якій довжині префікса (хоча щось менше, ніж a / 24, зазвичай не прийнято, щоб запобігти збільшенню розміру таблиць маршрутизації, що містить невеликі блоки ). Тому з тих пір можна було маршрутизувати блоки різного розміру та виділяти їх з будь-якої з попередньо-класів-частин ABC адресного простору. Організація, яка потребує 4000 адрес, може отримати / 20, що становить 4096 адрес.

Підмережа означає поділ виділеного блоку адреси на менші блоки. Потім можна налаштувати менші блоки у фізичних мережах тощо. Це не магічно створює більше адрес. Це означає лише, що ви розподілите розподіл відповідно до того, як ви хочете його використовувати.

Що створило більше адрес - це маскування, більш відоме як NAT (Network Address Translation). З NAT один пристрій з єдиною загальнодоступною адресою забезпечує підключення для всієї мережі з приватними (внутрішніми) адресами за нею. Кожен пристрій у локальній мережі вважає, що він підключений до Інтернету, навіть коли він насправді не є. NAT-маршрутизатор буде дивитися на вихідний трафік і заміняти приватну адресу локального пристрою на власну загальнодоступну адресу, видаючи себе за джерело пакету (саме тому він був також відомий як маскування). Він запам'ятовує, які переклади він зробив так, що для будь-яких відповідей, що повертаються, він може повернути початкову приватну адресу місцевого пристрою. Це, як правило, вважається хаком, але воно спрацювало, і це дозволило багатьом пристроям надсилати трафік в Інтернет, використовуючи менше публічних адрес.

Можливо мати кілька пристроїв NAT один за одним. Це робиться, наприклад, через Інтернет-провайдерів, у яких недостатньо публічних IPv4-адрес. Провайдер має кілька величезних NAT-маршрутизаторів, які мають кілька публічних IPv4-адрес. Потім клієнти підключаються за допомогою спеціального діапазону IPv4-адрес ( 100.64.0.0/10хоча іноді вони також використовують звичайні приватні адреси) як своєї зовнішньої адреси. Потім клієнти знову мають маршрутизатор NAT, який використовує ту єдину адресу, яку вони отримують на зовнішній стороні, і виконує NAT для підключення цілої внутрішньої мережі, яка використовує звичайні приватні адреси.

Існує кілька недоліків наявності NAT маршрутизаторів:

  • вхідні з'єднання: пристрої, які стоять за маршрутизатором NAT, можуть здійснювати вихідні з'єднання лише тому, що у них немає власної "реальної" адреси, щоб приймати вхідні з'єднання на
  • переадресація портів: зазвичай це створює меншу проблему шляхом переадресації портів, де NAT маршрутизований виділяє деякі внутрішні пристрої UDP та / або TCP-порти на своїй загальнодоступній адресі. Потім маршрутизатор NAT може пересилати вхідний трафік з цих портів на цей внутрішній пристрій. Для цього користувачеві потрібно налаштувати ці переадресації на NAT-маршрутизаторі
  • класу носія NAT: там, де провайдер виконує NAT. Ви не зможете налаштувати переадресацію портів, тому прийняття будь-яких вхідних з'єднань стає (бітовий торрент, неможливість наявності власного VPN / веб / пошти / тощо)
  • поділ долі: зовнішній світ бачить лише один пристрій: той маршрутизатор NAT. Тому всі пристрої, які стоять за маршрутизатором NAT, поділяють його долю. Якщо один пристрій за маршрутизатором NAT погано поводиться, це адреса NAT-маршрутизатора, яка потрапляє у чорний список, тим самим блокуючи і всі інші внутрішні пристрої
  • надмірність: маршрутизатор NAT повинен пам’ятати, які внутрішні пристрої спілкуються через нього, щоб він міг надсилати відповіді на потрібний пристрій. Тому весь трафік набору користувачів повинен проходити через єдиний NAT-роутер. Звичайні маршрутизатори не повинні нічого пам’ятати, і тому легко будувати зайві маршрути. З NAT це не так.
  • єдина точка відмови: коли NAT-роутер виходить з ладу, він забуває всі існуючі комунікації, тому всі існуючі через нього з'єднання будуть порушені
  • великі центральні маршрутизатори NAT дорогі

Як бачите, і CIDR, і NAT продовжили термін експлуатації IPv4 на багато-багато років. Але CIDR не може створити більше адрес, лише ефективніше розподілити існуючі. І NAT працює, але лише для виїзного трафіку та з більшими ризиками для продуктивності та стабільності та меншою функціональністю порівняно з публічними адресами.

Ось чому був придуманий IPv6: безліч адрес і загальнодоступних адрес для кожного пристрою. Таким чином, ваш пристрій (або брандмауер перед ним) може сам вирішити, які вхідні з'єднання він хоче прийняти. Якщо ви хочете запустити свій власний поштовий сервер, який можливий, і якщо ви не хочете, щоб хтось із зовнішньої сторони підключався до вас: це теж можливо :) IPv6 дає вам ті параметри, які ви мали раніше, ніж був введений NAT, і ви можете їх використовувати, якщо хочете.


1
Вау дуже через відповідь. Дякую. Щодо NAT-класу перевізника: Ви заявили, що тортовий біт закінчиться. Але я не міг повністю зрозуміти, чому це станеться. Точніше, я вважаю, що це мало б закінчитися навіть сьогодні, якщо це так. Поясню: я думаю, що багато домашніх користувачів використовують NAT-маршрутизатор, і це змушує мене думати, що "п'явка" не може вилучитись у користувача, який використовує NAT-маршрутизатор, оскільки п'явка не знатиме адреси комп'ютера для підключення. Оскільки п'явка не зможе знайти сівалку, це означатиме кінець, якщо битовий потік навіть сьогодні. Чи можете ви мені це прояснити?
Утку

5
Перенаправлення портів може бути налаштовано на домашніх маршрутизаторах для дозволу вхідних з'єднань, або локальний клієнт BitTorrent використовує спеціальний протокол, щоб змусити NAT-маршрутизатор автоматично встановлювати переадресацію портів. NAT-маршрутизатор класу оператора не допускає таких переадресацій портів. BitTorrent як і раніше працює без вхідних з'єднань, але майже не так добре.
Сандер Стеффан

4
@Utku, відповідь glib - "це не так". тобто ви вірні, що вхідні з'єднання з багатьма NAT'd bittorrent-вузлами неможливо встановити. зважаючи на це, цей вузол може встановити з'єднання з іншими вузлами в мережі, і, оскільки дані протікають в обох напрямках через з'єднання, вони все ще можуть сприяти роботі мережі, поширюючи шматки, які має один з їхніх однолітків для інших.
Роб Старлінг

3
На BitTorrent і NAT: см superuser.com/questions/104462 / ... . Короткий зміст: вхідні з'єднання, що надходять на вихідне з'єднання; деякі клієнти використовують ретрансляційну систему, щоб дозволити вхідні з'єднання від нового користувача через з'єднання із спільним одноранговим сервером. Це менш ефективно, і ви отримаєте менші швидкості. Неможливо, якщо всі одноранки стоять за NAT без переадресації портів.
Тімбо

2
на долі Sharing, відповідний анекдот: techcrunch.com/2007/01/01/wikipedia-bans-qatar
njzk2

15

Інтернет-протокол (IP) був розроблений для забезпечення підключення до кінця.

32 біти адреси IPv4 дозволяють отримати приблизно 4,3 мільярда унікальних адрес. Тоді потрібно відняти купу адрес для таких речей, як багатоадресна передача, і багато математики показує, що ви ніколи не можете використовувати повну ємність підмережі, тому є багато марних адрес.

Приблизно вдвічі більше людей, ніж є корисних IPv4-адрес, і багато хто з них споживає кілька IP-адрес. Це навіть не стосується потреб бізнесу в IP-адресах.

Використання NAT для задоволення голоду над IP-адресою порушує парадигму з'єднання IP від ​​кінця до кінця. Виставити достатньо публічних IP-адрес стає важко. Подумайте на хвилину, що ви, як домашній користувач із лише однією загальнодоступною IP-адресою, зробили б, якщо хочете дозволити декілька пристроїв, що використовують один і той же транспортний протокол і порт, скажімо, два веб-сервери, які за умовою використовують порт TCP 80. доступ із загальнодоступного Інтернету. Ви можете переслати порт 80 TCP з вашої загальнодоступної IP-адреси на одну приватну IP-адресу, а як щодо іншого веб-сервера? Цей сценарій зажадає від вас перескочити кілька обручів, з якими типовий домашній користувач не готовий обробляти. А тепер подумайте про Інтернет речей(IoT), де у вас можуть бути сотні чи тисячі пристроїв (лампочки, термостати, термометри, системи вимірювання дощу та спринклерних датчиків, датчики сигналізації, прилади, відкривачі для гаражних дверей, розважальні системи, нашийники для домашніх тварин, і хто знає, що ще) , деякі або всі, які хочуть використовувати ті самі конкретні транспортні протоколи та порти. Тепер подумайте про те, що компанії з IP-адресою повинні забезпечити своїм клієнтам, постачальникам та партнерам зв’язок.

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

IPv6 надає достатньо загальнодоступних адрес для відновлення початкової парадигми IP. Наразі IPv6 має 1/8 адрес IPv6 у всьому блоці адрес IPv6, відведеному для глобально маршрутизованих IPv6 адрес. Якщо припустити, що в 2100 році на Землі є 17 мільярдів людей (нереально), поточний глобальний діапазон адрес IPv6 (1/8 адреси блоку адреси IPv6) забезпечує понад 2000/48 мереж для кожної з цих 17 мільярдів людей. Кожна мережа / 48 - це 65,536 / 64 підмережі з 18,446,744,073,709,551,616 адресами в підмережі.


Так NAT по суті є "патчем", правда? Патч, який порушує істотний принцип Інтернету.
Утку

7
NAT можна назвати патчем, але багато хто називав це хак, або ще гірше.
Рон Моупін

7
Ваше друге речення важливе! NAT створює асиметрію між людьми, які можуть запускати сервери, і людьми, які не можуть (легко). Це принципове порушення основних демократичних принципів Інтернету. Зважає на те, чи хтось про це піклується чи ні, це, звичайно, інше питання. Більшість людей, які сидять за NAT, байдуже. Багато постачальників контенту роблять догляд поставити стільки людей , скільки можливо за NAT с, тому що тоді вони можуть контролювати те , що (більшість) Інтернет бачить.
Йорг W Міттаг

1
@ JörgWMittag, "Більшість людей, які сидять за NAT, не хвилюються". Поки їхня блискуча нова багатокористувацька гра, додаток чи іграшка не працюватимуть так, як вони цього очікують, тоді їм, безумовно, все одно. "Багато постачальників контенту намагаються поставити якомога більше людей за NAT, тому що тоді вони можуть контролювати те, що ... Інтернет бачить". NAT не потребує NAT для контролю доступу. Це можна зробити так само легко (якщо не більше) без NAT. NAT ускладнює багато речей для постачальників вмісту / послуг та людей, яких я знаю, які працюють у таких мережах, я не знаю того, хто використовує NAT, якщо вони можуть цього уникнути.
YLearn

9

Простіше кажучи, більше немає IPv4 адреси. Всі (або майже всі) доступні IPv4 адреси були виділені. Вибух IP-пристроїв, ноутбуків, телефонів, планшетів, фотоапаратів, пристроїв безпеки тощо, використовував увесь адресний простір.


1
Це не зовсім вірно, переважна більшість простору витрачається даремно, оскільки для початку це було недостатньо підмережею. Тепер орги мають низку адрес, які вони не використовуються як загальнодоступні адреси, але їх повернення потребує значних зусиль для реструктуризації їхніх мереж.
JamesRyan

7
Так, багато місця витрачено даремно. Але факт залишається фактом, що наявний простір вичерпаний.
Рон Трунк

1
@JamesRyan Існує також весь діапазон "Клас Е", який можна (у будь-який час) відкрити для загального призначення на одноадресну передачу. Це дасть світу ще 16/8 (приблизно на 134 мільйони більше адрес). Але тоді що? Все, що він би зробив, - це відкласти "остаточне виснаження" всіх адрес. Тож незалежно від того, скільки IPv4-адрес, які повертаються або перерозподіляються, виснаження неминуче. IPv6 - це постійне рішення.
Едді

3
@Eddie, теоретично , діапазон "Клас Е" міг бути відкритий. На практиці 34 роки людей, які вважають, що діапазон "зарезервований, не використовується" означає, що кожен, хто отримує одну з цих адрес, матиме обмежений зв'язок.
Марк

1
@ Марк погодився. Моя думка полягала в тому, що є кишені простору IPv4, які ми могли б спробувати використати для продовження терміну його експлуатації, але чому турбувати, IPv6 неминучий. (Я точно не казав, що ми повинні продовжувати термін служби IPv4) .
Едді

4

Перш за все, техніка маски змінної підмережі стала недостатньою. Ось чому люди винайшли методику трансляції мережевих адрес, де можна використовувати загальнодоступний IP для маскування декількох приватних IP-адрес. Навіть за допомогою цієї методики ми майже не в змозі виділити IP. Також NAT порушує один із основоположних принципів Інтернету: принцип кінця до кінця.

Отже, основна причина використання IPv6 полягає в тому, що кожен матиме доступну кількість публічних IP-адрес, скільки їм потрібно, і вся складність використання NAT зникне.

IPv6 також надає інші функції, які я не буду вникати в деталі: обов'язковий захист на рівні IP, дозволяє автоматичну конфігурацію адреси без громадянства, не більше трансляції лише багатоадресної передачі та забезпечує більш ефективну обробку маршрутизаторами шляхом спрощення заголовка. Також у цьому віці мобільних пристроїв він має чітку підтримку мобільності у вигляді мобільного IPv6.

Що стосується вашої пропозиції використання масок підмережі / підмережі: це не здається здійсненним, оскільки його реалізація порушить усі існуючі програми та не є дуже елегантною. Якщо вам доведеться змінити речі, чому б не піти на щось нове і добре продумане.


NAT не був винайдений через відсутність адрес або відсутність підмереж змінної довжини. Він став популярним просто тому, що багато провайдерів платять більше за послуги «бізнес-класу» з виділеним ІР-простором.
Альнітак

1

Основна організація, яка розповсюджує ІС серед регіональних організацій, повністю вичерпана. АРІН - регіональна організація в США вичерпана за останні кілька місяців. Єдиний регіональний орган, у якого все ще є ліві IP-адреси, - це AfriNIC.

Є багато компаній / організацій, таких як Ford, MIT тощо, які мають повний діапазон IP класу A. Коли вони їх придбали, ніхто не думав, що ми так швидко закінчимося.

У цей час, щоб купити IP-адреси, ви або чекаєте, поки компанія вийде з бізнесу, і придбає її на сірому ринку, або ви намагаєтесь придбати невикористані IP-адреси у іншої компанії.

IP-адреси, призначені для регіону, не можна використовувати в іншому регіоні. Добре вони можуть, але це дуже не рекомендує (гео-IP).

В цей час багато компаній готуються до IPv6. Комутатор непростий, оскільки дуже дорого придбати нове обладнання, яке підтримує повний IPv6 для тих, хто має 10 тисяч тисяч серверів.


2
IP-адреси насправді не "розроблені для регіону" - вони були довільно призначені до однієї з 5 RIR (які приблизно відповідають п'яти континентам). Насправді досить поширено, що блоки ІР передаються (як правило, продаються) з однієї RIR, у якої все ще залишилося трохи (сьогодні лише Африка залишилася). GeoIP - це просто хак, а не те, що розроблено в протоколі IP.
Кевін Кін
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.