Ipv6 что это в роутере
Возникла у меня идея познакомить публику Хабра с IPv6 и настройкой протоколов на основе этого замечательного и еще плохо изученного сетевыми специалистами протокола. Для этих целей я остановлюсь на двух основных вендорах, это Juniper и Cisco. Моя статья будет состоять из трех частей. В первой части я соберу всю самую скучную, но очень нужную теорию. Рассмотрим поля протокола ipv6, принципы работы, разбиение на подсети и поставлю себе задачу, как можно больше акцентировать внимание на отличии его от любимого IPv4.
Ну что же, начнем, и начнем мы с плана.
• Заголовок IPv6 в сравнении с IPv4
• Представление IPv6-адресов
• Типы совместного использование протоколов IPv4 и IPv6
• Типы адресов
• Разбиение на подсети
Введение
Программисты постоянно соревнуются со Вселенной: они пытаются создать всё более идиотоустойчивые программы, а Вселенная создаёт всё более совершенных идиотов. Пока что Вселенная побеждает. (Rich Cook)
Заголовок IPv6 в сравнении с IPv4
Одним из основных конструктивных улучшений протокола IPv6 по сравнению с IPv4 является упрощённый заголовок IPv6. Заголовок IPv4 состоит из 20 октетов (до 60 байт, если используется поле «Параметры») и 12 основных полей заголовка, не учитывая поля «Параметры» и «Заполнитель». Заголовок IPv6 состоит из 40 октетов (главным образом из-за длины адресов IPv6 источника и назначения) и 8 полей заголовков (3 основных поля заголовков IPv4 и 5 дополнительных полей). Кроме того, в IPv6 добавлено новое поле, которое не используется в протоколе IPv4. Упрощённый заголовок IPv6 предлагает ряд преимуществ по сравнению с IPv4: повышенная эффективность маршрутизации для масштабируемости производительности и скорости пересылки; не требуется обработка контрольных сумм; упрощённые и более эффективные механизмы заголовков расширений (в отличие от поля «Параметры» в IPv4); поле «Метка потока» предназначена для обработки по потокам без необходимости открывать транспортный внутренний пакет для определения различных потоков трафика. В заголовке пакета IPv6 используются следующие поля:
Версия: поле, содержащее 4-битное двоичное значение, которое определяет версию IP-пакета. Для пакетов IPv6 в этом поле всегда указано значение 0110.
Метка потока: 20-битное поле, предоставляющее специальную службу для приложений реального времени. Используя это поле, маршрутизаторам и коммутаторам передается информация о необходимости поддерживать один и тот же путь для потока пакетов, что поможет избежать их переупорядочивания.
Длина полезной нагрузки: 16-битное поле, соответствующее полю «Общая длина» в заголовке IPv4. Оно определяет размер всего пакета (фрагмента), включая заголовок и дополнительные расширения.
"
Основная проблема программистов состоит в том, что их ошибки невозможно предугадать. (Seymour Cray)
Представление IPv6-адресов
Длина IPv6-адресов составляет 128 бит, написанных в виде строки шестнадцатеричных значений.бита представлены одной шестнадцатеричной цифрой, причём общее количество шестнадцатеричных значений равно 32. Примеров перевода из шестнадцатеричной системы счисления в двоичную и десятичную в данной статье не будет. Любой уважающий себя сетевой специалист должен уметь в уме переводить из разных систем счисления, ведь не за красивые глазки сетевые специалисты получают деньги — и не маленькие.
Опишем два важных правила для правильного представления IPv6 адресов.
1) Правило номер 1:
Первое правила для сокращения записи IPv6-адресов — пропуск всех ведущих 0 в шестнадцатеричной записи. Например:
01AB можно представить как 1AB
09F0 можно представить как 9F0
0A00 можно представить как A00
00AB можно представить как AB
Это правило применяется только к ведущим нулям, а НЕ к последующим, иначе адрес будет записан неясно. Например, шестнадцатеричное число «ABC» может быть представлено как «0ABC» или «ABC0».
2) Правило номер 2:
Второе правила для сокращения записи адресов IPv6 заключается в том, что двойное двоеточие (::) может заменить любую единую, смежную строку одного или нескольких 16-битных сегментов (хекстетов), состоящих из нулей. Двойное двоеточие (::) может использоваться в адресе только один раз.
Неверный адрес:
2001:0DB8::ABCD::1234
Возможные расширения неоднозначно записанных сжатых адресов:
2001:0DB8::ABCD:0000:0000:1234
2001:0DB8::ABCD:0000:0000:0000:1234
2001:0DB8:0000:ABCD::1234
2001:0DB8:0000:0000:ABCD::1234
Для начала изучите теорию. Затем обретите собственный стиль программирования. И, наконец, забудьте об этой ерунде и просто пишите код. (George Carrette)
Типы совместного использование протоколов IPv4 и IPv6
Двойной стек: двойной стек позволяет протоколам IPv4 и IPv6 сосуществовать в одной сети. Устройства с двойным стеком одновременно работают с протокольными стеками IPv4 и IPv6 (рисунок прилагается):
Туннелирование — это способ транспортировки IPv6-пакетов через IPv4-сеть. IPv6-пакет инкапсулируется внутри IPv4-пакета, как и другие типы данных
Преобразование — преобразование сетевых адресов 64 (NAT64) позволяет устройствам под управлением IPv6 обмениваться данными с устройствами под управлением IPv4 с помощью метода преобразования, похожего на метод преобразования из NAT для IPv4. IPv6-пакет преобразовывается в пакет IPv4-пакет и наоборот.
Для начала изучите теорию. Затем обретите собственный стиль программирования. И, наконец, забудьте об этой ерунде и просто пишите код. (George Carrette)
Типы IPv6- адресов
Существует три типа IPv6–адресов:
Unicast (индивидуальный) – Служит для определения интерфейса на устройстве под управлением протокола IPv6
Multicast (Групповой) – Используется для отправки пакетов по нескольким адресам назначения (Заменил собой Broadcast адрес, имеется IPv6- адрес для всех узловБкоторый дает аналогичный результат.)
Anycast (Произвольный) – Любой индивидуальный адрес, который может быть назначен нескольким устройствам. Пакет, отправляемый на адрес произвольной рассылки, направляется к ближайшему устройству с этим адресом.
Для ознакомления с типами адресов нам понадобится следующая информация: префикс, или сетевая часть адреса IPv4, может быть обозначен маской подсети в десятичном формате с разделительными точками или длиной префикса (запись с наклонной чертой). Например, IP-адрес 192.170.6.11 с маской подсети в десятичном формате с разделительными точками 255.255.255.0 эквивалентен записи 192.170.6.11/24.
Протокол IPv6 использует длину префикса для обозначения части префикса адреса. IPv6 не использует для маски подсети десятичное представление с разделительными точками. Длина префикса обозначает сетевую часть IPv6-адреса с помощью адреса или длины IPv6-префикса.Диапазон длины префикса может составлять от 0 до 128. Традиционная длина IPv6-префикса для локальных и других типов сетей — /64. Это означает, что длина префикса, или сетевая часть адреса, составляет 64 бита, а оставшиеся 64 бита остаются для идентификатора интерфейса (узловой части) адреса.
Образование в сфере компьютерных технологий точно так же не сделает из вас отличного программиста, как изучение кистей и красок не сделает вас прекрасным художником. (Eric Raymond)
Unicast IPv6 адреса
Unicast адрес служит для определения интерфейса устройства под управлением протокола IPv6. Пакет, который отправляется на unicast адрес, будет получен интерфейсом, присвоенным для этого адреса. Как и в случае с протоколом IPv4, IPv6-адрес должен быть индивидуальным.
Существует шесть типов Unicast адресов:
Global unicast адрес
Global unicast адрес мало чем отличается от публичного IPv4-адреса. Эти адреса, к которым можно проложить маршрут по Интернету, являются уникальными по всему миру. Глобальные индивидуальные адреса могут быть настроены статически или присвоены динамически.
Link-local
Local IPv6-адрес канала позволяет устройству обмениваться данными с другими устройствами под управлением IPv6 по одному и тому же каналу и только по данному каналу (подсети). Пакеты с локальным адресом канала источника или назначения не могут быть направлены за пределы того канала, в котором пакет создаётся. В отличие от локальных IPv4-адресов канала, локальные адреса канала IPv6 играют важную роль в различных аспектах сети. Глобальный индивидуальный адрес не обязателен. Однако для содержания локального адреса канала необходим сетевой интерфейс под управлением протокола IPv6. Если локальный адрес канала не настроен вручную на интерфейсе, устройство автоматически создаёт собственный адрес, не обращаясь к DHCP-серверу. Узлы под управлением IPv6 создают локальный IPv6-адрес канала даже в том случае, если устройству не был назначен глобальный IPv6-адрес. Это позволяет устройствам под управлением IPv6 обмениваться данными с другими устройствами под управлением IPv6 в одной подсети, в том числе со шлюзом по умолчанию (маршрутизатором). Локальные IPv6-адреса канала находятся в диапазоне FE80::/10. /10
Loopback
Loopback-адрес используется узлом для отправки пакета самому себе и не может быть назначен физическому интерфейсу. Как и на loopback-адрес IPv4, для проверки настроек TCP/IP на локальном узле можно послать эхо-запрос на loopback-адрес IPv6. Loopback-адрес IPv6 состоит из нулей, за исключением последнего бита, который выглядит как ::1/128 или просто ::1 в сжатом формате.
Unspecified address
Неопределённый адрес состоит из нулей и в сжатом формате представлен как ::/128 или просто :: Он не может быть назначен интерфейсу и используется только в качестве адреса источника в IPv6-пакете. Неопределённый адрес используется в качестве адреса источника, когда устройству еще не назначен постоянный IPv6-адрес или когда источник пакета не относится к месту назначения.
Unique local
Unique local — IPv6-адреса имеют некоторые общие особенности с частными адресами RFC 1918 для IPv4, но при этом между ними имеются и значительные различия. Уникальные локальные адреса используются для локальной адресации в пределах узла или между ограниченным количеством узлов. Эти адреса не следует маршрутизировать в глобальном протоколе IPv6. Уникальные локальные адреса находятся в диапазоне от FC00::/7 до FDFF::/7.В случае с IPv4 частные адреса объединены с преобразованием сетевых портов и адресов (NAT/PAT) для обеспечения преобразования адресов из частных в публичные. Это делается из-за недостатка адресного пространства IPv4. На многих сайтах также используют частный характер адресов RFC 1918, чтобы обеспечить безопасность или защитить сеть от потенциальных угроз. Однако такая мера никогда не была целью использования данных технологий, и организация IETF всегда рекомендовала предпринимать правильные меры предосторожности при работе маршрутизатора в Интернете. Хотя протокол IPv6 обеспечивает особую адресацию для сайтов, он не предназначен для того, чтобы скрывать внутренние устройства под управлением IPv6 от Интернета IPv6. IETF рекомендует ограничивать доступ к устройствам с помощью наилучших мер безопасности
IPv4 embedded
Последними из рассматриваемых типов индивидуальных адресов являются встроенные IPv4-адреса. Использование этих адресов способствует переходу с протокола IPv4 на IPv6.
Global unicast адрес
Global unicast IPv6-адреса уникальны по всему миру и доступны для маршрутизации через Интернет IPv6. Эти адреса эквивалентны публичным IPv4-адресам. В настоящее время назначаются только глобальные индивидуальные адреса с первыми тремя битами 001 или 2000::/3. Это лишь 1/8 от всего доступного адресного пространства IPv6. Адрес 2001:0DB8::/32 был зарезервирован для документации, в том числе для использования в примерах.
Глобальный индивидуальный адрес состоит из трёх частей:
Префикс глобальной маршрутизации — Префикс глобальной маршрутизации — это префиксальная или сетевая часть адреса, назначаемая интернет-провайдером заказчику или узлу. В настоящее время /48 является префиксом глобальной маршрутизации, который в настоящее время интернет-регистраторы назначают своим заказчикам — корпоративным сетям и индивидуальным пользователям. Этого адресного пространства более чем достаточно для большинства заказчиков.
Идентификатор подсети — Идентификатор подсети используется организациями для обозначения подсетей в каждом узле.
Идентификатор интерфейса — Идентификатор IPv6-интерфейса эквивалентен узловой части адреса IPv4-адреса. Термин «идентификатор интерфейса» используется в том случае, когда один узел может иметь несколько интерфейсов, каждый из которых обладает одним или более IPv6-адресами.
В мире нет такого языка программирования, на котором разработчики не смогли бы написать плохую программу. (Larry Flon)
Multicast IPv6
Мало чем отличаются от multicast IPv4-адресов. Как вы помните, multicast адрес используется для отправки одного пакета по одному или нескольким назначениям (группе мультивещания). Multicast IPv6-адреса имеют префикс FF00::/8. Multicast адреса могут быть только адресами назначения, а не адресами источника. Существует два типа:
1) групповые IPv6-адреса:
2) присвоенный групповой адрес;
1) Групповой адрес запрошенного узла. Присвоенные групповые адреса зарезервированы для заданных групп устройств. Присвоенный групповой адрес — это один адрес, используемый для осуществления связи с группой устройств, работающих на одном протоколе или сервисе. Присвоенные групповые адреса используются вместе с конкретными протоколами, например с протоколом DHCPv6.
Рассмотрим две распространённые группы присвоенных групповых IPv6-адресов.
Группа мультивещания для всех узлов FF02::1 — Это группа мультивещания, к которой подключены все устройства под управлением протокола IPv6. Пакет, отправленный этой группе, получается и обрабатывается всеми IPv6-интерфейсами в канале или сети. Эта группа адресов работает так же, как широковещательный адрес в протоколе IPv4.
Группа мультивещания для всех маршрутизаторов FF02::2 — Это группа мультивещания, к которой подключены все IPv6-маршрутизаторы. Пакет, отправленный этой группе, получается и обрабатывается всеми IPv6-маршрутизаторами в канале или сети.
Групповой адрес запрашиваемого узла — это адрес, который соответствует только 24 битам глобального индивидуального IPv6-адреса устройства. Обрабатывать эти пакеты должны только те устройства, которые имеют аналогичные 24 бита в наименее значащей, крайней правой части идентификатора интерфейса.
2) Групповой IPv6-адрес запрашиваемого узла создаётся автоматически при назначении глобального индивидуального адреса или локального адреса канала. Групповой IPv6-адрес запрашиваемого узла создаётся посредством объединения специального префикса FF02:0:0:0:0:1:FF00::/104 с крайними правыми 24 битами его индивидуального адреса.
Групповой адрес запрашиваемого узла состоит из 2 частей.
Если отладка — процесс удаления ошибок, то программирование должно быть процессом их внесения. (Edsger W. Dijkstra)
Разбиение на подсети
Разбиение IPv6-сети на подсети подразумевает использование другого подхода, чем разбиение на подсети IPv4-сети. Пространство IPv6-адресов разбивается не с целью экономии адресов, а для обеспечения иерархической логической структуры сети. Разбиение на подсети в IPv6 возможна двумя вариантами, которые я ниже изложу и дополню картинками для лучшего понимания.
Разбиение на подсети с использованием идентификатора подсети: Как вы помните, блок IPv6-адресов с префиксом /48 содержит 16 бит идентификатора подсети, как показано на рисунке. Разбиение на подсети с использованием 16 бит идентификатора подсети даёт 65 536 возможных подсетей /64. Поэтому нет необходимости заимствовать биты из идентификатора интерфейса или узловой части адреса. Каждая IPv6-подсеть /64 содержит примерно 18 квинтиллионов адресов, что, как очевидно, гораздо больше, чем когда-либо понадобится в одном сегменте IP-сети.Подсети, созданные из идентификатора подсети, легко представить, поскольку не нужно выполнять преобразование в двоичный формат. Чтобы определить следующую доступную подсеть, достаточно рассчитать следующее шестнадцатеричное число.Необходимо применить расчёт части идентификатора подсети в шестнадцатеричной системе счисления.Префикс глобальной маршрутизации является одинаковым для всех подсетей. Для каждой подсети увеличивается только четырёхразрядный байт идентификатора подсети.
Разбиение на подсети с использованием идентификатора интерфейса — В IPv6-сетях по аналогии с заимствованием бит из узловой части IPv4-адреса можно позаимствовать биты из идентификатора интерфейса для создания дополнительных IPv6-подсетей. Как правило, это делается по соображениям безопасности, чтобы уменьшить число узлов в подсети и создавать дополнительные подсети. При расширении идентификатора подсети путём заимствования бит из идентификатора интерфейса рекомендуется создавать подсеть на границе полубайта. Полубайт — это 4 бита или одна шестнадцатеричная цифра. Префикс подсети /64 расширяется на четыре бита или один полубайт до подсети /68. Это позволяет уменьшить размер идентификатора на 4 бита (с 64 до 60). Разбиение на подсети по границе полубайта имеет значение только для масок подсетей, выровненных по полубайту. Начиная с /64, масками подсети, выровненными по полубайту, будут являться маски /68, /72, /76, /80 и т. д. Разбиение на подсети по границе полубайта позволяет создать подсети с использованием дополнительного шестнадцатеричного значения. Можно создать подсеть в пределах полубайта, используя шестнадцатеричную цифру, однако это не рекомендуется и, кроме того, в этом нет необходимости. Разбиение на подсети в пределах полубайта сводит на нет преимущества быстрого определения префикса из идентификатора интерфейса. Например, если используется длина префикса /66, первые два бита были бы частью идентификатора подсети, а вторые два бита — частью идентификатора интерфейса.
всегда пишите код так, как будто сопровождать его будет психопат, который знает, где вы живёте. (Martin Golding)
Список используемой литературы
Выше я описал основные моменты IPv6 его отличия от IPv4. В следующих частях будет больше практической работы. Напомню, во второй части будет описана настройка основных протоколов на оборудовании CIsco, также опишу принцип работы DHCPV6. В третьей части будет описана настройка IPv6 уже на оборудовании Juniper.
Протокол сетевого взаимодействия TCP/IPv4 используется для передачи зашифрованных данных в сети интернет и локальных подсетях уже более тридцати лет. На его основании создается и поддерживается уникальная адресация сетевого оборудования (узлов). Еще в начале 90-х годов прошлого века был определен основной недостаток данного протокола – ограничение по количеству возможных ip-адресов, которое не может превысить 4,23 миллиарда. В результате была разработана новая система протоколирования сетевого взаимодействия – интернет-протокол IPv6 (Internet Protocol version 6). Однако массовый переход на более прогрессивную технологию обусловлен некоторыми сложностями. Хотя, например, в Соединенных Штатах уже более половины пользователей применяют именно протокол IPv6.
Основные отличия протоколов IPv4 и IPv6
Как уже было сказано, ключевым недостатком протокола четвертой версии TCP/IPv4 является ограниченная масштабируемость уникальных адресов, присваиваемых для идентификации в сетях взаимодействия. Для создания ip-адресов на уровне программных записей используется 32-х битная система в формате 0.0.0.0 – 255.255.255.255. При построении локальных подсетей вводится дополнительный атрибут «маска подсети», записываемая после символа «/». В результате даже крупные ЛВС, объединенные в Ethernet, чаще всего имеют один публичный ip-адрес, выдаваемый провайдером и закрепленный на уровне шлюза (маршрутизатора). Самостоятельный обмен данными на уровне отдельных устройств частной подсети с выходом в паблик-интернет требует сложного администрирования. Для решения задач маршрутизации, требующих получения статических IP-адресов, понадобятся дополнительные финансовые затраты.
С целью упрощения записи адреса в протоколе IPv6 используется вариант сжатия кода, когда смежные последовательности нулевых блоков заменяются парами символов двоеточия. Например, адрес групповой рассылки FFEA:0:0:0:0:CA28:1012:4254 в сжатой форме будет представлен в укороченном виде FFEA::CA28:1012:4254. Данный механизм упрощает процесс записи, хранения и обработки кода.
По правилам протокола IPv6 назначение сетевых адресов происходит автоматически и уникализируется за счет идентификации на уровне MAC-адреса конкретной единицы оборудования, для которой необходим выход в публичную сеть. Другими словами, каждый домашний компьютер, смартфон, холодильник или стиральная машина с функцией подключения к внешним устройствам получает собственный «белый» ip-адрес для коннекта с другими хостами через интернет. Доступна также произвольная генерация кодов путем администрирования с использованием маршрутизаторов.
Впечатляет минимальный диапазон адресов подсети, получаемых пользователем при подключении по протоколу IPv6. Например, при использовании маски подсети «/128» получаем более 2 56 адресов.
Спорным является вопрос отличия в скорости передачи трафика по каждому из протоколов. По умолчанию технология протокола IPv6 обеспечивает большую скорость обработки трафика на уровне отдельного оборудования сети в целом. Использование NAT в протоколе IPv4, который обеспечивает трансляцию адресов абонентов и хранение в памяти информации об установленных соединениях, приводит к большой загрузке оборудования. Поэтому в моменты пиковой нагрузки каждый пользователь отмечает резкое падение скорости соединения.
В протоколе IPv6 не применяется обязательная обработка пакетов и отслеживание уже открытых соединений при маршрутизации доступа к хостам. Отсутствие необходимости трансляции значительно снижает ресурсную нагрузку на сетевые устройства. Для пользователя это означает выравнивание скорости интернет-соединения. Провайдеры в такой ситуации могут использовать менее ресурсоемкое, а значит, более дешевое оборудование.
Дополнительные преимущества протокола IPv6
По сравнению с четвертой версией, в протоколе TCP/IPv6 реализован ряд дополнительных функциональных возможностей:
используется более простой заголовок, из него исключены несущественные параметры, что снижает нагрузку на маршрутизаторы при обработке сетевых запросов;
более высокий уровень обеспечения безопасности, аутентификации и конфиденциальности, которые положены в основу данной технологии;
в протоколе реализована функция Quality of Service (QoS), позволяющая определять чувствительные к задержке пакеты;
при передаче широковещательных пакетов используются многоадресные группы;
для реализации технологии мультивещания в IPv6 задействовано встроенное адресное пространство FF00::/8;
для повышения безопасности используется поддержка стандарта шифрования IPsec, который позволяет шифровать данные без необходимости какой-либо поддержки со стороны прикладного ПО.
В настоящее время эксперты ведут дискуссии на предмет обеспечения безопасности данных в случае гибридного применения двух протоколов. Провайдеры выстраивают IPv6-туннели для предоставления пользователям IPv4 доступа к высокоуровневому контенту. Применение данной технологии увеличивает риски хакерских атак. Функция автоконфигурации, когда устройства самостоятельно генерируют IP-адрес на основе MAC-адреса оборудования, может быть использована для незаконного отслеживания конфиденциальных данных пользователей.
Внедрение протокола TCP/IPv6
Несмотря на долгую историю разработки, которая берет начало в 1992 году, тестирование нового протокола состоялось одномоментно 8 июня 2011 года в Международный день IPv6. Эксперимент прошел удачно и предоставил возможность для выработки рекомендаций по дальнейшему совершенствованию данной технологии, ее массовому внедрению.
Первой компанией, внедрившей в 2008 году стандарт протокола IPv6 на постоянной основе, стал Google. Тестирование проводилось в течение четырех лет, было признано успешным. 6 июня 2012 года состоялся Всемирный запуск IPv6. Сегодня мировые лидеры в производстве сетевого оборудования Cisco и D-Link применяют данный сетевой стандарт в своих маршрутизаторах на базовом уровне. В мобильных сетях стандарта LTE поддержка протокола IPv6 является обязательной. IT-компании Google, Facebook, Microsoft и Yahoo используют IPv6 на своих основных web-ресурсах. Протокол получает все большее распространение в корпоративных сетях и при домашнем использовании.
Согласно исследованиям Google, на начало 2020 года доля IPv6 в общемировом сетевом трафике составляла около 30%. В России данный показатель значительно ниже, он составляет приблизительно 4,5% всего трафика. В то же время все большее количество отечественных регистраторов доменов и хостинг-провайдеров переводят свои DNS-серверы на протокол IPv6.
Сложности перехода
Возникает резонный вопрос: если протокол TCP/IPv6 обладает таким количеством преимуществ по сравнению с предшественником, почему бы просто не перейти на него всем миром? Основное препятствие лежит в сфере финансов и временных параметров. Для полномасштабного использования новой технологии требуются серьезные инвестиции в программно-техническую модернизацию компьютерного парка всех провайдеров.
Использование динамических ip-адресов по протоколу IPv4 позволяет временно сдерживать проблему нехватки уникальных сетевых идентификаторов. Другими словами, проблемы администрирования локальных сетей перекладываются на конечных пользователей, которые вынуждены настраивать сложные схемы маршрутизации подсетей и покупать дополнительные ip-адреса. В то же время рост количества конечных сетевых устройств происходит очень быстро. Внедрение технологий прямой коммуникации даже с обычными бытовыми приборами через интернет требует новых подходов в построении архитектуры их взаимодействия. В связи с этим повсеместный переход на использование стека протокола TCP/IPv6 неизбежен.
Скорее всего вы уже видели подобные циферки. IPv4 имеет вид 4 цифр в диапазоне от 0 до 255. В итоге у нас есть диапазон полных адресов от 0.0.0.0 до 255.255.255.255. Если посчитать, то полное число адресов, которые можно построить с помощью IPv4 – это 4 294 967 296 (2 в 32-ой степени). Приплюсуем сюда огромное количество зарезервированных адресов и получится ещё меньше.
И тут мы подходим к проблеме, которая уже долгие годы назревает на горизонте сетевого мира. А проблема банальна – IPv4 уже не хватает для охвата всех устройств, подключенных к интернету.
Тут-то и выходит на арену более тяжелый IPv6, который имеет больший размер в 128 бита, а это куда большее пространство устройств. И вот мы подошли к самому главному вопросу, а что же такое IPv6? – По сути это просто другой вид адресации с большим размером и некоторыми плюсами по сравнению с IPv6, о которых мы поговорим далее чуть подробнее.
Внешний вид
IPv6 конечно можно было бы представить в виде обычной 10-тичной системы исчисления, но тогда адрес был бы ну слишком большим. Именно поэтому для записи используется 16-тиричная система исчисления, где применяются не только всем нам известные цифры, но также и буквы.
Посмотрите на картинку выше, и вы явно увидите внешние отличия IPv4 от IPv6. Также хочу отметить, что на самом деле разделителей никаких нет – то есть точки и двоеточия ставит сам компьютер, чтобы человеку было проще воспринимать информацию. Куда проще понять число: 192.168.0.1 чем 19216801. Аналогично в IPv6 используются двоеточия, но только для зрительного упрощения.
Давайте рассмотрим преимущества 6-го протокола IP. Про первое мы уже упомянули – оно гласит, что с помощью данной адресации мы можем раздать куда больше статических адресов в интернете. Следующий плюс в том, что у 6-го поколения IP присутствует более короткий заголовок. Не буду рассказывать из чего именно он состоит, так как вы скорее всего после этого уснете или просто закроете статью. Просто скажу: что данный заголовок упрощает маршрутизацию в сети и немного ускоряет отправку и прием пакетов. Плюс существенно уменьшается погрешность при высчитывании контрольной суммы.
Ещё один плюс в том, что за счет двойного стека IPv4 и IPv6 могут работать в одной сети.
Также есть возможность передавать пакеты IPv6 по сети IPv4. При данном способе идет некая инкапсуляция пакетов внутри сети 4-го поколения. Грубо говоря, они сначала запаковываются, а потом при использовании распаковываются или на устройстве, или в отведенной сети.
Но в теории IPsec можно запустить и на IPv4, что проделывают некоторые провайдеры. Многие сейчас могут задуматься о том, что в теории скорость интернета немного подрастет с использованием 6-го IP. Да, возможно, на долю процента так и будет, но мы не будем забывать про то, что это возможно только в том случае, если весь интернет перейдет на данную адресацию, что в ближайшем будущем просто невозможно.
А вот задержки на некоторых узлах уже наблюдаются из-за туннелирования, когда трафик IPv6 инкапсулируется в сетях IPv4. Также не забываем, что используется более грамотное разбиение адреса на подсети, что также улучшает связь.
Но почему при таком большом количестве плюсов ещё весь интернет не перешел на IPv6? Все дело в стоимости. Пока в интернете, а также в локальных сетях, используют оборудование, которое работает только с IPv4. А теперь представьте: сколько нужно средств, чтобы это оборудование поменять на другое? – очевидно, что очень много!
Как использовать?
ВНИМАНИЕ! Все нижеперечисленные действия вы делаете на свой страх и риск. Сайт WiFiGid за это ответственности не несет. Также подумайте: а оно вам надо вообще?! Так как переход на IPv6 может слегка замедлить соединение.
Способ 1
На Windows достаточно установить специальный пакет, который ставится через стандартную командную строку командой:
netsh interface ipv6 install
Как вариант, если у вас есть статический IPv4, то вы можете слать весь трафик через отведенный шлюз:
netsh int ipv6 6to4 set relay 192.88.99.1 enabled 1440
- Нажимаем одновременно на клавиши и R и далее прописываем команду: «gpedit.msc».
- Далее в строке «Interface List» смотрим номер и прописываем его в команде:
netsh interface ipv6 add route ::/0 interface=НОМЕР_ИЗ_СТРОКИ
- Если ничего нет, то попробуйте прописать ещё три команды:
netsh int teredo set state type=client
netsh interface ipv6 delete route ::/0 interface= НОМЕР_ИЗ_СТРОКИ
netsh interface ipv6 add route ::/0 interface= НОМЕР_ИЗ_СТРОКИ
ПРИМЕЧАНИЕ! Если все равно ничего не получается, то попробуйте вместо первой команды вписать: netsh int teredo set state type=enterpriseclient.
Способ 2
Он более простой, так как подключение к TCP/IP IPv6 address будет осуществлено с помощью программы.
p, blockquote 1,0,0,0,0 -->
p, blockquote 2,0,0,0,0 -->
Место IPv6 в моделях OSI и TCP/IP
IPv6 в модели OSI находится на сетевом уровне, а в модели TCP/IP на соответствующем ему уровне интернет.
p, blockquote 3,0,0,0,0 -->
p, blockquote 4,0,0,0,0 -->
p, blockquote 5,0,0,0,0 -->
p, blockquote 6,0,0,0,0 -->
Цели создания IPv6
p, blockquote 7,0,0,0,0 -->
Для сравнения, население Земли сейчас составляет более, чем 7 миллиардов, при этом многие люди используют не одно устройство, а несколько, это может быть ноутбук, планшет, смартфон, умные часы и многое другое.
p, blockquote 8,0,1,0,0 -->
Также, необходимо учитывать сервер и сетевое оборудование в инфраструктуре интернет и сетевых сервисов, а такие технологии, как интернет вещей еще больше увеличивают требования к количеству IP адресов.
p, blockquote 9,0,0,0,0 -->
Количество доступных адресов IPv4 стремительно сокращается, последний крупный блок адресов IPv4 класса А, был выдан в 2011 году, и уже близко то время, когда какая-то компания или человек захотят подключиться к интернет, но не смогут этого сделать, из-за того что им не хватит адреса IPv4.
p, blockquote 10,0,0,0,0 -->
Было предложено несколько временных решений, проблемы нехватки IP адресов, которые оказались достаточно успешными. Самые популярные это технология трансляции сетевых адресов NAT, эта технология позволяет подключиться к сети интернет используя всего лишь один IP адрес, сеть, состоящую из большого количества устройств с использованием частных или приватных IP адресов.
p, blockquote 11,0,0,0,0 -->
p, blockquote 12,0,0,0,0 -->
p, blockquote 13,0,0,0,0 -->
Также при разработке IPv6 постарались упростить протокол, для того чтобы маршрутизаторы могли обрабатывать пакеты IPv6 быстрее, и обеспечили возможность защиты данных с помощью шифрования.
p, blockquote 14,0,0,0,0 -->
IPv6 считается новым протоколом, однако работа над ним началась еще в 1990 году, когда впервые задумались о возможной проблеме исчерпания адресов IPv4. Первый вариант стандарта протокола IPv6 был принят в документе RFC 1883 в 1995 году, а действующий стандарт протокола IPv6 документ RFC 2460 был принят в 1998 году. Таким образом протоколу IPv6 уже больше 20 лет, и новым его можем называть только по сравнению с протоколом IPv4.
p, blockquote 15,0,0,0,0 -->
Формат заголовка IPv6
Давайте рассмотрим формат заголовка протокола IPv6. Основное изменение это более длинные адреса отправителя и получателя, каждая из которых занимают по 16 байт.
p, blockquote 16,0,0,0,0 -->
- Первое поле в заголовке протокола IPv6 также, как и в заголовке протокола IPv4, это номер версии 4 для IPv4 и 6 для IPv6.
- Затем идет поле класс трафика, оно необходимо для реализации качества обслуживания. Самый простой вариант, разбиение трафика на два класса, обычный и важный. Маршрутизаторы, которые поддерживают обеспечение качества обслуживания, передают важный трафик быстрее используя специальную выделенную очередь, также возможны и другие варианты использования классов трафиков.
- Следующее поле в заголовке IPv6 это метка потока, это поле используется для того чтобы объединить преимущества сетей коммутации пакетов с сетями с коммутацией каналов. У набора пакетов, которые передаются от одного отправителя к одному получателю, и требует определенного типа обслуживания, устанавливается одна и та же метка. Маршрутизаторы, которые поддерживают работу в таком режиме, обрабатывают пакет на основе метки, что гораздо быстрее.
- Следующее поле это длина полезной нагрузки, в отличии от протокола IPv4, где в подобном поле указывается общая длина пакета, здесь указывается только размер данных без размера заголовка.
- Затем идет поле следующий заголовок, которое необходимо, если используются дополнительные заголовки, в этом поле указывается тип первого дополнительного заголовка.
- В IPv6 поле время жизни пакета переименовали в максимальное число транзитных участков, потому что на практике вместо времени жизни, даже в протоколе IPv4, указывается максимальное количество маршрутизаторов через которое может пройти пакет, перед тем как он будет отброшен.
По сравнению с заголовком протокола IPv4 в протоколе IPv6 нет полей, которые отвечают за фрагментацию, и за контрольную сумму. Расчет контрольной суммы создает большую нагрузку на маршрутизаторы, однако эта операция часто является излишней, так как контрольная сумма рассчитывается на канальном уровне, и на сетевом уровне. Поэтому от расчета контрольных сумм в протоколе IPv6, было решено отказаться.
p, blockquote 18,0,0,0,0 -->
Также было принято решение отказаться от фрагментации, потому что она так же как и расчет контрольной суммы, создает большую нагрузку на маршрутизаторы. На практике во многих сетях сейчас используется один и тот же размер пакета, соответствующий размеру кадра Ethernet 1500 байт, поэтому фрагментация часто являются ненужной. Если все же где-то по пути пакета встретиться сеть с меньшим максимальным размером пакета, то вместо фрагментации необходимо использовать технологию Path MTU Discovery.
p, blockquote 19,0,0,0,0 -->
Также как и заголовок протокола IPv4, заголовок протокола IPv6 состоит из двух частей обязательный и необязательной. В необязательные части может быть несколько дополнительных заголовков.
p, blockquote 20,0,0,0,0 -->
Дополнительные заголовки IPv6
В IPv6 могут быть дополнительные заголовки следующих типов:
В протоколе IPv6 фрагментация преимущественно не используется, вместо неё используется технология Path MTU Discovery, но как вариант все-таки маршрутизаторы могут фрагментировать пакеты, для этого используется не обязательная часть заголовка.
p, blockquote 22,0,0,0,0 -->
Важным добавлением в протокол IPv6 является механизм защиты данных, которых не было в IPv4 это аутентификация и шифрование. Обе технологии не являются частью протокола IPv6, а описаны в отдельных документах. RFC 2402 IP Authentication Header используется для аутентификации, а документ RFC 2406 описывает технологию шифрования IP Encapsulation Security Payload, сейчас активными являются обновленные версии этих документов.
p, blockquote 23,0,0,0,0 -->
Влияние IPv6 на IPv4
Некоторые технологии, которые предложены в протоколе IPv6 были внедрены и в протокол IPv4. Например, поле тип сервиса, которое использовалось в заголовке IPv4, было заменено на поле класс трафика, в котором используется тот же самый формат, что и в заголовке протокола IPv6. Также в протокол IPv4 были перенесены аутентификация и шифрования в виде технологии IP Security, сокращенное IPSec.
p, blockquote 24,0,0,0,0 -->
Внедрение IPv6
Таким образом, IPv6 это новый, улучшенный и упрощенный протокол сетевого уровня, который позволяет решить проблему нехватки и адресов IPv4. Однако проблема заключается в том, что протоколы IPv4 и IPv6 несовместимы друг с другом. На практике это означает, что если вы хотите использовать IPv6, то необходимо поменять оборудование и программное обеспечение, на то которое поддерживает протокол IPv6 и провести значительную перенастройку сетевого оборудования, и все эти действия заметны, как пользователям так и администраторам.
p, blockquote 25,0,0,1,0 -->
Заменить все сетевое оборудование и программное обеспечение в один момент невозможно, поэтому разработчики IPv6 предполагали, что две версии протокола, будут сосуществовать в интернет достаточно долгое время.
p, blockquote 26,0,0,0,0 -->
Для того, чтобы можно было плавно перейти на протокол IPv6 были предложены две возможные технологии:
- Первая технология это двойной стек, все современное оборудование и программное обеспечение поддерживает работу как, по протоколу IPv4, так и по протоколу IPv6. Таким образом, для того чтобы начать использование IPv6, вам нужно просто сконфигурировать протокол IPv6 на своем оборудовании, и скорее всего все начнет работать. Но имейте ввиду чтобы подключиться к интернет по протоколу IPv6, эту версию протокола должен поддерживать ваш провайдер.
- Другая возможность совместного использования протоколов IPv4 и IPv6, это туннелирование, предположим что у нас есть несколько сетей внутри которых используется протокол IPv6, но эти сети разрознены и между ними находится сеть IPv4. В этом случае можно создать так называемый туннель, в туннеле пакеты IPv6 будут вкладываться внутрь пакетов IPv4, и таким образом передаваться из одной сети IPv6 в другую сеть IPv6, между которыми есть соединение только по протоколу IPv4.
Для того чтобы ускорить внедрение протокола IPv6, многие крупные компании объединились и устроили мировой запуск протокола IPv6, он произошел 6 июня 2012 года, в нем участвовали многие крупные компании-производители сетевого оборудования, такие как Cisco и D-Link, интернет-компании такие как Google, Facebook, компании производители программного обеспечения, такие как Microsoft, а также большое количество других компаний.
p, blockquote 28,0,0,0,0 -->
Использование IPv6 по данным Google
Несмотря на то, что протокол IPv6 решает проблемы нехватки IP адресов, его внедрение на практике ведется достаточно медленно. Компания google предоставляет статистику запросов к своим серверам по протоколу IPv6. Сейчас всего лишь 17 % запросов используют протокол IPv6, а остальные IPv4.
p, blockquote 29,0,0,0,0 -->
p, blockquote 30,0,0,0,0 -->
p, blockquote 31,0,0,0,0 -->
p, blockquote 32,0,0,0,0 -->
Итоги по протоколу IPv6
В статье рассмотрели протокол IPv6 это протокол используется на сетевом уровне для передачи данных, и он предназначен для замены протокола IPv4. Протокол IPv6 позволяет решить проблему нехватки адресов IPv4, также он позволяет ускорить работу маршрутизаторов, и обеспечить безопасность передачи данных на сетевом уровне. Для того чтобы это обеспечить, длина IP адресов IPv6 увлечена до 16 байт, отказались от расчета контрольных сумм и фрагментации на маршрутизаторах, а для защиты данных в единой технологии аутентификации и шифрования.
p, blockquote 33,0,0,0,0 --> p, blockquote 34,0,0,0,1 -->
Однако существует проблема с внедрением протокола IPv6 вызванная с несовместимостью IPv4. Для того чтобы перейти на протокол IPv6, необходимо полностью перенастроить существующие сетевое оборудование, на что пользователи и администраторы сетей идут неохотно.
Читайте также: