Приложение LuCI для исходящего IKEv2-туннеля, дополнительного входящего IKEv2-сервера и выборочной маршрутизации IPv4-трафика в OpenWrt.
Обычный трафик продолжает идти через домашний WAN. Выбранные сервисы, домены, IP-адреса, сети или устройства могут использовать удаленный IKEv2-шлюз. Если туннель недоступен, такой трафик блокируется и не уходит напрямую через WAN.
Проект совместим с ikev2-manager-ubuntu в качестве удаленного шлюза.
- исходящий IKEv2/EAP-клиент через XFRM-интерфейс;
- маршрутизация доменов через sing-box FakeIP и nftables TProxy;
- встроенные списки сервисов, пользовательские домены, IPv4-адреса и CIDR;
- маршрутизация приложений, использующих фиксированные IP-сети;
- режимы устройств: домены через VPN, весь трафик через VPN или прямой WAN;
- fail-closed PBR и автоматическое восстановление туннеля и маршрутов;
- дополнительный входящий IKEv2/EAP-сервер с управлением пользователями;
- отдельные правила доступа входящих клиентов к Интернету, локальным сетям и службам роутера;
- управление DNS upstream: UDP, TCP, DoT, DoH, HTTP/3, DoQ и DNSCrypt;
- интеграция с ACME;
- русский и английский интерфейсы LuCI.
- официальный OpenWrt
24.10.x; - firewall4/nftables и соответствующие официальные пакеты;
- IPv4 WAN;
- достаточно места для strongSwan, PBR, sing-box,
dnsmasq-fullиdnsproxy.
Vendor firmware, snapshots, firewall3 и OpenWrt 25.12+ в текущем выпуске не поддерживаются. Разработка проверена на GL.iNet Flint 2 с официальным OpenWrt 24.10.7, но совместимость определяется возможностями системы, а не списком моделей роутеров.
Скачайте luci-app-ikev2-manager_1.0.1_all.ipk из
Releases и
загрузите пакет через:
System -> Software -> Upload Package
Установка IPK не запускает VPN, не заменяет DNS и не включает PBR. После установки откройте:
Services -> IKEv2 Manager for OpenWrt -> Overview
Затем:
- установите проверенные runtime-зависимости;
- выберите WAN и защищаемые сети роутера;
- включите управляемый режим;
- настройте и подключите исходящий туннель;
- выберите сервисы или добавьте назначения в разделе Policy Routing;
- при необходимости настройте входящий сервер, ACME и VPN-пользователей.
CLI-установка, миграция, диагностика и восстановление описаны в Operations.
Вопросы по настройке размещайте в GitHub Discussions, а воспроизводимые ошибки — в GitHub Issues. Перед отчетом об ошибке выполните:
/usr/libexec/ikev2-manager-system doctor
/usr/libexec/ikev2-manager overviewУдалите из вывода публичные IP-адреса, приватные домены, имена пользователей и
учетные данные. Не прикладывайте резервную копию роутера и файлы из
/etc/ikev2-manager/ или /etc/swanctl/private/.
Надежный режим оставляет dnsmasq-full клиентским резолвером и отправляет
публичные DNS-запросы через sing-box. Выбранные доменные суффиксы получают
постоянные FakeIP-адреса из 198.18.0.0/15; nftables перехватывает только эти
назначения. sing-box отправляет подходящие источники через ipsec-out, не
затрагивая остальной трафик.
Сервисы с фиксированными сетями могут содержать проверенные CIDR. Также можно добавить:
- пользовательские домены — один суффикс в строке;
- пользовательские IPv4-адреса и сети — один адрес или CIDR в строке;
- правила устройств — доменная маршрутизация, полный туннель или прямой WAN.
Списки собираются во временных файлах и заменяются только после проверки. Ошибки загрузки или неверные пользовательские записи не повреждают предыдущую рабочую конфигурацию. Служба здоровья восстанавливает FakeIP и direct-IP маршрутизацию без перезапуска WAN.
Для классификации доменов клиенты должны использовать DNS роутера. Browser DoH, Android Private DNS и Apple Private Relay могут обходить классификацию. Политики прямых IP/CIDR от DNS не зависят.
Небольшие списки проекта находятся в
luci-ikev2-domains/local-services/. Дополнительные списки загружаются во
время работы из
itdoginfo/allow-domains,
проверяются, кэшируются и не включаются в репозиторий или IPK.
На момент интеграции upstream-репозиторий не публиковал лицензию, поэтому загружаемые данные не покрываются MIT-лицензией этого проекта. См. NOTICE.
- новая установка неактивна;
- неподдерживаемая прошивка и отсутствующие kernel-пакеты отклоняются до настройки;
- выбранный трафик получает недоступный резервный маршрут при отключении IKEv2;
- обновления DNS, маршрутов и списков используют проверку и откат;
- длительные действия LuCI сериализованы и показывают фактический результат;
- VPN- и ACME-секреты передаются через временные файлы с ограниченными правами;
- резервные копии содержат учетные данные и закрытые ключи.
Основная команда проверки и сборки для macOS и Linux:
./scripts/ci-check.shОна проверяет версии, публичное дерево, синтаксис shell и JavaScript, JSON,
runtime-модули, операции со списками доменов/CIDR и воспроизводимость IPK.
Артефакты записываются в dist/.
Исходный код и списки проекта доступны по лицензии MIT. Дополнительные загружаемые списки описаны в NOTICE.