VPN·HUB·CRACK План Б: запасной контур и переключение клиентов за пятнадцать минут · VPN HUB CRACK
Все статьи
Remnawave NEW PRO Remnawave

План Б: запасной контур и переключение клиентов за пятнадцать минут

Обновлено 2 сентября 2026 Проверено

План Б: запасной контур и переключение клиентов за пятнадцать минут

Разбор аварии, когда она уже случилась, лежит в статье «Заблокировали IP». Эта статья про то, что должно быть сделано до.

Начнём с наблюдения, которое ломает привычную логику резерва. Вот что реально происходило у сервисов за последние месяцы:

Что случилось Ноды Клиенты
РКН закрыл подсеть, где стояли две ноды живы и здоровы без связи
Страница подписки висела на выключенном CDN живы не могут получить новый конфиг
CDN переписал путь подписки, отдавал HTML вместо конфига живы приложение показывает пустой список
Сертификат панели протух живы подписка не открывается
A-запись входа смотрела на выбывший адрес жив запасной вход «пинг есть, коннекта нет»

Ни в одном случае нода не падала. Падал путь, по которому клиент забирает конфиг. Запасная нода в такой аварии не помогает: клиент про неё не узнает.

Подписка как единственная точка переключения

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

Клиент, получивший голую ссылку vless://, зафиксирован на конкретном адресе навсегда. Меняете адрес — идёте в личку к каждому.

Отсюда правило, которое стоит поставить раньше выбора протоколов: сервис раздаёт только подписки. Голые конфиги допустимы для собственной отладки и ни для чего больше. Как собрать нормальную страницу подписки со своим доменом, разобрано в «Странице подписки».

Второе следствие важнее первого. Домен подписки становится вашей единственной точкой отказа, и обращаться с ним нужно соответственно.

Что подготовить заранее

Второй домен подписки с выпущенным сертификатом

Домен покупается заранее, DNS настраивается заранее, сертификат выпускается заранее. Причина простая: выпуск сертификата требует, чтобы домен резолвился и порт был доступен снаружи. В момент аварии у вас может не быть ни того, ни другого.

Держите его в другой зоне и у другого регистратора. Второй домен на том же аккаунте, что и первый, закрывается вместе с первым, если проблема в аккаунте.

Проверяйте раз в месяц, что он жив:

curl -sI --http1.1 https://sub2.example.com/ | head -3

⚠️ Флаг --http1.1 здесь не украшение. Через HTTP/2 большие ответы обрываются на части соединений, и здоровая подписка выглядит сломанной. Проверять всегда снаружи, не с самого сервера: локальный curl к странице подписки Remnawave отдаёт 502 по замыслу, там стоит проверка источника запроса.

Резервная нода в другой AS и другой стране

Блокируют подсетями. Две ноды у одного провайдера в соседних адресах выключаются одной строкой в реестре.

Резерв должен отличаться по трём признакам: другой хостер, другая автономная система, другая страна. Совпадение хотя бы по одному оставляет вас в той же корзине.

Резервная нода стоит денег и большую часть времени простаивает. Держите её на минимальном тарифе, но поднятой и заведённой в панель. Нода, которую надо ещё установить, это не резерв, а план купить резерв.

Резервный протокол

Reality на 443 порту работает, пока его не начали активно проверять. Когда начнут, вам понадобится что-то, устроенное иначе: AmneziaWG или NaiveProxy, Hysteria2 на UDP, XHTTP за CDN.

Резервный протокол должен быть поднят на резервной ноде и добавлен в отдельный сквад. Не в основной: иначе он раздастся всем клиентам сразу и вы получите поддержку по протоколу, который никому пока не нужен.

Способ докричаться до клиентов

Канал в Telegram, где вы публикуете статус. Он должен существовать до аварии и быть известен клиентам: ссылка в боте, в письме после покупки, на странице подписки.

Второй бот на другом токене занимает полчаса и однажды окупается целиком.

Куда нельзя ставить подписку

Одна ошибка встречается чаще остальных: страницу подписки размещают там же, где ноду, или прячут за тем же CDN.

Один IP с нодой. Заблокировали адрес ноды, и вместе с ней уехала страница, откуда клиент забрал бы адрес запасной.

