4905c06b9b9ce17467255d4bddec50b6afcf1ecf
mtproxy_checker
Проверка MTProto MTProxy на Go: не ICMP ping, а TCP + протокол (для ee — Fake-TLS, затем первый кадр MTProxy; для dd — сразу MTProxy Randomized Intermediate).
Сборка
go build -o mtproxy_checker.exe ./cmd/mtproxy_checker
Запуск
.\mtproxy_checker.exe "tg://proxy?server=HOST&port=PORT&secret=HEX"
или
.\mtproxy_checker.exe --server HOST --port PORT --secret HEX
Флаги: -timeout (по умолчанию 15s), -dc-id (по умолчанию 2).
Код выхода: 0 — OK, 1 — ошибка, 2 — неверные аргументы, 3 — прокси закрыл соединение после проверки, 4 — таймаут.
Docker (описание образа, Linux, несколько прокси подряд): docs/docker.ru.md.
Если в Telegram прокси «Available», а утилита падает на read server hello
Для ee в TLS SNI должен идти только ASCII hostname из хвоста секрета; в коде это SNIDomain. Ответ сервера читается по схеме из Telegram Desktop (mtproto_tls_socket), а не по старому фиксированному формату telethon.
Languages
Go
93.5%
JavaScript
5.4%
Dockerfile
0.8%
Shell
0.3%