Что было бы лучшим решением при размещении новой услуги в наши дни. IPv4 или IPv6?
Если мы решили запустить его на IPv4-адресе:
Если мы решим запустить его на IPv6-адресе:
Оба конечно. IPv4 останется надолго, и давно пора начинать с IPv6.
IPv4 и IPv6 - это отдельные протоколы, которые не взаимодействуют друг с другом. На данный момент вам нужно будет поддерживать оба протокола.
Получение адресов IPv4 становится все сложнее и дороже, но вам придется сделать свою службу доступной через нее, потому что не все пользователи будут иметь IPv6. С другой стороны, будут пользователи, у которых больше нет полного IPv4. Возможно, им придется поделиться своим IPv4-адресом со многими другими, у них есть только IPv6, и им нужна служба перевода для доступа к службам IPv4 и т. Д. Для этих пользователей и для будущих пользователей вы хотите предлагать свои услуги через IPv6, чтобы они могли достичь его в самый оптимальный способ.
И, надеюсь, в недалеком будущем у всех будет IPv6, и мы сможем избавиться от IPv4, а также от взломов и затрат, необходимых для его работы.
Один из способов запустить новую службу - создать все для IPv6 и поставить рядом с ним транслятор (SIIT-DC или обратный прокси) для преобразования входящих запросов через IPv4 в IPv6. На данный момент вы сможете работать с обоими протоколами, а позже будет легко очистить и удалить устаревшие данные IPv4.
Эта стратегия особенно полезна, если ваша служба работает на кластере серверов. Весь кластер может работать только с IPv6, и вам нужен только один IPv4-адрес на вашем трансляторе. Проще поддерживать только один протокол на большинстве ваших машин, а использование меньшего количества адресов IPv4 также может сэкономить ваши деньги. Вот почему такие компании, как Facebook, тоже делают это.
Что было бы лучшим решением при размещении новой услуги в наши дни. IPv4 или IPv6?
Предполагая, что это служба, предназначенная для использования через общедоступный Интернет клиентами на машинах или сетях, находящихся вне вашего контроля, вы должны поддерживать оба.
Насколько легко / сложно получить адрес IPv4 (учитывая, что они скоро закончатся)?
Для отдельных адресов вы обычно арендуете их у своего хостинг-провайдера, большинство провайдеров по-прежнему включают по одному на каждый сервер, но некоторые начинают взимать дополнительную плату за это. По мере роста рыночной цены IPv4-адресов мы можем ожидать увеличения арендной платы, взимаемой поставщиками услуг.
Если вам нужны блоки для запуска собственной сети, все становится сложнее. Есть рынок IP-блоков, но AIUI это больше похоже на покупку настоящего востока, чем на покупку серверов. В Европе также можно зарегистрироваться в качестве LIR и получить «окончательное распределение» от RIPE, обратная сторона этого подхода - постоянные сборы (сборы за LIR намного выше, чем за «независимое от провайдера» распределение).
Обновление: пул RIPE для «окончательного распределения» теперь также исчерпан.
Можно ли в будущем легко перенести его на IPv6?
Адреса IPv6 больше, чем IPv4, поэтому все, что хранит IP-адреса в поле фиксированного размера (текстовом или двоичном), проблематично. Точно так же адреса IPv6 в текстовой форме используют двоеточия, а не точки, поэтому все, что хранит IP-адреса в формате структурированного текста, потенциально проблематично.
Почти наверняка легче поддерживать и то и другое с самого начала, чем пытаться отслеживать каждое место, где IP-адреса хранятся и обрабатываются постфактум.
Как существующие пользователи IPv6 могут общаться с ним?
В настоящее время большая часть Интернета относится только к v4, поэтому провайдеры должны предоставить своим клиентам некоторые средства для доступа к ресурсам только v4. По мере того, как адреса IPv4 становятся все более дорогими и труднодоступными, они будут искать механизмы, которые позволят им сделать это, не предоставляя каждому клиенту выделенный общедоступный IPv4-адрес.
Существует множество подходов к этому, включая традиционный IPv4 NAT на уровне ISP, DS-Lite, который туннелирует пакеты IPv4 на специальный IPv4 NAT через IPv6, и NAT64, который преобразует пакеты IPv6 в пакеты IPv4. Все они требуют производительности, надежности и способности отслеживать злоупотребления.
Как существующие пользователи IPv4 могут общаться с ним?
В отличие от предыдущего случая, это в основном ваша проблема. Некоторые клиенты могут использовать teredo, но Windows отключает teredo по умолчанию, когда обнаруживает контроллер домена, а большинство других операционных систем вообще не поддерживают его из коробки. Даже при включенном тередо это не самый надежный механизм.
Поэтому, если вы хотите, чтобы ваш сервис работал у большинства пользователей Интернета, вам нужно предложить его на IPv4.
Однако это не обязательно означает, что ваши серверы должны поддерживать IPv4. Например, если вы используете CDN, например Cloudflare или Akamai, то CDN может получать трафик по IPv4 и пересылать его вам по IPv6. Мне также известен один хостинг-провайдер, который предлагает этим клиентам бесплатную услугу обратного прокси. Я ожидаю, что такие вещи станут более распространенными по мере роста стоимости адресов IPv4 и доли клиентов, поддерживающих IPv6.