Статья о том, как я поднимал у себя дома IPv6 без моего провадера. Мой провадер не предостаялет IPv6 по умолчанию, но есть обходные пути. А еще услуга IPv6 недоступна при активации статического IP. Итак, ранее я рассказывал что мной был поднят гипервизор ESXi для организации большого количесва маленьких серверов и сервисов. А раз у меня есть такой инструмент, почему не поднять себе IPv6 шлюз для Интернет. Сказано - сделано.
За основу был взят образ минимального Debian 10 (если интересна базовая подготовка, напишите комментарий и я обязательно напишу статью о установке минимального Debian).
А провайдером - IPv6 сети стал Hurricane Electric. Интерфейс простой, регистрируемся и получаем две /64 сети, аодна из которых маршрутизируемая.
Далее проложаем подготовку в системе. Первым делом нужно настроить наш Debian сервер на статический локальный IPv4 адрес. Для этого настроим файл конфигурации сетевых интерфейсов:
Внесем правки
Перезапускаем сеть
и убеждаемся, что она продолжает работать выполнив простой ping запрос:
Пинги идут? Если да, тогда все хорошо и переходим к настройке тунельного интерфейса, правим его в файле /etc/network/interfaces
Можно сравнить, какой адрес указан в интерфейса брокера
Если все успешно, можно перезапустить сеть, и поднять новый интерфейс.
После чего можно уже пинговать IPv6 адреса:
Первая эпопея закончилась, следующая задача - раздать IPv6 в локальную сеть. Для этого нам потребуется сетевой интерфейс, который смотрит в локальную сеть (так как у меня устройство итак в локальной сети, я обудусь уже имеющимся у меня интерфейсом ens192 и не буду плодить сущности).
Далее на свой интерфейс в локальной сети я добавляю IP маршрутизиремой сети (опять редкартируем файл конфигурации интерфейсов)
Внесем правки
Обратите внимание на замаскированные адреса. В маршрутизиремом на 1 больше.
тперерь необходимо установить демона "Router Advertisement Daemon" radvd, который будет раздавть IPv6 адреса в локальной сети, выполним следующую команду:
Далее необходимо настроить файл конфигурации демона
И указать наши параметры
Следующим шагом, необходимо включить маршрутизации IPv6, для этого необходимо отредактировать файл sysctl.conf выполнив команду
и разкоментировать или добавить следующие строки
И выполнить с правами root:
Теперь можно перезапустить сетевые интерфейсы (подключения) на других клиентах в локальной сети и убедиться, что работает IPv6
Можно сказать, что все работает и забыть, но это не безопасно. Так как все клиенты в локальной сети становяся доступны по IPv6 из сети интернет, а это не безопасно. Настроим ip6tables. Выполним следующие команды:
Всё. Теперь клиенты могут ходит в интернет по IPv6, но они не будут доступны из вне.