Содержание

Развёртывание Wireguard VPN с доступом к IPv6 в OpenWrt

Подключим OpenWrt к IPv6 сегменту Интернета, настроим Wireguard VPN, предоставив доступ к IPv6 сети клиентам из IPv4 сети.

В файл /etc/config/network добавляем IPv6-интерфейс:

cfg

config interface 'wan6'
  option device 'eth0'
  option proto 'static'
  list ip6addr '2001:db8:10::11:123/64'
  option ip6gw '2001:db8:10::1'
  list dns '2606:4700:4700::1111'

Применяем:

shell-session

# service network restart

Установка выполняется командой:

shell-session

# opkg install wireguard-tools luci-app-wireguard

В файл /etc/config/network добавляем Wireguard-интерфейс:

cfg

config interface 'wg1'
  option proto 'wireguard'
  option private_key 'wTJrvjJXLhOBioOstz9W3nhbfWnpcHihaeO8fFzQH0g'
  option listen_port '51820'
  list addresses '10.11.12.1/24'
  list addresses 'fd66:3b79:5c0d:1112::1/64'

где IPv6-адрес — ULA-адрес, если в наличии только один адрес.

В тот же файл добавляем конфигурацию клиента:

cfg

config wireguard_wg1
  option description 'client1'
  option public_key 'bPwnVzMo63h1HtU1J/Wx9HhUjvRAbDAD1Tg6cTVUPAJ'
  list allowed_ips '10.11.12.111/32'
  list allowed_ips 'fd66:3b79:5c0d:1112::111/128'

Применяем настройки:

shell-session

# service network restart

В файле /etc/config/firewall разрешаем внешние подключения к VPN:

cfg

config rule
  option name 'Allow-Wireguard'
  list proto 'udp'
  option src 'wan'
  option dest_port '51820'
  option target 'ACCEPT'

Если на предыдущем шаге для IPv6 выбрали частный диапазон, тот нужно включить NAT для IPv6 — в том же файле в конфигурацию внешней зоны добавить:

cfg

config zone
  option name 'wan'
  option masq6 '1'

Готово.

  1. IPv6 configuration
  2. WireGuard basics
  3. Private network
  4. NAT66 and IPv6 masquerading
  5. Filter ICMPv6 with tcpdump