Блог Clearway

Работает ли ВПН на МТС под блокировками и белыми списками: разбор

Коротко

Под блокировками и локальными шатдаунами МТС переводит мобильный интернет в режим белого списка: наружу проходят только whitelisted-ресурсы (часть CDN, госсайты), и VPN, который идёт напрямую на вашу ноду, отваливается. Чтобы сервис оставался устойчивым, вход ноды прячут за whitelisted CDN-edge (например, Yandex CDN): оператор видит трафик как обращение к «белому» CDN, а CDN проксирует запрос на ноду. Работает это не на любом хостинге — whitelist привязан к подсетям /24, статус меняется, поэтому каждую /24 проверяют отдельно. Рабочий транспорт под троттлингом — XHTTP (mode packet-up) через CDN; Reality и Hysteria2 напрямую обычно не проходят.

Нужен просто работающий VPN? CLEAR VPN — наш сервис для частных лиц на том же «белом» входе, о котором эта статья: работает, когда мобильный интернет ограничен до белого списка. Первые 5 дней бесплатно, карта не нужна. Остальной сайт — про инфраструктуру для владельцев VPN-сервисов; абонентом к ней подключиться нельзя.

Что происходит с VPN на МТС под блокировками

При локальных отключениях мобильного интернета и точечных ограничениях МТС не всегда «глушит» сеть полностью. Часто оператор переводит мобильный интернет в режим белого списка: наружу проходят только whitelisted-ресурсы — часть CDN, госсайты, отдельные сервисы. Всё остальное, включая VPN, который идёт напрямую на ваш сервер, просто не устанавливает соединение.

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

МТС белый список: почему всё решает подсеть /24

Ключевой момент про мтс белый список: он привязан не к конкретным доменам, а к подсетям — как правило, к блокам /24. Если IP вашего входа лежит в подсети, которую сеть считает «белой», трафик проходит; если нет — не проходит. Отсюда прямое следствие для выбора хостинга под ноду или CDN-edge.

ХостерСтатус в белом списке (по наблюдениям)
Selectelподсети часто whitelisted
cloud.ru / SberCloudчасто НЕ попадают в белый список
ранее рабочие блоки (напр. часть Yandex)могут отвалиться со временем

Важно: статус меняется, гарантий нет, проверять нужно каждую /24 отдельно, а не «хостера вообще». Перед запуском тестируйте конкретный блок из реальной сети МТС в зоне ограничений — то, что работает у одного адреса, может не работать у соседнего. Это не разовая проверка, а регламент.

Нужен вход, который проходит при белых списках, прямо сейчас? CLEAR VPN: первые 5 дней бесплатно, карта не нужна, до 10 устройств.

Получить ключ на 5 дней →

Транспорт под троттлингом: XHTTP через CDN

В режиме белого списка и под троттлингом важен и сам транспорт. Практика такая: Reality и Hysteria2 напрямую обычно НЕ проходят — edge их не пропускает. Рабочий подход — спрятать вход за whitelisted CDN-edge (например, Yandex CDN) и гонять XHTTP (mode packet-up) через CDN: оператор видит обращение к «белому» CDN, а CDN проксирует запрос на вашу ноду.

Ошибка unexpected EOF сама по себе не определяет причину. В текущем входе Clearway GET с телом отклоняется CDN с ошибкой 413. Проверьте серверный auto и лимит заголовков, затем клиентский header; для других ошибок сопоставьте время и журналы клиента, CDN, gateway и origin. Ответ HTTP 200 и успешный TLS ещё не подтверждают передачу HTTPS через туннель. Для текущего XHTTP-входа Clearway клиент отправляет uplink в заголовках: uplinkHTTPMethod: "GET", uplinkDataPlacement: "header", uplinkChunkSize: 4096, scMaxEachPostBytes: 4096. Сначала на сервере задайте uplinkDataPlacement: "auto" и serverMaxHeaderBytes: 262144, затем обновите Host и подписки клиентов. Порт, путь, пользователей и остальные параметры сохраняйте. Серверный auto нельзя переносить в клиентскую ссылку.

Настройка ноды за CDN

Для текущего XHTTP-входа Clearway клиент отправляет uplink в заголовках: uplinkHTTPMethod: "GET", uplinkDataPlacement: "header", uplinkChunkSize: 4096, scMaxEachPostBytes: 4096. Сначала на сервере задайте uplinkDataPlacement: "auto" и serverMaxHeaderBytes: 262144, затем обновите Host и подписки клиентов. Порт, путь, пользователей и остальные параметры сохраняйте. Серверный auto нельзя переносить в клиентскую ссылку.

