🔍 Сайт не открывается, а браузер пишет одно и то же «не удалось установить соединение». Причин много: подменили DNS-ответ, сбросили соединение на рукопожатии, зарезали по имени домена, устроили «заморозку» после первых килобайт — или сервер правда лежит. Лечение у каждого своё, и пока не знаешь механизм, лечишь наугад.
🧰 Есть семь открытых инструментов, которые отвечают на вопрос «на каком этаже рвётся». Мы разобрали каждый по исходному коду, а не по описанию из README: что он реально отправляет в сеть, как превращает ошибку в вердикт и где ошибается.
📱 Самый подробный — DPI Detector на Python: DNS, доступность доменов, «заморозка» объёма, подбор белого SNI и тест Telegram на замедление. Заморозку ищет так: одно keep-alive-соединение, десять запросов, в каждом мусор по 4 КБ в заголовке — пока не перестанет отвечать. По стадии обрыва различает сброс на ClientHello, сброс после рукопожатия и дроп SYN.
🥬 Главное уточнение последнего года: «блокировка 16–20 КБ» — не порог в байтах. По наблюдениям сообщества считаются пакеты, около 25 в обе стороны, и это работает и на TCP, и на UDP. Отсюда предложенное имя l4-25 и разброс в отчётах: на соседних строках стоят «встало на 15 КБ» и «встало на 24 КБ».
🌐 У dpi-checkers проверка живёт прямо в браузере: 36 хостов и пять градаций вердикта вместо «да/нет». Настольная утилита dpi-ch снимает ограничения песочницы и берёт цели не списком, а фильтрами вроде «все подсети Hetzner в Германии» — чтобы цензору нечего было один раз внести в белый список и ослепить чекер у всех сразу.
❄️ Там же проверка «сибирского» ограничения: четыре одновременных TLS-рукопожатия со случайным именем и одно контрольное следом. Серия падает, а одиночное проходит — фильтр смотрит на частоту соединений, а не на содержимое. По умолчанию там стоит почерк Chrome: на нём ограничение наблюдалось, на Edge — нет.
🔐 Cheburcheck показывает то, что локальный чекер увидеть не может: как домен ведёт себя у других провайдеров. За таблицей регионов стоят добровольческие зонды; попутно они ищут узел, где стоит фильтр — на каждый TTL новое соединение, настоящий ClientHello и приём ICMP «время истекло». Их же зонды собирают публичный список доменов-исключений: 2138 штук на 20 сентября 2026.
🗒 Rkn-block-checker берёт дисциплиной вывода: у каждого вердикта свой уровень уверенности. Подмена DNS, подтверждённая шифрованным резолвером, — высокий; сброс TLS — лишь «похоже на фильтрацию по SNI, но не доказательство». А если контрольный список рабочих сайтов сам разваливается, инструмент отказывается делать вывод, а не рисует блокировку на плохом Wi-Fi.
🛰 ByeByeVPN смотрит с другого конца провода: насколько ваш сервер похож на VPN снаружи. Восемь проб на каждый TLS-порт, отпечатки JA4, рукопожатия WireGuard и Hysteria2, эмуляция вердикта ТСПУ. Важно: шкала — авторская модель, и проект это признаёт, убрав в одной из версий правило, дававшее красивый, но ложный сигнал.
📡 Два простых инструмента — bash-скрипт и Android-приложение — годятся как полевые щупы, но у первого часть проверок измеряет не то, что обещает: тест «утечки» сравнивает адрес сервера Яндекса с вашим внешним адресом, а тест WireGuard формирует ключ в формате, который wg не принимает (проверили локально).
⚠️ Общая ловушка для всех семи: чекер врёт, если работает обход. Zapret, GoodbyeDPI, VPN, прокси — выключайте перед замером. Туда же: чужой сервер законно может отбить незнакомое имя в рукопожатии, anycast даёт разный результат на соседних адресах, а капча с кодом 429 неотличима от блокировки.
📕 В статье — параметры каждого инструмента из кода, таблица «симптом → механизм → что помогает», сравнение способов нащупать l4-25, порядок запуска и список того, чего эти инструменты не показывают вовсе.
https://wiki.zapret.moe/DPI/tspu-inspectors-checkers-2026
☺️ Скачать | ☺️ Premium (донаты) | ☺️ Android, MacOS и др. ссылки
