Добавление всех доступных аутбаундов в v2ray-json подписку

Сейчас при генерации v2ray-json подписки панель добавляет только один аутбаунд — ту локацию, для которой формируется подписка. Однако у многих пользователей есть сценарии, где нужно пускать определённый трафик (например, YouTube) через конкретную локацию (например, Россию), независимо от основной локации подключения.

Предложение:

Вместо добавления одного аутбаунда, добавлять все доступные локации в список аутбаундов. При этом нужную (основную) локацию ставить первой.

Пример:

Если доступны 3 локации: Финляндия, Германия, Россия.

Аутбаунды для Финляндии:

  1. Финляндия
  2. Германия
  3. Россия

Аутбаунды для Германии:

1. Германия

2. Финляндия

3. Россия

Аутбаунды для России:

1. Россия

2. Финляндия

3. Германия

Дополнительный функционал:

Добавить возможность в интерфейсе панели выбрать, какие дополнительные аутбаунды следует включить в подписку помимо основного. Это даст контроль над тем, какие аутбаунды будут в json подписке, и позволит избежать лишнего увеличения подписки, если нужны только 1–2 дополнительных аутбаунда.

Преимущества:

• Даёт возможность гибко настраивать роутинг на стороне клиента.

• Не ломает текущую логику: если в routing не срабатывает ни одно правило — трафик уходит на первый аутбаунд.

• Поведение ядра xray остаётся корректным — порядок аутбаундов после первого значения не имеет, если явно не указано в правилах.

• С возможностью выбора конкретных аутбаундов можно минимизировать размер подписки и включать только нужные.

Потенциальные минусы:

• v2ray-json подписка станет немного больше.

• Конфиг будет содержать и другие локации, даже если пользователь делится только одной.

• Возможны сложности, если кто-то ожидает, что в подписке будет только один аутбаунд.

Сравнение:

Аналогичное поведение реализовано в Clash/Sing-box: один конфиг содержит все локации, выбор осуществляется селектором.

Можно реализовать как опциональное поведение при генерации json подписки с возможностью выбора дополнительных аутбаундов.

Предложение было озвучено timur в чате.