Тот же CDN, что у ноды. Отвалился CDN, и клиент теряет оба пути разом. Отдельная ловушка: CDN умеет переписывать путь запроса, и /sub/uuid превращается в корень сайта. Приложение получает честные 200 и HTML вместо конфига, а в логах панели всё выглядит нормально.

Тот же домен, что у панели. Панель — самая заметная часть инфраструктуры и первый кандидат на блокировку.

Правильно: подписка живёт на отдельном домене, за отдельным адресом, желательно за Cloudflare. Заблокировать её тогда сложнее, чем ноду.

Первые пятнадцать минут

Порядок, а не паника. Каждый шаг занимает минуту или две.

1. Определите, что именно сломалось. Ноды и подписка проверяются разными командами:

# нода: отвечает ли TLS на 443 с нужным именем
echo | openssl s_client -connect НОДА:443 -servername ВАШ_SNI 2>/dev/null | head -12

# подписка: отдаёт ли она вообще что-то похожее на конфиг, а не страницу сайта
curl -s --http1.1 -A "Happ/1.0" https://sub.example.com/ССЫЛКА | head -c 200

Если TLS не отвечает, а ping идёт, адрес заблокирован по TCP: это ровно тот случай, когда «сервер пингуется, а не работает».

⛔ Второй командой можно поймать только грубую поломку: вместо конфига приходит HTML страницы, то есть путь подписки переписал CDN или сабка отдаёт не то. Доказательством работоспособности она не является. Remnawave без заголовка x-hwid отдаёт клиентскому UA заглушку, которая на глаз похожа на конфиг, и такая проверка пройдёт при реально сломанной выдаче. Подставлять x-hwid тоже нельзя: проверка займёт слот устройства живого клиента. Единственная честная проверка — настоящее приложение с настоящей подпиской.

2. Проверьте, не протух ли сертификат. Строка notAfter в выводе выше.

3. Переключите хосты в панели на резервную ноду. Адрес хоста нельзя менять в одиночку: вместе с ним меняются sni и привязка к инбаунду резервной ноды. Хост, у которого адрес от одной ноды, а инбаунд от другой, отдаёт клиенту конфиг, который никуда не подключается.

4. Убедитесь, что изменения дошли до клиента. Правки шаблонов подписки через базу напрямую не применяются: бэкенд держит их в памяти. Меняйте через API панели, иначе увидите старый шаблон при верной записи в базе.

5. Напишите в канал. Одно сообщение: что случилось, что делать клиенту (обновить подписку в приложении), когда ждать нормализации. Молчание порождает вал обращений, который съест остаток вечера.

Учения

План Б, который ни разу не проверяли, планом не является.

Раз в месяц, в спокойное время, проделайте это на себе:

  1. Переключите свой аккаунт на резервный домен подписки и обновите конфиг в приложении.
  2. Подключитесь через резервную ноду. Проверьте скорость и то, что сайты открываются.
  3. Верните обратно.

Двадцать минут раз в месяц. За это время выясняется всё то, что иначе выясняется в аварию: протухший сертификат, забытая A-запись, резервная нода с версией ядра старше панели, сквад без единого хоста.

⭐ Отдельно проверьте, что резервная нода вообще принимает клиентов. Нода, поднятая полгода назад и с тех пор не тронутая, часто оказывается новее панели по версии образа: панель и нода перестают договариваться по TLS, и в логах появляется ошибка рукопожатия вместо понятного сообщения. Версию образа ноды стоит зафиксировать под версию панели, а не тянуть latest.

Что должно быть в готовности

Пункт Как проверить, что готово
Второй домен подписки curl -sI --http1.1 снаружи отдаёт 200
Сертификат на нём notAfter дальше, чем через месяц
Резервная нода Заведена в панель, онлайн, версия образа под панель
Резервный протокол Поднят, лежит в отдельном скваде
Канал статуса Существует, ссылка на него есть в боте
Второй бот Токен получен, лежит в заметках
Учения Проводились в этом месяце

Шесть строк из семи делаются за один вечер. Седьмая делается раз в месяц и стоит двадцати минут.