RKN Block Checker: CLI для проверки блокировок

источник ↗ ·

Компактный CLI-инструмент определяет наличие RKN/TSPU-блокировок в сети, типы блоков (DNS poisoning, TCP reset, TLS DPI, ISP stub) и детально анализирует каждый слой стека.

AI Summary

🔍 Общий обзор (1–2 абзаца):

Компактный CLI rkn-block-checker (github.com/MayersScott/rkn-block-checker) диагностирует RKN/TSPU-блокировки в российской сети: проверяет whitelist (gosuslugi, yandex, sberbank, vk — всегда OK) и blacklist (instagram, twitter, rutracker, protonvpn и др.). Анализирует слои: DNS (system vs DoH), TCP, TLS (SNI), HTTP. Выводит IP/ISP (напр. AS12389 Rostelecom, Москва), timings (TCP 18ms, TLS 42ms, PLT 380ms), verdict (OK/DNS_BLOCK/TLS_BLOCK/HTTP_STUB) и notes (DPI on SNI, DNS poisoning). Установка: pip install rkn-block-checkerrkn-check. JSON-вывод для jq-анализа: типы блоков, списки заблокированных сайтов.

Ключевые тезисы/выводы:Whitelist 21/21 OK — базовые RU-сайты всегда доступны (timings 8–42ms TCP/TLS). • Blacklist: 12/15 blocked — типы: TLS_BLOCK (8, DPI на SNI: TCP OK → TLS reset/timeout), DNS_BLOCK (2, ISP DNS лжёт, DoH работает), HTTP_STUB (2, ISP-заглушка). • DNS-проверка: System DNS (ISP) vs Cloudflare DoH — mismatch = poisoning (protonvpn: sys_ip null, doh_ip 185.70.40.182). • TLS DPI fingerprint: tcp_ok=true + tls_ok=false (reset by peer) — типичный RKN/TSPU (instagram: 22ms TCP → TLS BLOCK). • JSON-фичи: self_info (IP/город/ISP), per-target trace (sys_ip, tcp_time_ms, tls_cert_cn, status_code, notes). • JQ-примеры: rkn-check --json | jq '.blacklist[] | select(.verdict != "OK") | .name' — список заблокированных; группировка по verdict. • Установка/использование: pip install rkn-block-checker, rkn-check [--json] [--timeout 10] [--workers 8] — probes по слоям до первой ошибки.

Мои мысли