Почему так получилось, какие есть способы решения проблемы и когда эксперты ожидают переход на IPv6, расскажем далее.
/ Flickr / Susan Adams / CC
Что привело к «истощению» адресов
В семидесятые годы на планете проживало 4,5 млрд человек, а о ПК-революции пока не было и речи. Поэтому в момент перехода на TCP/IP в 1983 году был сделан выбор в пользу 32-разрядных адресов. Казалось, что 4,3 млрд адресов вполне достаточно.
Однако уже в начале девяностых люди стали в этом сомневаться. Первым документом, в котором обсуждалась проблема истощения адресов, стал RFC 1287. Чтобы попытаться исправить положение, в 1992 году были созданы региональные интернет-регистраторы: AFRINIC (Африка), APNIC (Азиатско-Тихоокеанский регион), ARIN (Канада, США, Карибские и Североатлантические острова), LACNIC (Латинская Америка и страны Карибского бассейна), RIPE NCC (Европа, Ближний Восток и страны Центральной Азии). Они должны были управлять адресным пространством и раздачей IP-адресов. Однако это не решило проблему недостатка последних – рост пользователей сети был слишком велик, и IPv4 постепенно истощались.
Возможные решения проблемы
Несмотря на то что практически все регистраторы отдали доступные блоки, отдельные адреса до сих пор можно покупать и продавать. Одна из первых таких сделок состоялась еще в 2011 году: Microsoft приобрели 700 тысяч IPv4-адресов у обанкротившегося поставщика сетевого оборудования Nortel Networks за 7,5 млн долларов.
Также можно попытаться найти диапазоны адресов, выданных ранее, разбить на блоки поменьше и раздать снова. Однако обнаружить их непросто, так как их реестр не вели. Один из примеров — кейс Массачусетского технологического института (MIT). В 2017 году в MIT обнаружили, что у них есть 14 млн «лишних» IP-адресов, которые не использовались. 8 млн было решено продать.
Однако у такого подхода есть определенный недостаток. Бесконтрольная массовая перепродажа IP-адресов способна привести к фрагментации шаблонов и увеличению таблиц маршрутизации. Это может вызвать проблемы в работе роутеров с ограниченными ресурсами памяти.
Другое решение проблемы — использовать NAT. Метод NAT позволяет преобразовывать IP-адреса транзитных пакетов: заменяет локальный адрес на публичный, прописывает его в пакете, который идет на веб-сервер, и возвращает на устройство. Самое большое число портов NAT — 65 тысяч (с уникальной комбинацией из IP-адреса источника и IP-адреса назначения), значит, столько же локальных адресов можно превратить в один публичный. При этом в структуре сети виден только маршрутизатор, а сами устройства скрыты.
Однако у NAT есть ряд недостатков. Например, протоколы, которые появились раньше этого метода (например, FTP), могут работать через NAT нестабильно. Кроме того, если все сотрудники компании решат зайти на один сайт, сервер может принять это за DDoS-атаку — поскольку запрос совершается с одного публичного адреса — и заблокировать доступ для всех устройств с этим IP.
Также можно обратить внимание на CG-NAT. Это решение заточено под операторов связи и корпоративные сети и эффективнее использует ограниченное адресное пространство IPv4. Подробнее о том, как работает CG-NAT, можно прочитать в нашем корпоративном блоге.
/ Flickr / Dave Young / CC
Переход на IPv6
Вышеописанные подходы немного уменьшают размеры таблиц маршрутизации и оптимизируют использование IP-адресов. Однако не решают проблему нехватки на 100%. Поэтому еще с середины девяностых началась разработка протокола IPv6. Официальные описания IPv6 начали выпускать с 1996 года в рамках RFC (с RFC 1883 и далее).
Главное преимущество протокола — теоретическая неисчерпаемость IP-адресов (более 300 млн IP-адресов на каждого жителя Земли). Другое достоинство IPv4 — упрощенная маршрутизация: не нужно фрагментировать пакеты, а из заголовка адреса убрали контрольную сумму. Протокол следующего поколения имеет встроенный компонент IPSec, который шифрует и аутентифицирует каждый отдельный пакет данных. Он может усложнить работу для киберпреступников, хотя, безусловно, и в IPv6 встречаются уязвимости.
В 2008 году шестую версию протокола стали внедрять в Google, а в 2011 состоялся Международный день IPv6, в рамках которого большинство крупных провайдеров предоставляли доступ к сети по IPv4 и IPv6. Новую версию протокола уже используют в крупных зарубежных компаниях (AT&T, Cisco, Facebook и других). Отечественные провайдеры также переводят своих клиентов на IPv6: в «Вымпелкоме» уже успешно подключили несколько регионов, а в «Яндексе» используют протокол во внутренних сетях.
И хотя мировое сообщество настаивает на массовом переходе на новый протокол, полноценная «миграция» задерживается. По данным Google, всего 23% пользователей сервисов компании выходят в сеть по IPv6. И всего 12% сайтов поддерживают новый протокол. При этом из тысячи самых крупных сайтов из списка Alexa только 27% предлагает доступ по IPv6.
Причин для промедления несколько: помимо того, что нужно будет вложить серьезные деньги в оборудование, провайдерам придется переобучить персонал и заново заключить договоры с пользователями. Еще нужно будет обеспечить безопасную работу протокола и правильно настроить новое сетевое оборудование. На это уйдет много времени, сил и инвестиций.
Однако Пол Уилсон (Paul Wilson), который 20 лет был главой APNIC, отмечает, что переход на IPv6 неизбежен, поскольку новый протокол — единственная достойная замена IPv4.
Но пока единого мнения о датах полноценного внедрения IPv6 у общественности нет. Например, пользователи Quora предполагают, что IPv4 еще «проживет» от нескольких лет до вечности. В The Register считают, что топ-1000 сайтов будут поддерживать IPv6 уже к маю 2021 года. Исследователи и представители RIR пророчат, что IPv4 осталось существовать от года до десяти лет.
P.S. Полезные материалы из блога VAS Experts:
- Протокол IPv6 – от теории к практике
- IPv6 — технология настоящего или будущего
- Будущее услуг операторов связи: что нужно клиенту?
P.P.S. Статьи по теме из нашего блога на Хабре:
Комментарии (29)
Vanger13
20.05.2018 00:12+1Заголовок:
Закончились IPv4
Текст статьи:
Немного публичных адресов еще осталось у AFRINIC, однако и эти «запасы» выйдут очень скоро (эксперты прогнозируют, что это случится уже в 2019 году).
Странная опечатка:
Региональный регистратор RIPE отдал последний блок IPv4
У части других регистраторов блоки кончились еще несколько лет назад:… у RIPE — в 2012
dartraiden
20.05.2018 00:35Странная опечатка
В оригинале тоже так. Я так понял, что в 2012 году перестали выдавать блоки адресов, как во все предыдущие годы — всем желающим. Стали ужесточать правила выдачи, выдавать мелкими порциями. А сейчас уже совсем всё — адресов свободных больше нет ни для кого.navion
20.05.2018 13:30+1Закончился последний нераспределённый блок 185/8, дальше LIRам будут давать /22 из возвращённых сетей.
EvilGenius18
20.05.2018 00:12+1Закончились IPv4 — регистратор RIPE отдал последний блок
Немного публичных адресов еще осталось у AFRINIC, однако и эти «запасы» выйдут очень скоро (эксперты прогнозируют, что это случится уже в 2019 году).
Мр. Шредингер, так закончились ли уже все IPv4 адреса и был ли отдан последний блок на планете, или же последний блок предположительно будет отдан в 2019, когда у последней компании закончатся последние блоки?khim
20.05.2018 01:28-1Вы статью-то читали? Или только надёргали цитат, чтобы посмеяться?
Там, собственно, всё написано: адреса на первичном рынке кончились, за исключением Африки, но появился вторичный рынок. Там адреса, скорее всего, не кончатся никогда — просто в какой-то момент они станут так дороги, что их перестанут покупать…EvilGenius18
20.05.2018 01:36Я прочел всю статью. Просто не понимаю, для чего в последнее время авторы пишут кликбэйт заголовки с кучей звездочек.
Заголовок: Во всем* мире** закончилась*** вода
…
*в 1 поселке
**страны 3-го мира.
***закончилась на 20 минут, из-за кратковременного перебояmapron
20.05.2018 10:11с ipv4 пора бы привыкнуть, они каждые пару лет заканчиваются «теперь совсем» с 2011 года)
alexr64
20.05.2018 00:16Не понимаю вообще этой паники. Достаточно Google, Facebook и, скажем, Amazon объявить «Переводим все сервисы на v6-only к хх-ому числу.» и… все! Даже обещание можно не исполнять! Весь мир к этой дате будет готов к v6 на уровне «жить без него не можем, хз как раньше то было?».
shifttstas
20.05.2018 01:08Зачем? Многие операторы и так, сами переведут все на v6 из-за появление капчи в Гугл сервисах и в других...
lopatoid
20.05.2018 01:19А какая от этого выгода Гуглу, Фэйсбуку и Амазону?
alexr64
20.05.2018 03:51Уникальная ачивка масштаба мировой истории «мы первыми полностью перешли на v6», как минимум. Плюсик в карму и кредит доверия. Шумиха в СМИ, в конце концов.
lopatoid
20.05.2018 03:58От кого кредит доверия? От небольшой кучки гиков, которые любят ipv6?
И получат ненависть от сотен миллионов простых юзеров, чей домашний роутер/компьютер не поддерживает ipv6, или поддерживает, но его надо настраивать (время, деньги, проблемы).
А ведь именно простые юзеры, которые не могут себе настроить роутер/компьютер (а заодно и adblock), приносят Гуглу основной доход.antonbatenev
20.05.2018 23:27чей домашний роутер/компьютер не поддерживает ipv6, или поддерживает, но его надо настраивать (время, деньги, проблемы)
Протокол IPv6 датирован 1996 годом — его поддерживают все ОС и подавляющее большинство домашних роутеров (если это не совсем «динозавры»). Приятным бонусом IPv6 является простота настройки и автоконфигурирование — для среднестатистического пользователя переход будет абсолютно незаметным.
Поломается кровавый enterprise и мелкие поделки, где до сих пор используют gethostbyname / sockaddr_in / etc, но для первых есть специально обученные люди, умеющие строгать нужные костыли, а вторым туда и дорога.
zerg59
20.05.2018 10:51+1Интересно, что клиент DNSCrypt даже второй версии предлагает выключить поддержку IPv6 для увеличения скорости. Но с другой стороны мой провайдер не умеет шейпить IPv6 и скорость приема/отдачи до таких пиров обычно заметно выше.
inkvizitor68sl
21.05.2018 05:24Вот так и будет создан чебурнет…
Российские провайдеры вообще ни про какой ipv6 слышать не хотят. А там, где что-то шевелится — обычно чья-то личная инициатива из технарей.
dartraiden
20.05.2018 00:33Для тех кто так и не понял, что случилось: свободные адреса закончились для Европы, Ближнего Востока и Центральной Азии. Осталось чуток для Африки.
Alexsey
20.05.2018 02:26А есть какая-нибудь статистика о том каким количеством адресов владеют крупные компании (гугл, мс, амазон и тд) и сколько этих адресов реально используется? А то в прошлом году гугл себе аж /12 оттяпали.
Firz
20.05.2018 12:18Ну вон в статье было про MIT, которые вдруг обнаружили что из своих /8(если не больше) им вообще не нужны 14 миллионов, решили часть (/9) продать.
en.wikipedia.org/wiki/List_of_assigned_/8_IPv4_address_blocks
Судя по википедии, у мин обороны США почти на /4 набралось(13* /8 = 218 103 782)
Noiwex
20.05.2018 12:52+1Тем временем, ростелеком не даёт возможность использовать IPv6 вообще. Сколько ещё ждать?
MaksSlesarenko
20.05.2018 13:13+2Непонятно какие блоки закончились, если мне не изменяет, 16 подсетей класса А были в резерве для следующих поколений, а именно диапазон 240-255.0.0.0. Это они закончились?
AMDmi3
20.05.2018 15:57+2Региональный регистратор RIPE отдал последний блок IPv4
Ну как последний. На днях закончилась последняя сеть под раздачу — 185/8, это да, но если посмотреть графики RIPE: https://www.ripe.net/publications/ipv6-info-centre/about-ipv6/ipv4-exhaustion/ipv4-available-pool-graph то помимо 185/8 есть пул адресов из других сетей, в том числе возвращённые для выделения адреса, и их ещё дофига. При текущей динамике их, увы, хватит ещё на пару лет.
Самое большое число портов NAT — 65 тысяч (с уникальной комбинацией из IP-адреса источника и IP-адреса назначения), значит, столько же локальных адресов можно превратить в один публичный.
Это кто вам такое сказал? Нет никакой прямой связи между количеством портов на машине, осуществляющей трансляцию и размером сети за NAT'ом. Транслируемый поток определяется тройкой <локальный порт, удаленный адрес, удаленный порт>, соответственно основное практическое ограничение состоит в количестве одновременных соединений из сети за NAT'ом на единственный внешний хост: порт — их не может быть больше количества портов используемых для NAT. Т.е. технически можно NATить хоть /8 через один порт, но к google.com больше одного клиента одновременно подключиться не сможет.
Например, протоколы, которые появились раньше этого метода (например, FTP), могут работать через NAT нестабильно
Что значит "нестабильно"? FTP passive mode работает не менее стабильно чем любые другие tcp соединения, он их просто требует больше на одну операцию. Active mode стабильно не работает без специальной поддержки от машины, осуществляющей трансляцию.
а в «Яндексе» используют протокол во внутренних сетях
Стоит добавить что в Яндексе есть целые ДЦ на IPv6 only.
inkvizitor68sl
21.05.2018 05:32> Стоит добавить что в Яндексе есть целые ДЦ на IPv6 only.
Там других и нет уже по сути. v4 наманазан только вокруг legacy и проприетарщины.
Емнип, в 2012 первый ipv6-ready дц запустили, кстати (к ipv6 day).
vagran
Вообще для TCP это не так. Разные внутренние адреса могут использовать один и тот же внешний порт, если они подключаются к разному удалённому адресу или порту. NAT-поток для ответных пакетов идентифицируется по кортежу «удалённый адрес/удалённый порт/внешний порт».
lega
Ответ может приходить не с того сервера (адреса) на который был отправлен.
vagran
Не может. В большинстве реализаций TCP/IP стека открытое соединение идентифицируется локальным и удалённым адресом и портом. Измениться они не могут. Ответы с другого адреса не попадут в открытое соединение, и на них отошлётся RST.