IPv6 (англ.Internet Protocol version 6) — нова версіяIP-протоколу — IP версії 6. Розробка протоколу IPv6 почалася 1992 року, а з 2003 р. його підтримку забезпечують виробники більшості телекомунікаційного устаткування (корпоративного рівня). IPv6 — новий крок у розвиткуІнтернету. Цей протокол розроблено з урахуванням вимог до Глобальної мережі, що постійно зростають.3 лютого2011 рокуIANA виділила останні п'ять блоківIP-адрес /8 (IPv4).
Найбільш суттєва різниця між IPv4 та IPv6 полягає в тому, що раніше на інтернет-адресу виділяли 4 байти (32 біти), що відповідає стандартній на сьогодні чотириблоковій адресі IP, а протокол IPv6 виділяє на адресу 16 байтів (128 бітів). Це відповідає 340 секстильйонам адрес (3,4x1038) або по 5x1028 адрес на кожну людину.
Вночі5 лютого2008 року організація ICANN, яка наглядає за використанням інтернет-протоколів, почала додавати в DNS-сервери записи, що містять адреси у форматі протоколу IPv6[1]. Це поклало початок переходу з нинішнього протоколу IPv4 на сучасніший IPv6.
У квітні 2009 у мережіUA-IX запущено процес перевірки протоколу IPv6. Серед перших компаній, що ухвалили рішення про участь в тестуванні, — «ТопНЕТ» і«Датагруп». Вони встановили IPv6 BGP-з'єднання з маршрутизаторомUA-IX і здійснили обмін маршрутною інформацією між ними. У квітні 2011 розпочалось масове впровадження IPv6 серед домашніх користувачів інтернет.
Наприкінці 1980-х стала очевидною нестача адресного простору Інтернет. На початку 1990-х, навіть після введення безкласової адресації, виявилось, що однієї економії та використання NAT'у буде замало, щоб запобігти вичерпання адресного простору, і необхідна зміна адресації. Крім того, накопичилась певна кількість пропозицій щодо усунення недоліків наявної моделі Інтернет.Наприкінці 1992 рокуIETF оголосила конкурс на створення протоколу Інтернет наступного покоління (англ.IP Next Generation — IPng).25 липня 1994 року IETF ствердила модель IPng з утворенням кількох робочих груп IPng. У 1996 було створено серіюRFC, що визначали новий протокол Інтернет. Оскільки версія 5 вже була раніше призначена експериментальному протоколу передачі мультимедійних потоків, новий протокол отримав версію 6.
Оцінки повного вичерпанняIPv4 адрес розрізнялись в 2000-х, але потім всі оцінки збігалися до 2011 року. У 2003 році директорAPNIC Пол Уілсон (англ.Paul Wilson) заявив, що, виходячи з темпів поширення мережі Інтернет того часу, вільного адресного простору вистачить на одне-два десятиріччя. У вересні 2005 рокуCisco Systems відзначила, що пула доступних адрес вистачить на 4—5 років. У вересні 2010, виходячи з данихIANA, весь пул адрес IPv4 буде розподіленореєстратурам (RIR) до середини2011 року[2], в листопаді ця дата була перенесена на березень 2011.3 лютого2011 рокуIANA виділила останні п'ять блоківIP-адрес /8 (IPv4).
8 червня2011 року відбувсяМіжнародний день IPv6 — захід з тестування готовності світової інтернет-спільноти до переходу з IPv4 на IPv6, в рамках якого компанії-учасники додали до своїх сайтів IPv6-записи на один день. Тестування пройшло вдало, накопичені дані будуть проаналізовані та враховані при наступному впровадженні протоколу і для підготовки рекомендацій.
Переведення на IPv6 почало виконуватись всерединіGoogle з 2008 року. У специфікації стандарту мобільних мережLTE вказана обов'язкова підтримка IPv6. Проблемою для впровадження IPv6 є те, що не всі операційні системи повністюпідтримують протокол IPv6.
Розширення адресного простору скасовує необхідність використанняNAT, оскільки на кожну людину припадає близько 3*108 унікальних адрес.
Принцип призначення хостуIPv6 адреси є ієрархічним. Мінімальний розмір підмережі — /64 (264). Молодша частина адреси (64 біти) використовується як унікальний ідентифікатор користувача, наступна частина визначає підмережу всередині оператора зв'язку, далі йде ідентифікатор самого оператора. Такий підхід значно спрощує маршрутизацію.
З IPv6 вилучено кілька функцій, що ускладнюють роботу маршрутизаторів:
Маршрутизатори більше не розбивають (фрагментують) пакет на частини (розбиття пакета можливо тільки на боці передавача). Відповідно, оптимальнийMTU має визначатися за допомогоюPath MTU discovery. Для покращення роботи протоколів, що потребують низького рівня втрати пакетів, мінімальнийMTU збільшено до 1280 байт. Інформацію про фрагментацію пакетів перенесено з основного заголовка в розширені;
Зниклаконтрольна сума. Оскільки канальні (Ethernet) та транспортні (TCP) протоколи також перевіряють коректність пакета, контрольна сума на рівні IP вважається зайвою. Крім того, кожен маршрутизатор зменшуєhop limit на одиницю, що призводить до потреби у перерахуванні суми в IPv4.
Незважаючи на суттєве збільшення розміру адреси IPv6, завдяки цим покращенням основний заголовок пакета збільшився лише у 2 рази: з 20 до 40 байтів.
Покращення IPv6 у порівнянні з IPv4:
В надшвидкісних мережах можлива підтримка надвеликих пакетів (джамбограм) — до 4 гігабайт;
Time to Live перейменовано вHop limit;
З'явились відмітки потоків та класи трафіку;
З'явилась багатоадресна передача;
ПротоколIPsec з рекомендованого перетворився на обов'язковий.
У момент ініціалізації мережевого інтерфейсу йому призначується локальнаIPv6-адреса, з префіксом fe80::/10, у молодшій частині адреси розміщується ідентифікатор інтерфейсу. Ідентифікатором інтерфейсу часто слугує 64-бітний розширений унікальний ідентифікаторEUI-64[en], що найчастіше формується зMAC адреси. Локальна адреса дійсна тільки в межах мережевого сегмента канального рівня, і використовується, в основному, для обміну інформаційнимиICMPv6 пакетами.
Для отримання інших адрес вузол може запросити інформацію про налаштування мережі у маршрутизаторів за допомогою ICMPv6 повідомлення «Router Solicitation». Цей запит відсилається нагрупову (multicast) адресу маршрутизаторів. У відповідь маршрутизатори відсилають ICMPv6 повідомлення «Router Advertisement», що може містити інформацію про префікс мережі, адресушлюзу, адреси рекурсивних серверівDNS[3],MTU та багато інших параметрів. Поєднуючи мережевий префікс та ідентифікатор інтерфейсу, вузол отримує нову адресу. Для захисту персональних даних ідентифікатор інтерфейсу може бути замінений на псевдовипадкове число.
Для більшого адміністративного контролю може бути використанийDHCPv6[en], що дозволяє адміністратору маршрутизатора призначати вузлам конкретні адреси.
Адреси IPv6 мають 128 бітів. Дизайн адресного простору IPv6 реалізує зовсім іншу філософію дизайну, ніж в IPv4, в якій підмережа використовувалася для підвищення ефективності використання малого адресного простору. У IPv6 адресний простір вважається досить великим у передбачуваному майбутньому, а локальна підмережа завжди використовує 64 біти для частини що приймає адрес, позначеної як ідентифікатор інтерфейсу, тоді як найважливіші 64 біти використовуються як префікс для маршрутизаторів.
Ідентифікатор унікальний лише в підмережі, до якої підключений хост. IPv6 має механізм автоматичного виявлення адреси, так що адресу автоконфігурації завжди створює унікальну передачу.
Введення поля «Відмітка потоку» в протоколі IPv6 дозволяє значно спростити процедуру маршрутизації однорідного потоку пакетів. Потік — це послідовність пакетів, що надсилаються відправником певному адресату. При цьому припускається, що всі пакети даного потоку мають бути оброблені певним чином. Характер даної обробки задається додатковими заголовками.
Припускається існування декількох потоків між відправником та отримувачем. Відмітка потоку призначається вузлом-відправником шляхом генерації псевдовипадкового 20-бітного числа. Всі пакети одного потоку мають містити однакові заголовки, що оброблюютьсямаршрутизатором.
При отриманні першого пакета з відміткою потоку маршрутизатор аналізує додаткові заголовки, виконує певні операції відповідно до цих заголовків та запам'ятовує результати обробки (адресу наступного вузла, опції заголовку переходів, переміщення адрес у заголовку маршрутизації тощо) в локальномукеші. Ключем для такого запису є комбінація адреси відправника та відмітки потоку. Наступні пакети з тією самою комбінацією адреси відправника та відмітки потоку обробляються з урахуванням інформації кешу без детального аналізу усіх полів заголовка.
Час життя запису у кеші становить не більше 6 секунд, навіть якщо пакети цього потоку продовжують надходити. Після видалення запису з кешу при отриманні наступного пакета потоку, пакет обробляється у звичайному режимі і для нього відбувається формування нового запису в кеші. Слід зауважити, що вказаний час життя потоку може бути явно заданий вузлом відправником за допомогою протоколу керування або опцій заголовку переходів, і може перевищувати 6 секунд.
Пріоритезація пакетів забезпечується маршрутизаторами на основі перших шести бітів поляTraffic Class. Перші три біти визначають клас трафіку, решта бітів визначають пріоритет видалення. Чим більше значення пріоритету, тим вищепріоритет пакета.
В залежності від задач розробники IPv6 рекомендують використовувати наступні коди класу трафіку:
IPv6 адреси показуються як вісім груп по чотиришістнадцяткові цифри, розділених двокрапками.Приклад адреси:
2001:0db8:11a3:09d7:1f34:8a2e:07a0:765d
Якщо одна чи більше груп підряд дорівнюють 0000, то вони можуть скорочено записуватись як подвійна двокрапка (::). Наприклад, 2001:0db8:0000:0000:0000:0000:ae21:ad12 може бути скорочена до 2001:db8::ae21:ad12, 0000:0000:0000:0000:0000:0000:ae21:ad12 — до ::ae21:ad12. Скорочення не дозволяється у випадку, коли адреса містить 2 окремі нульові групи через виникнення невизначеності.
При використанні IPv6-адреси вURL необхідно брати адресу в квадратні дужки:
http://[2001:0db8:11a3:09d7:1f34:8a2e:07a0:765d]/
Якщо потрібно вказати порт, то він пишеться після дужок:
Version: версія протоколу; для IPv6 це значення дорівнює 6 (значення в бітах — 0110).
Traffic class: пріоритет пакета (8 бітів). Це поле містить два параметри. Старші 6 бітів використовуються DSCP для класифікації пакетів.[4][5] Решта два біти використовуютьсяECN для контролю перевантаження.[6]
Flow label: відмітка потоку (див. відмітки потоків).
Payload length: на відміну від поляTotal length протоколу IPv4 дане поле не включає заголовок пакета (16 бітів). Максимальний розмір, що визначається розміром поля, — 64 Кбайти. Для пакетів більшого розміру використовуєтьсяJumbo payload[7].
Next header: вказує тип розширеного заголовка (англ.IPv6 extension), що розміщений одразу за основним. В останньому розширеному заголовку полеNext header вказує тип транспортного протоколу (TCP,UDP і т. д.)
Hop limit: аналог поляtime to live в IPv4 (8 бітів).
Source Address іDestination Address: адреси відправника та отримувача відповідно; по 128 бітів.
↑Архівована копія. Архіворигіналу за 29 липня 2012. Процитовано 27 листопада 2010.{{cite web}}: Обслуговування CS1: Сторінки з текстом «archived copy» як значення параметру title (посилання)
↑IPv6. Архіворигіналу за 23 грудня 2010. Процитовано 2 грудня 2010.