IPv6 на VPS: как пользоваться префиксом /64

Что значит /64, как проверить адрес на сервере, назначить дополнительные адреса, настроить ufw для IPv6 и не выпасть из сети. Примеры команд и типичные ошибки.

Команда EGN 10 мин чтения
IPv6 на VPS: как пользоваться префиксом /64
Содержание 17
  1. Коротко
  2. Что значит /64
  3. Шаг 1. Смотрим адрес на сервере
  4. Шаг 2. Проверяем связь
  5. Шаг 3. Добавляем адрес вручную
  6. Шаг 4. Настраиваем ufw для IPv6
  7. Примеры: сайт, доступный по обоим стекам
  8. Пример: сайт открывается, но не по IPv6
  9. Что проверить после изменений
  10. Почему IPv6 стоит включить сразу
  11. Таблица: симптом, причина и решение
  12. Частые ошибки
  13. Вопросы и ответы
  14. Нужен ли IPv6, если всё работает по IPv4?
  15. Что такое /64 простыми словами?
  16. Есть ли IPv6 у VPS EGN?
  17. Итог

Коротко

Префикс /64 — это сеть, в которой первые 64 бита адреса задают саму сеть, а последние 64 бита нумеруют узлы. Таких адресов в одной сети больше, чем IPv4-адресов во всём интернете, поэтому IPv6 не требует экономии, как IPv4. На VPS проверьте адрес командой ip -6 addr show scope global, маршрут командой ip -6 route и убедитесь, что DNS-запись AAAA указывает на правильный адрес. Файрвол ufw защищает и IPv6, если включён IPv6 в его настройках.

Доступность IPv6 зависит от тарифа и региона. На ноябрь 2026 у VPS линейки HI-CPU в Германии публичного IPv6 нет: в каталоге указан только IPv4, а в карточке услуги, вкладка «Сеть», строки «IPv6» и «Дополнительный IPv4» помечены «скоро». Для линейки «10G VPS» в Польше IPv6 /64 запланирован, но схема выдачи клиентам уточняется. Поэтому статья пригодится в двух случаях: когда IPv6 у вас появится, и когда вы настраиваете его на другом хостинге.

Что значит /64

Адрес IPv6 записывается в восемь групп по четыре шестнадцатеричные цифры, например 2001:db8:1234:5678:0:0:0:10. Сокращённо его пишут так: 2001:db8:1234:5678::10. Двойное двоеточие заменяет группу нулей, и такая замена допускается один раз в адресе.

Запись 2001:db8:1234:5678::/64 означает сеть из первых 64 бит, то есть префикс 2001:db8:1234:5678. Всё, что после него, — это адреса внутри сети. Размер сети равен 2 в степени 64, то есть около 18 квинтиллионов адресов. Такой блок выделяется одной машине или одной сети, и перебирать его перебором на практике невозможно.

Пример из документации IPv6 (префикс 2001:db8::/32 зарезервирован для примеров) выглядит так:

Устройство префикса /64
Устройство префикса /64

Для практики важно другое: если провайдер выделил вам /64 целиком, внутри него можно назначить столько адресов, сколько нужно, без дополнительного согласования. Именно это делает IPv6 удобным для нескольких сервисов на одном VPS. Но уточните условия: некоторые провайдеры выдают на машину один адрес из общей сети, и тогда дополнительные адреса работать не будут.

Шаг 1. Смотрим адрес на сервере

Если на вашем сервере IPv6 настроен, проверьте, что интерфейс получил адрес:

Терминал
ip -6 addr show scope global

В выводе будет строка inet6 с адресом и маской, например 2001:db8:1234:5678::10/64. Адрес с маской /64 — это тот, который сервер использует как свой. Если строки нет, адрес не назначен, и дальше настраивать нечего. На VPS HI-CPU в Германии вы сейчас увидите только адрес fe80:: с областью link: он служебный, наружу не работает. Публичного IPv6 добавить вручную нельзя, потому что его не выдают.

Адреса IPv6 на сервере
Адреса IPv6 на сервере

Маршрут по умолчанию для IPv6 смотрим так:

Терминал
ip -6 route

Строка default via fe80::... означает, что шлюз сообщает о себе через Router Advertisement. Это штатный режим, его не нужно править руками.

Шаг 2. Проверяем связь

Пинг до внешнего IPv6-адреса покажет, работает ли маршрут:

Терминал
ping -6 -c 4 2606:4700:4700::1111

