Основная идея заключается в вынесении функционала, отвечающего за работу с VPN соединением в отдельный контроллер. В контроллере присутствуют сервисы и логика. Сервисы
- Открывают системное VPN соединение
- Работают с драйвером виртуальной сетевой карты, отправляя пакеты в локальный socks (tun2socks или hev-socks5)
- Туннелируют данные из локального socks в VPN ноду (LibXray, Sing-Box)
https://github.com/VPNclient/VPNclient-app - репозиторий примера приложения на Flutter
https://github.com/VPNclient/VPNclient-controller-flutter - VPN Client Controller на Flutter
Примеры форков прототипов для заказчиков:
https://github.com/VPNclient/SuperHit-VPNclient-app - Super Hit
https://github.com/VPNclient/fineVPN-VPNclient-app - fineVPN.org
- Высокая производительность: Вся логика и службы по работе с VPN соединением вынесена на нативные языки, а не на Flutter. Критически важные функции, такие как маршрутизация трафика, автовыбор серверов и пропинговка, реализованы на нативных языках (Swift для iOS, Kotlin для Android), что обеспечивает максимальную производительность, стабильность и остуствие лагов.
- Единая кодовая база: UI и пользовательские функции реализованы на Flutter, что позволяет легко адаптировать её для разных платформ (iOS, Android, Windows, macOS, Unix).
- Гибкость: Логика взаимодействия с вашим API (Авторизация, оплаты, ...) реализована на Flutter, что позволяет быстро и легко адаптировать её под ваши нужды без необходимости изменять нативный код.
- Надежность: Нативные компоненты контроллера обеспечивают стабильную работу критически важных функций, таких как управление VPN-соединениями и маршрутизация трафика.
- OpenSource защищает от рисков, связанных с потерей доступа к исходному коду или разработчикам. Если основной разработчик перестанет поддерживать проект, сообщество или другие специалисты смогут продолжить работу.
- Вы можете самостоятельно вносить изменения в код, добавлять новые функции или исправлять ошибки без необходимости ждать поддержки от основной команды.
- OpenSource проекты развиваются благодаря вкладу множества разработчиков. Это означает, что вы получаете регулярные обновления, исправления и новые функции.
- Вы можете использовать оригинальную версию OpenSource или создать свою ветку (форк) с уникальными изменениями.
- Если в OpenSource решение вносятся улучшения (например, поддержка новых протоколов или исправление уязвимостей), вы можете быстро интегрировать эти изменения в свой проект.
- Вы можете добавлять уникальные функции, которые не будут доступны в основной версии OpenSource. Например, интеграция с вашим API, кастомная маршрутизация трафика или уникальные элементы интерфейса.
- Вы можете самостоятельно обновлять свою версию OpenSource, интегрируя новые функции и исправления из основной ветки.
- OpenSource решения менее подвержены рискам, связанным с прекращением поддержки или банкротством компании-разработчика.
- OpenSource код открыт для проверки, что позволяет убедиться в отсутствии скрытых уязвимостей или нежелательных функций.
- OpenSource VPN Client Controller позволяет использовать решение бесплатно для некоммерческих проектов или небольших стартапов. Для коммерческого использования предлагаются прозрачные условия лицензирования.
OpenSource VPN Client Controller — это надежное, гибкое и экономически выгодное решение для создания VPN-приложений. Вы получаете полный контроль над кодом, возможность кастомизации и поддержку сообщества, что делает его идеальным выбором для бизнеса.