mirror of
https://github.com/MHSanaei/3x-ui.git
synced 2026-10-16 02:44:59 +03:00
04cccef311
xray-core's masque transport reaches Cloudflare WARP with an enrolled ECDSA P-256 key, the endpoint's public key and the assigned tunnel addresses, which only a WARP enrollment hands out. A new regMasque action on /panel/api/xray/warp/:action registers a separate WARP device and enrolls a secp256r1 key for the masque tunnel (the API revision and client version the WARP apps enroll MASQUE keys with). Enrolling replaces a device's WireGuard key, so it never touches the stored WireGuard registration. It returns the PEM key pair, the addresses and the endpoint, and the WARP modal turns them into a warp-masque outbound (HTTP/3, Cloudflare's MASQUE SNI), or refreshes the one already there.
60 lines
5.2 KiB
Plaintext
60 lines
5.2 KiB
Plaintext
---
|
||
title: MASQUE
|
||
description: Настройка инбаундов MASQUE (CONNECT-IP) в 3x-ui, подключение аутбаундов к серверам MASQUE и доступ к Cloudflare WARP через MASQUE.
|
||
icon: Waypoints
|
||
---
|
||
|
||
**MASQUE** передаёт IP-пакеты поверх HTTP/3 (или HTTP/2) методом CONNECT-IP, поэтому клиент
|
||
получает полноценный туннель третьего уровня, похожий на обычный HTTPS-трафик. xray-core
|
||
поддерживает его нативно; 3x-ui предлагает его как протокол инбаунда, протокол аутбаунда и
|
||
соответствующий транспорт `masque`, на котором работают оба.
|
||
|
||
## Инбаунд
|
||
|
||
| Поле | Описание |
|
||
| ---------------- | -------- |
|
||
| **Клиенты** | Каждый клиент входит со своими **email** и **паролем** (HTTP Basic auth). Трафик, квоты, лимиты IP и срок действия работают как в любом другом многопользовательском протоколе. |
|
||
| **Пул адресов** | Префиксы, из которых выдаются адреса туннелей, — не более одного IPv4 и одного IPv6 (по умолчанию `10.14.0.1/24`, `fd14::1/64`). Размер пула ограничивает число одновременно подключённых клиентов. |
|
||
| **MTU** | MTU туннеля, 1280–65535; оставьте пустым для значения ядра по умолчанию. |
|
||
| **Path** | Путь запроса, на который отвечает сервер (по умолчанию `/.well-known/masque/ip/*/*/`). |
|
||
| **Безопасность** | Всегда TLS. ALPN определяет слушатели: `h3` обслуживает HTTP/3 по UDP, `h2` — HTTP/2 по TCP, вместе — оба. |
|
||
|
||
<Callout type="info">
|
||
У MASQUE нет формата ссылок, поэтому для инбаундов MASQUE не создаются ссылка, QR-код и
|
||
запись Clash. Клиенты получают готовую к импорту конфигурацию из **JSON-подписки**:
|
||
аутбаунд `masque`, который аутентифицируется email и паролем клиента.
|
||
</Callout>
|
||
|
||
## Аутбаунд
|
||
|
||
Выберите протокол аутбаунда **masque** и задайте:
|
||
|
||
| Поле | Описание |
|
||
| -------------------------- | -------- |
|
||
| **Адрес / Порт** | Сервер MASQUE. |
|
||
| **Remote DNS** | Необязательные IP DNS-серверов, к которым идут запросы внутри туннеля. |
|
||
| **Host / Path** | Authority и путь запроса CONNECT-IP; путь должен совпадать с путём сервера. |
|
||
| **Имя пользователя / Пароль** | Учётные данные HTTP Basic — на сервере 3x-ui это email и пароль клиента. |
|
||
| **Headers** | Дополнительные заголовки запроса. |
|
||
| **TLS** | Обязательно. ALPN только с `h2` переключает на HTTP/2 по TCP; иначе используется HTTP/3. |
|
||
|
||
## WARP через MASQUE
|
||
|
||
Проще всего: **Xray → Аутбаунды → WARP → Добавить аутбаунд WARP через MASQUE** — панель
|
||
регистрирует отдельное устройство WARP, привязывает к нему ключ MASQUE и добавляет готовый
|
||
аутбаунд `warp-masque` (или обновляет существующий). Регистрация WARP для WireGuard не меняется.
|
||
Для ручной настройки:
|
||
|
||
Включите **WARP** в транспорте masque, чтобы подключаться к Cloudflare WARP через его
|
||
MASQUE-эндпоинт вместо WireGuard. Для этого нужна регистрация WARP, привязанная к MASQUE:
|
||
|
||
| Поле | Описание |
|
||
| -------------------------- | -------- |
|
||
| **Закрытый ключ** | Зарегистрированный закрытый ключ ECDSA P-256 (PEM или DER в base64). |
|
||
| **Открытый ключ эндпоинта** | Открытый ключ эндпоинта Cloudflare, возвращённый при регистрации. |
|
||
| **Адреса туннеля** | Адреса IPv4 и IPv6, которые Cloudflare назначил регистрации. |
|
||
|
||
В этом случае host и path по умолчанию указывают на эндпоинт Cloudflare, а WARP нельзя
|
||
сочетать с именем пользователя или паролем. Направьте аутбаунд на адрес эндпоинта из вашей
|
||
регистрации и укажите имя сервера TLS `consumer-masque.cloudflareclient.com`.
|