Адрес в примере — публичный DNS-сервер Cloudflare. Если пинг проходит, сервер выходит в IPv6-интернет. Если нет, проверьте маршрут и правила фаервола.

Теперь DNS. Для проверки AAAA-записи домена:

Терминал
dig AAAA example.com +short

Команда вернёт IPv6-адреса домена, если они есть. Сравните их с адресом вашего сервера. Если домен указывает на другой адрес или не имеет AAAA, клиенты с IPv6 попадут не туда.

Проверка связи и DNS по IPv6
Проверка связи и DNS по IPv6

Шаг 3. Добавляем адрес вручную

Иногда нужен второй адрес в том же /64, например для второго сайта. Временно добавить адрес можно командой:

Терминал
sudo ip -6 addr add 2001:db8:1234:5678::20/64 dev eth0

Такая настройка сбрасывается после перезагрузки. Для постоянной работы адрес записывают в конфигурацию сети через netplan или в систему cloud-init, которая управляет сетью образа. Правку netplan делайте осторожно и проверяйте командой sudo netplan try: она применит настройки на время и откатит их, если связь пропадёт.

Имя интерфейса eth0 может отличаться. Посмотрите его командой ip link.

Не правьте сеть без страховки

Изменение сетевых настроек по SSH может оборвать соединение. Держите открытое второе окно или консоль из кабинета и применяйте изменения через netplan try, а не сразу через netplan apply.

Шаг 4. Настраиваем ufw для IPv6

Если ufw включён, по умолчанию он закрывает и IPv6. Проверьте, что в его конфигурации включена поддержка IPv6:

Терминал
grep IPV6 /etc/default/ufw

Должна быть строка IPV6=yes. Если она есть, правила allow работают и для IPv4, и для IPv6. Отдельно разрешать порты для IPv6 не нужно: одно правило ufw allow 443/tcp покрывает оба стека.

Проверить, что правила дошли до IPv6, можно командой:

Терминал
sudo ufw status | grep v6

Строки с (v6) в конце показывают правила для IPv6. Если их нет, а IPv6 включён, перезапустите ufw командой sudo ufw reload.

Примеры: сайт, доступный по обоим стекам

Допустим, на VPS работает nginx с двумя доменами. Оба стека должны отвечать на 80 и 443. В nginx слушайте оба адреса:

Текст
server {
    listen 80;
    listen [::]:80;
    server_name example.com;
    # остальные директивы
}

Строка listen [::]:80 добавляет слушание IPv6 на порту 80. Без неё сайт доступен только по IPv4, даже если адрес IPv6 есть на сервере. Проверьте это запросом с IPv6-адреса: curl -6 -I http://example.com.

Пример: сайт открывается, но не по IPv6

Допустим, пользователь с мобильного интернета жалуется, что сайт не открывается, хотя с компьютера всё работает. Чаще всего это значит, что у клиента есть только IPv6 или что DNS выдаёт адрес, который не отвечает по IPv6. Разбор занимает несколько команд.

Сначала проверьте DNS. Домен должен иметь AAAA-запись с адресом вашего сервера. Для примера в зоне это выглядит так:

Текст
example.com.      300  IN  A     203.0.113.10
example.com.      300  IN  AAAA  2001:db8:1234:5678::10

Строка A — адрес IPv4, строка AAAA — адрес IPv6. Оба должны вести на один и тот же сервер. Если AAAA отсутствует, клиенты с IPv6 пойдут через IPv4 или не попадут никуда, в зависимости от сети.

Затем проверьте, что сервер слушает IPv6:

Терминал
sudo ss -tlnp | grep ':80\|:443'

В выводе должны быть строки с [::]:80 и [::]:443. Если их нет, nginx слушает только IPv4, и проблема в конфиге. Добавьте listen [::]:443 ssl; в блок server и перечитайте конфиг командой sudo nginx -t && sudo systemctl reload nginx.

Наконец, проверьте снаружи. Запрос с IPv6-адреса должен вернуть ответ сайта:

Терминал
curl -6 -I https://example.com

Если запрос работает, а клиент жалуется, проверьте его сеть и кэш DNS. Если запрос не работает, смотрите правила ufw для порта 443: правило ufw allow 443/tcp покрывает и IPv6, но только при IPV6=yes.

Что проверить после изменений

