Когда антибот притворяется РКН: ложные заглушки и локальный Web UI в rkn-block-checker 0.6.0
В прошлой статье я рассказывал о базовой концепции rkn-block-checker - маленькой CLI-утилиты, которая пытается не просто сказать “сайт не открывается”, а раскладывает сбой по слоям сетевого стека: DNS (отравление) -> TCP (блокировка по IP) -> TLS (DPI на SNI) -> HTTP (заглушка провайдера)
В теории схема выглядела стройной и красивой. На тестах всё работало как часы. Но когда инструмент попал на реальные машины пользователей, произошли нюансы.
Ниже разбор интересного бага с WAF, который заставил переписать логику вердиктов, и рассказ о том, как сделать локальный Web UI со стримингом на чистом Python без единой сторонней зависимости.


















