Цепочка прокси заставляет один исходящий отправлять трафик не наружу, а внутрь другого исходящего. В Xray это делается через proxySettings у outbound: связь между двумя переходами описана в конфиге, никакого дополнительного софта не нужно.

Когда это оправдано

Две типичные причины. Первая: маршрут от вашего провайдера до выходного сервера идёт большим крюком, и отправка трафика через транзит с хорошим путём заметно снижает задержку. Вторая: нужен стабильный выходной IP — некоторые стриминговые сервисы принимают только определённые регионы и не любят постоянно меняющиеся адреса, поэтому транзит можно менять, а выход оставить прежним.

Партнёрский материалОткуда взять ссылку на подписку?Партнёрский сервис даёт 1 ГБ высокоскоростного трафика Гонконга при регистрации — импорт в один клик.Получить быстрые серверы

Каркас конфигурации

Опишите два исходящих, дайте каждому tag и заставьте выходной отправлять данные через транзитный:

"outbounds": [
  { "tag": "landing", "protocol": "vless",
    "settings": { },
    "proxySettings": { "tag": "relay" } },
  { "tag": "relay", "protocol": "vmess",
    "settings": { } }
]

Первый элемент массива — исходящий по умолчанию, поэтому здесь трафик уходит через landing, а пакеты landing перед отправкой заворачиваются в relay. Блок settings каждого исходящего, как обычно, содержит свой адрес сервера, порт и UUID.

Чем приходится платить

  • Задержка складывается из двух переходов. Неудачно выбранный транзит сделает только хуже, поэтому измерьте каждый участок отдельно, прежде чем связывать их.
  • Mux на обоих переходах заметно усиливает эффект очереди — отключите его хотя бы с одной стороны.
  • Пропускная способность равна более узкому переходу: транзит на тонком канале станет узким местом.

Как это сделать в v2rayN

Графические поля такую структуру не выражают, поэтому нужно импортировать полный json через пользовательскую конфигурацию. Прежде чем писать его, прочтите разбор структуры config.json, особенно про связь outbounds и тегов.