Вы открываете каталог, сортируете по скорости, выбираете узел, помеченный как онлайн, и клиент сдаётся, не закончив подключение. Список не врал, строго говоря. Он сообщал результат чужой проверки, из другой сети, в более ранний момент, против сервиса, который доброволец может отключить в любой момент. Понимание этого разрыва превращает изматывающую охоту в короткую последовательность проверок, которые можно выполнить на любом кандидате.

Что список на самом деле измерил

Публичный каталог хранит поля вроде времени последней проверки, наблюдённого значения времени отклика, числа сессий и иногда списка протоколов. Каждое из них описывает последнее успешное наблюдение с точки зрения самого проекта, а не состояние узла в момент прихода вашего пакета.

Свежесть важнее числа. Узел, проверенный четыре минуты назад, и узел, проверенный четыре часа назад, могут показывать одну и ту же зелёную метку, и только один из них ещё похож на записанное состояние. Ищите отметку времени, а не цвет.

Добровольная работа добавляет второй источник изменений, который не исправит ни один монитор. Оператор может перезагружать ноутбук, исчерпывать канал, менять провайдера или просто закрывать крышку. Запись в списке — это кандидат, и относиться к ней как к соглашению об уровне обслуживания означает ошибку категории.

Следите за этапами клиента, а не за вертушкой

Каждый клиент VPN проходит одну и ту же широкую последовательность: разрешить имя, открыть транспортное соединение, согласовать безопасность, аутентифицироваться, затем настроить туннель и передать данные. Сбой на каждом этапе оставляет разные доказательства, и вертушка не показывает ни одного из них.

Начните с разрешения имени. Если имя хоста не разрешается, ничего о доступности узла проверено не было, потому что соединение так и не покинуло вашу машину. Дальше транспорт: отклонённый или истёкший по времени обмен TCP или UDP говорит, что конечная точка не отвечает на этом порту, и это реальная находка об узле. Затем согласование и аутентификация, где неверный сертификат, просроченный профиль или несовпадающий шифр дают сбой, пока узел совершенно здоров. Только после настройки туннеля сбой маршрутизации или DNS может объяснить последний шаг.

Читайте журнал клиента с самой высокой подробностью, которая ещё помещается на экране, и отметьте последнюю успешную строку. С этой строки начинается диагностика, и обычно она информативнее всего, что показывает каталог.

Одна переменная на попытку

Сравнивайте кандидатов с одним и тем же клиентом, одной и той же сетью доступа и одним и тем же форматом профиля, меняя только конечную точку. Иначе сбой может быть вашим, и вы припишете его узлу.

Двух попыток достаточно, чтобы установить закономерность, а третья её подтверждает. Если узел A сбоит на этапе транспорта, а узел B на аутентификации, у вас две несвязанные проблемы, а не один устаревший список.

Когда каждый узел сбоит одинаково

Всеобщий сбой на первом этапе указывает на вашу сторону: распознаватель, который не может ответить, локальный брандмауэр, блокирующий протокол, или сеть, разрешающая только веб-трафик. Каталог не может сообщить об этом, потому что его проверки не запускаются с вашего места.

Проверьте случай сформированной сети намеренно. Некоторые сети доступа разрешают HTTPS к вебу и отбрасывают другие протоколы, из-за чего каждый кандидат выглядит мёртвым, хотя список точен. Сравнение загрузки страницы в браузере с сырой попыткой соединения разделяет эти две ситуации менее чем за минуту.

Читайте сбой на том этапе, где он произошёл

Воспроизведите попытку из терминала, чтобы этапы были видны. Три команды ниже разрешают имя, проверяют, отвечает ли порт, и печатают строки согласования из профиля OpenVPN:

dig +short node.example.net
curl -s --max-time 5 telnet://node.example.net:443
openvpn --config node.ovpn --verb 4 2>&1 | grep -iE "TLS|AUTH|PUSH"

Если порт отвечает и строка согласования сообщает о проблеме сертификата, узел работает, а ваш профиль устарел. Если порт вовсе не отвечает, запись — это кандидат, который сбойнул, и переход к следующему будет правильным ответом вместо отладки клиента. Отметьте этап в короткой строке, и следующая попытка начнётся со знания, а не с надежды.

Похожие статьи