Заметил, что у меня Telegram обходит блокировку без прокси и VPN Статьи редакции
Возможно, Дуров обманул систему. Возможно — нет.
Сегодня российские провайдеры получили указание от Роскомнадзора блокировать все ресурсы Telegram и многие уже выполнили его: судя по моему опыту и отзывам коллег из редакции vc.ru, к блокировке приступили Yota, «Мегафон», МТС, «Ростелеком», «Дом.ру» и другие провайдеры.
Но есть подозрение, что это бесполезно.
На прошлой неделе и сегодня Дуров говорил, что Telegram будет использовать встроенные методы обхода блокировки, хоть их работоспособность и не гарантируется. Глава «Агоры» Павел Чиков писал, что защите Telegram нужно было оттянуть блокировку мессенджера как минимум до конца 2017 года. И это наводит на подозрения, что система обхода блокировок уже существует и работает.
Мой пример: около 14:00 по московскому времени я заметил, что переписки и каналы в моём приложении Telegram для Android не обновляются. Попробовал установить Telegram X — авторизация заняла несколько минут, но приложение подключилось и успешно заработало. Прокси нигде не использовалось, только на десктопном приложении.
Через час я зашёл в стандартное приложение Telegram и заметил, что оно без прокси успешно принимает и отправляет сообщения — это актуально для операторов Yota и «Дом.ру». При этом фотографии на Yota не загружались, но успешно загрузились через «Дом.ру». Чуть позже «завелось» и десктопное приложение.
Коллеги заметили, что у них похожая ситуация повторяется на МТС и «Ростелекоме». При этом у одного человека на Yota соединение в приложении на iOS так и не восстановилось.
В эксперименте могут быть значительные погрешности. Во-первых, блокировка только началась и в каких-то случаях она может быть некорректной (у операторов есть сутки, чтобы полностью установить ограничения). Во-вторых, мой опыт не означает, что обход работает для всех 15 млн человек в России.
В API Telegram есть сервисный пуш с названием “DC_UPDATE”, который служит для обновления адреса дата центра с которым нужно связываться клиенту (приложению). Возможно эта система сейчас и используется для обхода блокировки без действий пользователя.
В исходном коде клиента под Android такое действительно есть.
Слушается тут - https://github.com/DrKLO/Telegram/blob/master/TMessagesProj/src/main/java/org/telegram/messenger/GcmPushListenerService.java
Применяется в ConnectionsManager.cpp
Я скажу больше, это прописано в доках (крутить в конце): https://core.telegram.org/api/push-updates
В РКН уже решили эту проблему. Сайт с документацией заблокирован.
Кто знает, как извлечь пользу из документации, в состоянии обойти блокировку своими силами.