Ниже я опишу как сделать проброс Cloudflare WARP через любой VPN на основе XRay для VRChat. Не буду расписывать пошаговую инструкцию, т.к. метод довольно экзотический и требует знаний по xray.

Можно сделать WireGuard с конифгом WARP работающим локально, не на сервере, но пускать трафик через XRay. Для этого можно использовать цепочку из двух XRay: один работает “дома”, а другой на VPS.
Т.е. получается цепочка: клиент <–> “Домашний” XRay <–> XRay на VPS <–> Интернет.
Недостаток этого способа в том, что нужно где-то держать “Домашний” XRay: это может быть домашний сервер, VPS в России, один из ПК в домашней сети и т.п.
Я не просто так сказал любой VPN на основе XRay, ведь способ не требует своего сервера VPN на VPS! Если сторонний VPN, которым вы пользуетесь, имеет поддержку VLESS (или любого другого протокола совместимого с XRay), то вы можете в “Домашнем” XRay подключить этот сторонний VPN как outbound, настроив WARP одним из способов ниже. т.е. в качестве серверного XRay можно использовать сторонний VPN.
Оба на примере 3x-ui, но можно настроить аналогично либо текстом конфиг XRay, либо другую панель.
На “Домашнем” XRay создаётся Inbound типа tunnel (он же dokodemo door) от какого-то порта (например, Port = 5070)
к какому-нибудь из IP и порту Cloudflare WARP (например, Network = UDP, Target Address = 162.159.192.1, Destination Port = 500),
а в качестве Dialer Proxy указывается ваш Outbound на XRay на VPS.

Теперь вы можете подключаться к “Домашнему” XRay на указанный порт через WireGuard (или AmneziaWG) вместо IP WARP.
См. пример ниже. Т.е. я как будто бы подключаюсь к устройству в локальной сети по обычному WireGuard, а не к Cloudflare WARP, но XRay сам перенаправляет соединение на Cloudflare WARP.

Это работает не только для локальной сети - можно открыть порт во вне и подключаться откуда угодно в пределах России.
На “Домашнем” XRay создаётся Outbound типа WireGuard, с вручную забитыми настройки Cloudflare WARP,
при этом включается Sockopts и в качетсве Dialer Proxy указывается ваш Outbound на XRay на VPS.

Теперь этот Outbound будет работать как Cloudflare WARP. Далее создаются свои Inbound’ы и Routing правила под себя. На практике этот метод лично у меня оказался нестабильным. Я не знаю почему, но Outbound иногда просто случайно перестаёт работать до перезапуска XRay. 🤷🏻