После настройки IPv6 полезен короткий чек-лист. Он занимает пять минут и защищает от ситуаций, когда сервер работает наполовину:

  1. ip -6 addr show scope global показывает адрес с /64.
  2. ip -6 route содержит маршрут по умолчанию.
  3. ping -6 -c 4 до публичного адреса проходит.
  4. dig AAAA ваш-домен +short возвращает ваш адрес.
  5. curl -6 -I возвращает ответ сайта.
  6. sudo ufw status | grep v6 показывает правила для IPv6.

Если любой пункт не проходит, дальше не идите, а разбирайтесь с ним. Чаще всего сбой в DNS или в правилах фаервола, а не в самом адресе.

Почему IPv6 стоит включить сразу

Аргумент «у нас всё работает по IPv4» верен, пока трафика немного. Со временем часть пользователей, особенно с мобильных сетей, ходит по IPv6 или через трансляцию адресов (NAT64). Большинство сетей при этом отлично открывают IPv4-сайты, так что отсутствие IPv6 редко ломает доступность. Поэтому правило простое: если провайдер выдал рабочий IPv6, включайте его сразу при настройке сервера, а если нет, спокойно живите на IPv4 и не добавляйте AAAA.

Таблица: симптом, причина и решение

Симптом Причина Решение
ip -6 addr show scope global ничего не показывает Публичный IPv6 не выдан (на HI-CPU в Германии сейчас так) Не добавляйте AAAA-запись. Следите за новостями каталога, уточняйте в поддержке
Пинг по IPv6 не проходит Нет маршрута или фаервол режет ICMPv6 Проверьте ip -6 route и правила ufw
Сайт открывается по IPv4, но не по IPv6 Nginx слушает только 0.0.0.0 Добавьте listen [::]:80 и listen [::]:443 ssl
Клиенты с IPv6 не попадают на сайт AAAA-запись указывает на другой адрес Обновите DNS, проверьте dig AAAA
После перезагрузки адрес пропал Добавлен командой ip addr без постоянной настройки Внесите адрес в netplan или в конфиг cloud-init
netplan apply оборвал SSH Новая конфигурация неверна Зайдите через консоль, исправьте файл, используйте netplan try

Частые ошибки

Считать IPv6 дефицитным ресурсом. Внутри /64 адресов хватает с запасом. Не пытайтесь экономить, назначая адрес на каждый сервис без нужды: достаточно одного и разных портов.

Забыть про AAAA, или, наоборот, добавить её зря. Если у сервера есть рабочий IPv6, а в DNS нет AAAA, IPv6-клиенты придут по IPv4 или не придут вовсе, что зависит от их сети. Если же IPv6 на сервере нет, AAAA добавлять нельзя: клиенты с IPv6 получат адрес, который не отвечает, и сайт у них будет открываться медленно или не откроется. Добавляйте AAAA только после проверки ping -6 и curl -6.

Открыть IPv6 без ufw. Правила для IPv4 не закрывают IPv6 автоматически. Проверьте IPV6=yes и правила с пометкой (v6).

Перепутать префикс и адрес. Адрес сервера — это одна точка внутри /64, а префикс — вся сеть. В конфиге и в DNS указывайте адрес, а не префикс.

Вопросы и ответы

Нужен ли IPv6, если всё работает по IPv4?

Не обязательно, но часть пользователей и провайдеров уже ходит по IPv6. Настройка делается один раз и не мешает IPv4.

Что такое /64 простыми словами?

Это сеть, в которой адрес делится на часть «сеть» и часть «узел». Вторая часть огромная, поэтому адресов хватает всем сервисам на сервере.

Есть ли IPv6 у VPS EGN?

На ноябрь 2026 у линейки HI-CPU в Германии нет: тарифы включают IPv4, а в карточке услуги IPv6 помечен «скоро». Для 10G VPS в Польше IPv6 /64 планируется, подробности уточняйте в поддержке на help@egn-cloud.ru. Если адрес появится, сверяйтесь с выводом ip -6 addr на самом сервере.

Итог

IPv6 на VPS — это адрес с маской /64, который нужно проверить на сервере, маршрут, DNS и фаервол. Внутри /64 адресов достаточно для любых задач, но сеть надо настраивать аккуратно: изменения через netplan и правила ufw могут оборвать доступ, поэтому держите страховку. Дальше полезно вернуться к базовой защите VPS и к мониторингу сети и ресурсов.

Сервер под VPS за пару минут — egnetwork.ru

Читать далее

Вся рубрика →