Issue Details
Сейчас я использую AdGuard VPN, однако для более сложных сценариев маршрутизации приходится дополнительно использовать приложения на базе XRay/Clash, например Stash или Karing.
Основная причина — возможность задавать правила, определяющие, какой трафик должен идти напрямую, а какой — через определённый VPN/proxy-сервер.
Было бы здорово, если подобный функционал был реализован кроссплатформенно и был доступен в версиях AdGuard VPN для: iOS, Windows, Android.
Пример практического сценария. Мне необходимо, например:
- российские сайты и IP-адреса направлять напрямую;
- сервисы Apple также отправлять напрямую;
- отдельные сервисы направлять через сервер в США;
- некоторые сайты — через сервер в другой выбранной стране;
- для остального трафика использовать выбранный вручную VPN-сервер.
В Stash подобная логика может строиться с использованием баз GeoSite и GeoIP и правил примерно следующего типа:
GEOSITE,category-ru,DIRECT
GEOIP,RU,DIRECT
GEOSITE,apple,DIRECT
DOMAIN-SUFFIX,pandora.com,US
MATCH,PROXY
Это значительно удобнее обычного режима split tunneling по приложениям, поскольку маршрутизация выполняется на уровне доменов, IP-адресов и групп сервисов.
Возможные варианты реализации
Вариант 1. Реализовать расширенную маршрутизацию непосредственно в AdGuard VPN
Было бы полезно добавить поддержку правил на основе: GeoSite, GeoIP;
Для каждого правила желательно иметь возможность выбирать маршрут:
- DIRECT;
- AdGuard VPN;
- конкретная страна;
- конкретная VPN-локация;
- группа серверов.
Особенно полезной была бы возможность одновременно использовать несколько маршрутов, например:
RU → DIRECT
Apple → DIRECT
Pandora → AdGuard VPN USA
остальной трафик → выбранный пользователем сервер AdGuard VPN
То есть фактически речь идёт о rule-based routing, аналогичном тому, который используется в Stash, Karing, Clash/XRay и других подобных клиентах.
Вариант 2. Дать возможность использовать серверы AdGuard VPN через сторонние клиенты
Альтернативный вариант — предоставить возможность использовать подписку AdGuard VPN в Stash, Karing и других совместимых клиентах.
Например, это мог бы быть:
- VLESS-профиль / subscription URL;
- SOCKS5 proxy;
- другой стандартный proxy-интерфейс, подходящий для подобных клиентов.
В таком случае AdGuard VPN предоставлял бы VPN-инфраструктуру и серверы, а пользователь при необходимости мог бы самостоятельно реализовать сложную маршрутизацию в Stash/Karing или другом совместимом клиенте.
Для iOS этот вариант особенно полезен, поскольку одновременно запускать два независимых VPN-клиента затруднительно: и AdGuard VPN, и Stash используют системный VPN-туннель.
Почему это может быть полезно
Современные VPN всё чаще используются не просто по принципу «весь трафик через одну страну».
Например, пользователю может одновременно требоваться:
- локальный трафик — напрямую;
- часть иностранных сервисов — через США;
- другая часть — через европейский сервер;
- банковские и локальные приложения — без VPN.
Кроме того, у одного пользователя обычно несколько устройств и операционных систем. Поэтому особенно ценным был бы "единый механизм маршрутизации AdGuard VPN для iOS, Android и Windows", желательно с возможностью синхронизации или переноса правил между устройствами.
Поддержка GeoSite/GeoIP и более гибких правил значительно расширила бы возможности AdGuard VPN для продвинутых пользователей.
Если реализация полноценного rule-based routing внутри AdGuard VPN слишком сложна, возможность использования серверов AdGuard VPN через стандартный proxy-протокол или subscription для сторонних клиентов также решила бы эту задачу.
Proposed solution
.
Alternative solution
.
Issue Details
Сейчас я использую AdGuard VPN, однако для более сложных сценариев маршрутизации приходится дополнительно использовать приложения на базе XRay/Clash, например Stash или Karing.
Основная причина — возможность задавать правила, определяющие, какой трафик должен идти напрямую, а какой — через определённый VPN/proxy-сервер.
Было бы здорово, если подобный функционал был реализован кроссплатформенно и был доступен в версиях AdGuard VPN для: iOS, Windows, Android.
Пример практического сценария. Мне необходимо, например:
В Stash подобная логика может строиться с использованием баз GeoSite и GeoIP и правил примерно следующего типа:
GEOSITE,category-ru,DIRECT
GEOIP,RU,DIRECT
GEOSITE,apple,DIRECT
DOMAIN-SUFFIX,pandora.com,US
MATCH,PROXY
Это значительно удобнее обычного режима split tunneling по приложениям, поскольку маршрутизация выполняется на уровне доменов, IP-адресов и групп сервисов.
Возможные варианты реализации
Вариант 1. Реализовать расширенную маршрутизацию непосредственно в AdGuard VPN
Было бы полезно добавить поддержку правил на основе: GeoSite, GeoIP;
Для каждого правила желательно иметь возможность выбирать маршрут:
Особенно полезной была бы возможность одновременно использовать несколько маршрутов, например:
RU → DIRECT
Apple → DIRECT
Pandora → AdGuard VPN USA
остальной трафик → выбранный пользователем сервер AdGuard VPN
То есть фактически речь идёт о rule-based routing, аналогичном тому, который используется в Stash, Karing, Clash/XRay и других подобных клиентах.
Вариант 2. Дать возможность использовать серверы AdGuard VPN через сторонние клиенты
Альтернативный вариант — предоставить возможность использовать подписку AdGuard VPN в Stash, Karing и других совместимых клиентах.
Например, это мог бы быть:
В таком случае AdGuard VPN предоставлял бы VPN-инфраструктуру и серверы, а пользователь при необходимости мог бы самостоятельно реализовать сложную маршрутизацию в Stash/Karing или другом совместимом клиенте.
Для iOS этот вариант особенно полезен, поскольку одновременно запускать два независимых VPN-клиента затруднительно: и AdGuard VPN, и Stash используют системный VPN-туннель.
Почему это может быть полезно
Современные VPN всё чаще используются не просто по принципу «весь трафик через одну страну».
Например, пользователю может одновременно требоваться:
Кроме того, у одного пользователя обычно несколько устройств и операционных систем. Поэтому особенно ценным был бы "единый механизм маршрутизации AdGuard VPN для iOS, Android и Windows", желательно с возможностью синхронизации или переноса правил между устройствами.
Поддержка GeoSite/GeoIP и более гибких правил значительно расширила бы возможности AdGuard VPN для продвинутых пользователей.
Если реализация полноценного rule-based routing внутри AdGuard VPN слишком сложна, возможность использования серверов AdGuard VPN через стандартный proxy-протокол или subscription для сторонних клиентов также решила бы эту задачу.
Proposed solution
.
Alternative solution
.