Origin (ноду) обязательно защитите: файрволом разрешите входящие только с IP gateway/CDN, а сам origin прикройте секрет-заголовком X-Cdn-Auth, чтобы сервер не отвечал на прямые обращения мимо CDN. Пошаговая последовательность — в блоке howto ниже.

Себестоимость трафика и учёт в панели

Экономику считать нужно отдельно, потому что XHTTP плодит много мелких запросов, а CDN тарифицирует не только гигабайты, но и запросы.

ПоказательОценка
Сырой трафик CDNзависит от провайдера
С учётом платы за запросы на масштабезависит от провайдера

Размер uplink-пакета влияет на число HTTP-запросов и нагрузку. Для текущего входа используйте клиентские uplinkChunkSize: 4096 и scMaxEachPostBytes: 4096. Увеличение пакетов ради экономии требует отдельной проверки лимитов CDN и сервера; перенос GET в body сейчас приводит к ошибке 413.

Чего whitelist-CDN не решает

Не путайте две разные задачи. Whitelist-CDN решает устойчивость входа под троттлингом и в режиме белого списка. Он НЕ разблокирует стриминг: сервисы вроде Кинопоиска банят дата-центровые IP по репутации, и для российского контента нужен резидентный IP. Whitelist-CDN этого не даёт — это отдельная история. Если клиенты жалуются именно на стриминг, а не на «интернет вообще не работает», причина другая, и CDN-входом она не лечится.

Строить whitelisted-вход можно самому на Yandex CDN или брать его как сервис. Например, Clearway (clear-way.pro) даёт операторам готовый whitelisted CDN-edge (*.whitechannel-x1-cdn.ru) перед их нодами, без продажи серверов — проверку подсетей и совместимость с XHTTP это снимает с вашей команды. Что выбрать — вопрос объёма трафика и того, готовы ли вы держать собственный CDN-слой.

Частые вопросы

Почему VPN на МТС перестаёт работать именно при локальных отключениях?

При точечных ограничениях сеть переходит в режим белого списка — наружу пускает только whitelisted-подсети (часть CDN, госсайты). Прямое соединение с вашей нодой в этот список не входит, поэтому handshake не проходит и туннель не поднимается. Дело не в протоколе, а в том, что адрес входа не «белый».

Как проверить, попадает ли мой хостинг в мтс белый список?

Проверяйте не хостера целиком, а конкретную подсеть /24, в которой лежит IP. Тестируйте из реальной сети МТС в зоне ограничений: соседние блоки ведут себя по-разному, а статус со временем меняется. Selectel часто whitelisted, cloud.ru/SberCloud часто нет, но гарантий нет — только актуальная проверка каждой /24.

Можно ли пустить Reality или Hysteria2 через CDN под троттлингом?

Напрямую под троттлингом Reality и Hysteria2 обычно не проходят — edge их не пропускает. Рабочий вариант — XHTTP (mode packet-up) через whitelisted CDN-edge. Reality остаётся хорошим транспортом вне режима белого списка, но для задачи «пройти под ограничениями мобильной сети» он здесь не подходит.

Туннель XHTTP через CDN рвётся с ошибкой unexpected EOF — в чём причина?

Для текущего XHTTP-входа Clearway клиент отправляет uplink в заголовках: uplinkHTTPMethod: "GET", uplinkDataPlacement: "header", uplinkChunkSize: 4096, scMaxEachPostBytes: 4096. Сначала на сервере задайте uplinkDataPlacement: "auto" и serverMaxHeaderBytes: 262144, затем обновите Host и подписки клиентов. Порт, путь, пользователей и остальные параметры сохраняйте. Серверный auto нельзя переносить в клиентскую ссылку.

Whitelist-CDN разблокирует Кинопоиск и другой стриминг?

Нет. Whitelist-CDN решает проходимость входа под блокировками, но стриминг банит дата-центровые IP по репутации — для российского контента нужен резидентный IP. Это отдельная задача, которую CDN-вход не закрывает, и путать её с «пробить троттлинг» не стоит.

Во сколько обходится трафик через CDN?

Размер uplink-пакета влияет на число HTTP-запросов и нагрузку. Для текущего входа используйте клиентские uplinkChunkSize: 4096 и scMaxEachPostBytes: 4096. Увеличение пакетов ради экономии требует отдельной проверки лимитов CDN и сервера; перенос GET в body сейчас приводит к ошибке 413.

VPN, который работает при белых списках

CLEAR VPN — сервис для частных лиц на том же «белом» входе, о котором пишет этот блог. Нужна только почта: первые 5 дней бесплатно, карта не нужна. Когда пробный срок закончится — доступ просто остановится, ничего не спишется.

Попробовать бесплатно →