Настройка панели
Что настроить в панели Remnawave, чтобы подписка открывалась в Clod Clash для Android
Что настроить в панели Remnawave, чтобы подписка открывалась в Clod Clash. Пользователю здесь делать ничего не нужно.
Правило ответа для клиента
Приложение представляется панели как ClodClash/<версия> (Android). Без своего правила
панель отдаст ответ по умолчанию, а не конфиг mihomo, и подписка не добавится.
В Subscription response rules добавьте правило: регулярное выражение ^clodclash
(регистр не важен), формат ответа MIHOMO. Это же правило обслуживает и десктопную версию.
Чтобы под именем сервера показывалось его Server description, в том же правиле
добавьте ^ClodClash/ в responseModifications.additionalExtendedClientsRegex — именно
префиксом, иначе правило отвалится при обновлении приложения.
{
"name": "Mihomo Clients",
"description": "Response with generated YAML config (Mihomo Template)",
"enabled": true,
"operator": "AND",
"conditions": [
{
"headerName": "user-agent",
"operator": "REGEX",
"value": "^(?:FlClash|FlClashX|Flowvy|[Cc]lash-[Vv]erge|[Kk]oala-[Cc]lash|[Cc]lash-?[Mm]eta|[Mm]urge|[Cc]lashX [Mm]eta|[Mm]ihomo|[Cc]lash-nyanpasu|clash.meta|prizrak-box|[Cc]lod[Cc]lash)",
"caseSensitive": false
}
],
"responseType": "MIHOMO",
"responseModifications": {
"additionalExtendedClientsRegex": [
"^ClodClash/"
]
}
}Как проверить
Запросите ссылку подписки с заголовком User-Agent: ClodClash/0.0.1 (Android): должен прийти
YAML mihomo, а у узлов — поле serverDescription.
Шаблон MIHOMO и ключи, которые клиент перезаписывает, — в руководстве по настройке панели. Заголовки ответа — на страницах Заголовки подписки и Заголовки clod-*.
Защищённый канал
При добавлении подписки приложение само сначала пробует защищённый канал прослойки remnawave-subscription-middleware; если канала у провайдера нет, подписка загружается обычным HTTPS-запросом. Пользователь может выключить канал в свойствах подписки и включить снова.
Без прослойки на запрос канала (путь /c1/… на домене подписки) отвечает ваш сервер, и от
этого ответа зависит, добавится ли подписка:
| Ответ на незнакомый путь | Что делает приложение |
|---|---|
| 404 или 410 | сразу загружает подписку обычным путём |
| другой код 4xx | пробует канал ещё дважды; если так ответили все три попытки — обычный путь |
соединение закрыто без ответа (например, nginx return 444) | так же, как другой код 4xx |
| 5xx (например, 502 от обратного прокси или 520 от Cloudflare) | так же, как другой код 4xx |
Проверить, что отдаёт домен подписки на незнакомый путь:
curl -sS -o /dev/null -w '%{http_code}\n' https://sub.example.com/c1/test404 — подписка добавляется сразу. Другой код или 000 (соединение закрыто без ответа) — после
трёх попыток канала, то есть на несколько секунд дольше (при включённом VPN, если напрямую ваш
сервер недоступен, — до полуминуты); чтобы добавление шло сразу, настройте на незнакомые пути ответ
404.
Подписка не добавляется, если адрес канала перенаправляет на http:// или по цепочке из 10 и больше
редиректов. На /c1/… отвечайте без редиректа или с редиректом только на https://.
С прослойкой и выключенным каналом подписка добавляется обычным путём, без канала. Если канал включён, подписка добавляется им, а после переустановки прослойки (новый ключ) сама берёт новый ключ при следующем обновлении — с любой версией прослойки.
Подписка с каналом после планового обновления (если обновления реже раза в 6 часов или выключены — и между
ними, не чаще раза в 6 часов) шлёт отчёт о качестве узлов: пинги и итоги 16–20 по узлам,
трафик, вид сети и внешний адрес, с которого делались замеры. Принимает и показывает отчёты
прослойка (вкладка Clod Clash → «Статистика»), если в ней включён приём. Замеры клиент копит,
только когда прослойка подтвердила приём в ответе подписки по каналу (так делают
свежие версии прослойки); нет подтверждения в очередном ответе — перестаёт копить
и стирает накопленное. Адрес замеров Android
узнаёт у Яндекса мимо туннеля сам; на ПК для этого нужны правила DIRECT в шаблоне — см.
руководство по настройке
панели.
Внешний адрес и идентификатор устройства, связанные с подпиской, могут быть персональными данными по 152-ФЗ и GDPR, и их оператор — провайдер, а не авторы клиента. Включая приём отчётов или проверку 16–20, опишите это в своей политике конфиденциальности (цели, основание, сроки хранения, получатели) и известите пользователей. Что именно отправляет клиент — в политике конфиденциальности клиента.
Сетевой стек
Стек туннеля берётся из шаблона — подробнее в «Ядре Clod Core».