# dpi-frag [![CI](https://github.com/ImSavsis/dpi-frag/actions/workflows/ci.yml/badge.svg)](https://github.com/ImSavsis/dpi-frag/actions/workflows/ci.yml) [![license](https://img.shields.io/github/license/ImSavsis/dpi-frag.svg)](https://github.com/ImSavsis/dpi-frag/blob/master/LICENSE) локальный socks5 прокси на C++, режет TLS ClientHello так что DPI не видит SNI одним куском. ```mermaid sequenceDiagram App->>dpi-frag: SOCKS5 connect + ClientHello dpi-frag->>DPI: часть 1 (до домена) dpi-frag->>DPI: часть 2 (остаток домена) Note over DPI: паттерн не собрать — пропускает dpi-frag->>Site: обе части, как обычно Site->>App: TLS handshake дальше как ни в чём не бывало ``` ## сборка ``` cmake -B build cmake --build build --config Release ``` ## юзать ``` build\Release\dpifrag.exe --port 1080 ``` ставишь socks5 прокси на `127.0.0.1:1080` в браузере/системе. ## что не умеет не VPN, не шифрует. не поможет если блокировка по IP, а не по SNI.