Автоматический обход DPI блокировок

Написал движок для обхода DPI блокировок в реальном времени

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

Методология кратко

Система получилась крупной. Если хочется изучить подробнее - прошу в README на гитхабе. Там постарался раскрыть все детали работы движка

Один probe - последовательная серия из 4 независимых наблюдений:

DNS - резолвится ли имя → TCP:443 - пускают ли SYN, приходит ли SYN/ACK → TLS handshake - проходит ли ClientHello/ServerHello, доходит до Finished → HTTP read - приходит ли первые ~32KB ответа после успешного handshake

На протяжении всей работы система учится, репробирует, оценивает достижимость для того чтобы в длительной перспективе накапливать только действительно заблокированные ресурсы. Оптимистичный путь (inline probe) занимает не больше секунды. Этого хватает чтобы клиент даже не перезагружал страницу (хотя иногда все-таки приходится)

Задумка классная! Планируете ли поддержку др. OS кроме linux?

благодарю! для iOS сейчас фреймворк в тесте (GitHub - belotserkovtsev/ladon-ios-sdk: Swift Package Manager distribution manifest for the Ladon iOS SDK. Binary artifacts ship from belotserkovtsev/Ladon releases. · GitHub), думал над openwrt, но пока не первый приоритет

Есть ли описание для нубов примера запуска и базовой настройки? Текущего, например, мне не хватило.
И ещё я не понял. что именно пробивает DPI в утилите или это только запуск проб?

Наверное списки генерирует для Zapret / VPN? Само не обходит, Zapret / VPN читает те файлы с ipset куда движок и записывает.

инструкцию по установке можно найти тут. движок формирует список заблокированных ip-адресов, маршрутизацию над которыми нужно делать руками. это осознанное решение - конфигурация сети у всех разная, так гибкость инструмента сохраняется

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

поднимаю ща openwrt реализацию в бету. если кто-то захочет потестить - напишите пж

Есть какие-то хитрости если попытаться заводить на FreeBSD, включая лохматые (9.4, 11.2, 11.4) ?

подумаю, постараюсь потестить

Интересно. А docker будет?)

Думаю что смогу потестить. У меня OpenWrt 25.12.4, 256 RAM
OPENWRT_BOARD=“mediatek/mt7622”
OPENWRT_ARCH=“aarch64_cortex-a53”

вскоре смогу рассказть о крупном обновлении, пока на вопросы отвечу:

Есть какие-то хитрости если попытаться заводить на FreeBSD, включая лохматые (9.4, 11.2, 11.4) ?

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

Интересно. А docker будет?)

пока не планировал. решение глубоко интегрировано с сетевым ядром

Думаю что смогу потестить. У меня OpenWrt 25.12.4, 256 RAM

OpenWRT реализацию сам потестил локально, есть проблемы. один из первых приоритетов на ровне с FreeBSD на доведение в Stable. принесу новости сюда когда будет готово

  1. чем отличается от автохостлист в запрете?
  2. под винду не планируется?

ladon спроектирован для корневого сетевого оборудования - шлюзы, роутеры и т.д. если нужно десктоп решение - zapret с автохостлист приемлемо задачу закроет. а если важно стабильно и точно держать всю домашнюю / корпоративную сеть под обходом, то ladon конечно вне конкуренции

Спасибо!

Что-то пропустил наверное, ткните носом, что такое ladon… слепой.

Вопрос отменяется. В топике-же все написано…