Made-with: Cursor: |
||
|---|---|---|
| .github/workflows | ||
| src | ||
| .gitignore | ||
| Cargo.toml | ||
| HABR_ARTICLE.md | ||
| LICENSE | ||
| README.md | ||
| tg_blacklist.txt | ||
| tg_unblock.bat | ||
README.md
TG Unblock
Обход блокировки Telegram через WebSocket-туннель
Без VPN. Без серверов. Без абонентки. Один клик.
Что это?
TG Unblock — десктопное приложение на Rust, которое обходит блокировку Telegram через локальный WebSocket-прокси. Провайдер видит обычный HTTPS к web.telegram.org, а не MTProto — DPI не может обнаружить и заблокировать трафик.
Почему не GoodbyeDPI / Zapret?
| GoodbyeDPI | Zapret | TG Unblock | |
|---|---|---|---|
| Метод | Фрагментация пакетов | Desync пакетов | WebSocket-туннель |
| DPI видит MTProto? | Нет (обфускация) | Нет (desync) | Нет (обычный HTTPS) |
| IP-шейпинг обходит? | Нет | Нет | Да |
| Скорость | Зависит от DPI | Зависит от DPI | Полная |
| Переподключения | Возможны | Возможны | Нет |
| Настройка | Много параметров | Стратегии | Один клик |
Скачать
Или собрать из исходников:
git clone https://github.com/by-sonic/tglock.git
cd tglock
cargo build --release
Готовый .exe будет в target/release/tg_unblock.exe.
Как пользоваться
- Запустите
tg_unblock.exe - Нажмите "Запустить обход"
- Нажмите "Настроить автоматически" — откроется Telegram, нажмите "Подключить"
- Готово. Telegram работает на полной скорости.
Ручная настройка прокси
Если автонастройка не сработала:
Telegram Desktop → Настройки → Продвинутые → Тип соединения → Использовать SOCKS5-прокси
| Параметр | Значение |
|---|---|
| Сервер | 127.0.0.1 |
| Порт | 1080 |
| Логин | пусто |
| Пароль | пусто |
Как это работает
Telegram Desktop
│
▼ (SOCKS5)
┌──────────────────┐
│ TG Unblock │ 127.0.0.1:1080
│ WS-прокси │
└──────┬───────────┘
│
▼ (определяет DC по IP)
│
├── Telegram IP? ──► WSS-туннель к {dc}.web.telegram.org/apiws
│ (провайдер видит обычный HTTPS)
│
└── Другой IP? ────► Прямое TCP-соединение (без изменений)
DC-маппинг
Приложение автоматически определяет Data Center по IP-адресу и маршрутизирует через правильный WebSocket-эндпоинт:
| DC | Подсеть | WebSocket |
|---|---|---|
| DC1 | 149.154.160.0/22 |
wss://pluto.web.telegram.org/apiws |
| DC2 | 149.154.164.0/22 |
wss://venus.web.telegram.org/apiws |
| DC3 | 149.154.168.0/22 |
wss://aurora.web.telegram.org/apiws |
| DC4 | 91.108.12.0/22 |
wss://vesta.web.telegram.org/apiws |
| DC5 | 91.108.56.0/22 |
wss://flora.web.telegram.org/apiws |
Имена DC (pluto, venus, aurora, vesta, flora) — из официальной документации MTProto.
Стек
| Что | Зачем |
|---|---|
| Rust | Скорость, безопасность, один бинарник без зависимостей |
| egui / eframe | Нативный GUI без Electron, без браузера |
| tokio | Async I/O для высокопроизводительного проксирования |
| tokio-tungstenite | WebSocket-клиент с TLS |
| native-tls | TLS через системные сертификаты Windows |
Структура проекта
tglock/
├── Cargo.toml # Зависимости
├── src/
│ ├── main.rs # GUI + управление прокси
│ ├── ws_proxy.rs # SOCKS5-сервер + WebSocket-туннель
│ ├── bypass.rs # DNS-настройка, утилиты Windows
│ └── network.rs # Сетевая диагностика
└── tg_blacklist.txt # IP-подсети и домены Telegram
Требования
- Windows 10/11
- Rust 1.70+ (для сборки из исходников)
- Права администратора (для смены DNS, опционально)
FAQ
Q: Это VPN? A: Нет. Трафик не идёт через сторонние серверы. Прокси работает локально и туннелирует только Telegram-трафик через WebSocket к официальным серверам Telegram.
Q: Это безопасно? A: Весь код открыт. Никакой телеметрии. Никаких данных не отправляется. Соединение с Telegram остаётся end-to-end зашифрованным (MTProto).
Q: Будет ли работать с мобильным Telegram? A: Пока только Telegram Desktop. Для мобильных устройств рекомендуем by sonic VPN.
Q: Замедляется ли интернет? A: Нет. Проксируется только трафик к серверам Telegram. Весь остальной трафик идёт напрямую.
VPN для полного обхода
Если нужен обход блокировок для всех приложений (YouTube, Discord, Instagram и др.) — попробуйте by sonic VPN. Быстрый, без ограничений скорости.
Лицензия
MIT — делайте что хотите.
Автор
by sonic — @bysonicvpn_bot
Если пригодилось — поставьте ⭐ на GitHub