Гайд по настройке IPv6-туннелей (v.1.0)
В данном гайде будут рассматриваться примеры настройки на прошивке Openwrt. Настройка DNS и DHCPv6 необходима для каждого из предложенных способов.
Разница между 6to4 и 6in4 описана тут: https://version6.ru/ways
Требования:
• Роутер с поддержкой IPv6, 6to4 и 6in4 (опционально). Если роутер с Openwrt, нужно установить пакеты 6to4 и 6in4.
• "Белый" IP-адрес, можно динамический
### Простой способ (6to4):
Заходим в настройки Openwrt > Сеть > Интерфейсы > WAN6 > Протокол > IPv6 через IPv4 > Изменить протокол > Сохранить > Сохранить и применить
### Сложный способ (6in4):
Для начала нужно выбрать туннельного брокера. Российским пользователям будет проще использовать IP4Market, т.к. он расположен ближе всего.
Если выбрали IP4Market:
Заходим на https://tb.ip4market.ru/ и заполняем форму регистрации. В качестве e-mail указываем любой свой адрес. Не указывайте адрес ProtonMail или Tutanota, т.к. они заблокированы Роскомнадзором и письмо не придёт. Номер телефона указывать необязательно.
На указанную почту придёт сообщение с паролем для личного кабинета, в котором указаны параметры для дальнейшей настройки и ключ API для обновления динамического IP.
Если выбрали Hurricane Electric:
Заходим на https://tunnelbroker.net/register.php , заполняем форму. Данные для формы можно взять из любого генератора, но логин, e-mail и пароль нужно вводить свой.
В личном кабинете выбираем Create Regular Tunnel > В поле IPv4 Endpoint указываем свой IPv4 адрес (важно, чтобы он мог пинговаться), далее выбираем сервер ближайшего к нам региона и жмём Create Tunnel.
Для просмотра параметров туннеля выбираем Account Info и в Configured Tunnels выбираем свой созданный туннель. Для выделения подсети /48 надо нажать Align напротив строчки Routed /48.
Настраиваем 6in4 на самом роутере:
Заходим в настройки Openwrt > Сеть > Интерфейсы > WAN6 > Протокол > IPv6 в IPv4 (RFC4213) > Изменить протокол > Сохранить > Сохранить и применить
Снова заходим в настройки WAN6 и указываем параметры от брокера:
Удалённый IPv4-адрес: Server IPv4 address
Локальный IPv6-адрес: Server IPv6 address
IPv6 направление префикса: Routed /48 или Routed /64. Для /64 можно указать свой 4-й блок адреса, а не предложенный брокером. Например, 2a03:e440:534a:DDDD::/64, где DDDD ваше значение в формате HEX.
Динамический туннель: включать и настраивать, только если вы выбрали Hurricane Electric
Жмём Сохранить > Сохранить и применить
### Настройка DNS и DHCPv6:
В меню интерфейсов выбрать LAN > DHCP-сервер > Настройки IPv6:
Доступные режимы работы: режим сервера
DHCPv6 сервис: режим сервера
NDP-прокси: отключен
DHCPv6 режим: без и с сохранением состояния
Объявить DNS сервера: указываем IPv6-адреса DNS
CloudFlare DNS IPv6
2606:4700:4700::1111
2606:4700:4700::1001
Google DNS IPv6
2001:4860:4860::8888
2001:4860:4860::8844
Yandex DNS IPv6
2a02:6b8::feed:0ff
2a02:6b8:0:1::feed:0ff
OpenNIC DNS IPv6
2a03:b0c0:0:1010::de7:a001
2a00:dcc0:eda:88:245:71:858e:a15
Жмём Сохранить > Сохранить и применить
### FAQ ###
В: Почему Windows не получает IPv6-адрес?
О: Перейти в Сеть > Интерфейсы > вкладка Основные настройки сети > стереть поле IPv6 ULA-префикс
В: Почему IPv6 палит мой MAC адрес?
О: Включите IPv6-privacy
В: Как пробросить порт для IPv6?
О: IPv6 не использует NAT. Каждое устройство имеет свой адрес, поэтому достаточно просто открыть порт.
В: Как задать приоритет IPv4 над IPv6?
О: Для Windows нужно открыть командную строку в режиме администраторы и выполнить команды:
netsh interface ipv6 set prefix ::ffff:0:0/96 100 4 active
netsh interface ipv6 set prefix ::ffff:0:0/96 100 4 persistent
Для Linux нужно открыть файл /etc/gai.conf и раскомментировать строчку "precedence ::ffff:0:0/96 100"
В: Как задать статический IPv6-адрес на Openwrt?
О: Необходимо сначало задать статический IPv4 адрес для конкретного устройства, затем необходимо указать желаемый суффикс, окончание, для IPv6 -адреса в формате HEX. Например, DEAD или BEAF. Для Linux-клиента необходимо указать ещё и DUID.