Ошибка TLS-рукопожатия
Рукопожатие — это момент, когда клиент и сервер договариваются о шифровании. Ошибка означает, что они не сошлись в параметрах.
Причина 1. Часы устройства
Самая частая и самая обидная. Сертификаты проверяются по времени: расхождение в несколько минут ломает рукопожатие.
- Включите автоматическую установку даты и времени.
- Проверьте часовой пояс — иногда сбивается именно он.
- На компьютере после долгого простоя часы могут отстать: синхронизируйте вручную.
Причина 2. Параметры ключа не совпадают с серверными
Актуально, если сервер добавляли вручную или правили параметры. Для Reality критичны publicKey, shortId и serverName.
- Возьмите исходный ключ и разберите его.
- Сверьте поля с тем, что в приложении: ручное добавление.
- Ничего не «улучшайте»: параметры должны совпадать буква в букву — про форматы.
Причина 3. Старая система
- Android 7 и старше не знает современных наборов шифров — часть серверов на них не работает.
- Windows 7 без обновлений имеет ту же проблему.
- Помогает сервер с обычным TLS вместо Reality либо более новое устройство.
Причина 4. Сеть вмешивается в соединение
В корпоративных сетях и на некоторых публичных точках трафик проходит через прокси с подменой сертификата. Рукопожатие в таких условиях не пройдёт. Проверьте на мобильном интернете — если там работает, дело в сети.
Проверьте, в приложении дело или в подписке
Вставьте в тот же клиент заведомо рабочую ссылку. Подключилось — приложение исправно, менять нужно подписку. Демо ТОК VPN на 3 дня выдаётся без карты.
Ошибка только на одном сервере
Скорее всего, у него изменились параметры Reality. Обновите подписку — придёт актуальная версия ключа.
Помогает ли смена fingerprint?
Иногда: значение должно соответствовать ожидаемому на сервере. Наугад менять не стоит — сверяйтесь с исходным ключом.
После обновления приложения появилась ошибка
Новая версия ядра строже относится к параметрам. Переимпортируйте подписку, чтобы получить свежие ключи.