Ссылка на прокси не открывается: tg://proxy, t.me/proxy и ошибки Telegram
Нажали на ссылку — и ничего, или Telegram отвечает «The proxy link is invalid». Разбираем, где ломается ссылка и что значит каждое сообщение.
Содержание
Ссылка на прокси не открывается по одной из трёх причин: в системе нет приложения, которое принимает ссылки tg://; ссылку повредили при копировании; или Telegram прочитал её и отверг параметры — тогда он пишет, что именно не так. Ниже — как Telegram разбирает ссылку, что значат его сообщения и как за минуту найти ошибку. Всё, что сказано о проверках, взято из исходного кода Telegram Desktop и Telegram для Android (октябрь 2026 года).
Как Telegram читает ссылку
У ссылки на MTProto-прокси две записи с одинаковыми параметрами — server, port и secret, все три обязательны:
https://t.me/proxy?server=proxy.example.com&port=443&secret=ee…
tg://proxy?server=proxy.example.com&port=443&secret=ee…
- t.me/proxy — обычная веб-ссылка. В браузере она открывает страницу Telegram с кнопкой «Apply MTProxy Settings», которая ведёт на ту же ссылку в виде
tg://proxy. По документации Telegram, вместоt.meможно писатьtelegram.meилиtelegram.dog; - tg://proxy — ссылка для приложения. Документация Telegram требует от клиентов регистрировать обработчик таких ссылок в операционной системе: нажатие передаёт ссылку Telegram, если он установлен.
Внутри приложения обе формы сводятся к одной. Telegram Desktop превращает ссылку на t.me, telegram.me или telegram.dog (в том числе с www.) в tg://proxy и только потом разбирает параметры. Telegram для Android узнаёт те же три домена и запись tg:proxy или tg://proxy.
Нажатие ничего не делает
Если по ссылке tg://proxy не происходит ничего, система не знает, кому её передать. Так бывает, когда Telegram не установлен, когда ссылку открывают на компьютере, где есть только браузерная версия, или когда программа, в которой вы нажали, не передаёт такие ссылки системе. Что делать:
- Замените начало на
https://t.me/proxy?, оставив параметры как есть, и откройте ссылку в браузере: страница Telegram предложит открыть её в приложении. - Если и это не помогло, добавьте прокси вручную: в настройках прокси выберите тип MTProto и перенесите сервер, порт и секрет из ссылки.
- В Telegram Desktop можно скопировать ссылку целиком и в окне прокси нажать «Add proxy from clipboard»: клиент сам разберёт параметры.
Где находится окно прокси на разных устройствах — в инструкциях для Android, iPhone и компьютера.
Ссылку испортили при копировании
Чаще всего ссылка ломается по дороге: её копируют из веб-страницы, документа или пересылают через другой мессенджер. Типичные повреждения:
- Амперсанд превратился в
&. Так он записывается в HTML. Клиент делит параметры по знаку&и вместоportвидит параметр с именемamp;port— порт для него не указан. - Секрет обрезан. Длинный ee-секрет переносится на новую строку, и хвост с доменом теряется.
- В середину попал пробел или перенос строки. Секрет перестаёт читаться как шестнадцатеричная строка.
- Ссылку «поправили» руками. Один изменённый символ в секрете — другой ключ, и прокси такого клиента не пустит, даже если ссылку удалось открыть.
Две вещи Telegram Desktop прощает: регистр в именах параметров (Server и server для него одно и то же) и знаки + и / в секрете — их он заменяет на - и _, чтобы секрет в формате base64 читался одинаково в обоих вариантах записи.
Что значат сообщения Telegram Desktop
Если ссылка дошла до Telegram Desktop, а параметры не прошли проверку, клиент показывает одно из трёх сообщений. Какое — зависит от того, что не так:
| Сообщение | Когда появляется | Что делать |
|---|---|---|
| «The proxy link is invalid.» | нет сервера, порт не указан или равен нулю, секрет слишком короткий или содержит символы, которых нет ни в шестнадцатеричной записи, ни в base64 | сверить ссылку с исходной, искать &, пробелы и обрезанный секрет |
| «Your Telegram Desktop version doesn't support this proxy type or the proxy link is invalid…» | секрет читается, но не подходит ни под один известный вид: например, 17 байт без префикса dd, длинный секрет без префикса ee или hex-секрет, у которого потерялась часть символов | сверить длину секрета; если он цел — обновить клиент, если испорчен — нужна новая ссылка |
| «This proxy link uses invalid secret parameter…» | секрет начинается с ee, но не читается как шестнадцатеричная строка — например, из-за лишнего или потерянного символа | попросить у владельца прокси новую ссылку: сообщение прямо советует обратиться к нему |
Последнее сообщение зависит от длины испорченного секрета: в части случаев вместо него появится общее «The proxy link is invalid». А при добавлении из буфера обмена текста, в котором нет ссылки на прокси, Desktop пишет коротко: «This is not a proxy link».
Какую длину секрета ждёт Telegram Desktop
Секрет в шестнадцатеричной записи клиент принимает в трёх видах. По ним удобно проверять ссылку до того, как её открывать:
| Вид секрета | Байт | Символов в hex |
|---|---|---|
| ключ без префикса | 16 | 32 |
dd + ключ | 17 | 34 |
ee + ключ + домен | от 21 | от 42 |
Для ee-секрета 21 байт — нижняя граница: префикс, 16 байт ключа и хотя бы четыре байта домена. Секрет может быть записан и в base64 — такую форму выдаёт, например, mtg; её клиент проверяет по тем же правилам после раскодирования.
Как проверяет ссылку Android
Telegram для Android при разборе ссылки на MTProto-прокси проверяет только, что указан сервер и порт больше нуля. Секрет на этом шаге не проверяется: окно подключения откроется и с испорченным секретом, а ошибка проявится уже при подключении — прокси просто не ответит. Поэтому на телефоне «ссылка открылась» ещё не значит «ссылка правильная».
Ещё одна деталь из того же кода: Android узнаёт ссылку на прокси по точному имени хоста — t.me, telegram.me или telegram.dog.
Ссылка открылась, но прокси не подключается
Если окно подключения появилось и показало сервер и порт, ссылка прочитана. Дальше вопрос уже не к ссылке, а к серверу и сети: доступен ли адрес, не сменил ли владелец домен маскировки или секрет, работает ли прокси в другой сети. Отдельная частая причина у режима FakeTLS — домен в секрете не совпадает с тем, что настроен на сервере.
Проверка за минуту
- Ссылка начинается с
tg://proxy?илиhttps://t.me/proxy?. - В ней есть
server,portиsecret, а между ними — простой&, безamp;. - Порт — число больше нуля, чаще всего 443.
- Длина секрета — 32, 34 или не меньше 42 символов, в нём только цифры и буквы a–f (или символы base64, если так его выдала программа прокси).
- Секрет вставлен целиком, без пробелов и переносов.
- Если
tg://не открывается, та же ссылка черезhttps://t.me/proxy?— в браузере.
Частые вопросы
Почему ссылка tg://proxy ничего не открывает?
Ссылку tg:// обрабатывает приложение, которое зарегистрировало этот адрес в системе. Если Telegram на устройстве не установлен или система не связала с ним такие ссылки, нажатие ни к чему не приводит. Откройте ту же ссылку в виде t.me/proxy в браузере или введите сервер, порт и секрет вручную.
Что значит «The proxy link is invalid» в Telegram Desktop?
Клиент не нашёл в ссылке нужных параметров или они неправильные: нет сервера, порт не указан или равен нулю, секрет слишком короткий или записан посторонними символами. Чаще всего ссылку повредили при копировании.
Telegram Desktop просит обновиться, а версия последняя. Почему?
Это сообщение появляется и тогда, когда секрет читается, но не подходит ни под один известный вид: например, 17 байт без префикса dd, длинный секрет без префикса ee или обрезанный hex-секрет. Если секрет испорчен, обновление не поможет — нужна правильная ссылка.
Ссылка открылась, а прокси не подключается — это та же проблема?
Нет. Если окно подключения появилось, ссылка прочитана. Дальше дело в доступности сервера, режиме или сети — это другая диагностика.
Источники
- Telegram: deep links — ссылки на прокси
- Telegram Desktop: local_url_handlers.cpp — разбор ссылок t.me и tg://
- Telegram Desktop: mtproto_proxy_data.cpp — проверка секрета
- Telegram Desktop: connection_box.cpp — сообщения об ошибках ссылки
- Telegram Desktop: строки интерфейса (lang.strings)
- Telegram для Android: ProxySettings.java — разбор ссылки