Перейти к содержимому

👻 mux.cool (Xray Mux)

В Prizrak-Core есть мультиплексирование mux.cool, совместимое с Xray. Это тот же протокол, что mux в Xray-core: TCP-потоки и UDP/XUDP-сессии идут поверх общих TCP-соединений. Используется реализация из MetaCubeX/mihomo#2980. Она расширеннее, чем в Xray-core, но полностью с ним совместима.

  • Клиент. Включается у прокси отдельно от smux. Включать их вместе нельзя.
  • Сервер. mux.cool от клиентов Xray принимает любой входящий на общем обработчике sing: VLESS и VMess, а также Trojan, Shadowsocks, AnyTLS, TUIC, Hysteria2 и другие, поверх любого транспорта, в том числе XHTTP. Параметр на сервере не нужен. Через XHTTP сервер может не давать CDN обрывать простаивающее скачивание, см. mux-keep-alive-secs на странице XHTTP.
  • XUDP. Отдельные UDP-сессии с управлением их количеством и политикой для UDP/443.
  • Ограничение соединений. Можно ограничить, сколько TCP-соединений открывается всего, сколько сессий идёт по каждому одновременно и сколько сессий соединение проводит за время жизни. Потом соединение заменяется новым.
proxies:
- name: vless-mux
type: vless
# ...
mux.cool:
enabled: true
# max-carriers: 0 # максимум TCP-соединений, 0 — без ограничения
# max-concurrency: 8 # активных сессий на одно соединение
# max-connections: 128 # сессий за время жизни соединения до ротации
# xudp-concurrency: 4 # отдельных XUDP-сессий на соединение, 0 — общий пул
# xudp-proxy-udp443: reject # reject | allow | skip — что делать с UDP/443

xudp-proxy-udp443 решает, что делать с UDP-потоками на порт 443 (QUIC):

  • reject (по умолчанию): поток отклоняется с ошибкой, как в Xray;
  • allow: поток идёт через mux.cool, как остальной UDP;
  • skip: поток идёт мимо mux.cool, через собственный UDP прокси.

Параметр уровня прокси udp-443: reject проверяется раньше mux.cool.

Включить mux.cool для пользователей подписки Remnawave можно через маппер хоста Remnawave, см. mux.cool через маппер хоста.