Знакомая картина: туннель поднят, всё работает — но поисковик просит выбрать светофоры, магазин показывает проверку, а форма отправляется только со второго раза. Без туннеля ничего этого нет.

Легко решить, что дело в самом VPN. На самом деле проверяют не туннель, а адрес, с которого пришёл запрос, — и оценка адреса складывается из вещей, к которым вы отношения не имеете.

Кого именно оценивают

Когда трафик идёт через туннель, сайт видит адрес сервера. Ваш собственный адрес до него не доходит — в этом и смысл. Но следствие такое: сайт судит не о вас, а о сервере.

За одним адресом в этот момент находятся десятки, а то и сотни клиентов. Ситуация зеркальна CGNAT у провайдера, где один внешний адрес делят абоненты целого района: тот же общий адрес, только собран он на другой стороне. Для сайта разницы нет — он видит один источник и суммирует поведение всех, кто за ним стоит.

Достаточно нескольких человек, которые качают страницы скриптом, перебирают пароли или рассылают спам с формы обратной связи, — и адрес получает пометку. Дальше проверку показывают всем.

Из чего складывается оценка

Единой «репутации» не существует: у каждого сервиса своя формула. Но набор входных данных примерно общий.

Тип сети. Самый весомый признак. По номеру автономной системы (ASN) видно, кому принадлежит диапазон: домашнему провайдеру, мобильному оператору или дата-центру. Адреса дата-центров подозрительны по определению — за ними обычно серверы, а не люди. Именно поэтому туннель с адресом хостинга собирает капчи там, где домашний адрес проходит молча, и по этой же причине мобильные адреса проходят легче всего: там сидят живые абоненты.

Списки и жалобы. Публичные чёрные списки (спам, сканирование, брутфорс) и внутренние истории самих сервисов. Попасть в них можно за час, выйти — за недели.

Плотность запросов. Сколько разных сессий приходит с адреса в единицу времени. Общий адрес всегда выглядит плотнее домашнего.

Несовпадение признаков. Адрес в Нидерландах, язык интерфейса русский, часовой пояс московский, раскладка клавиатуры тоже. Само по себе это не запрещено, но добавляет к оценке.

История отношений с конкретным сайтом. Постоянный посетитель с давними входами и покупками проходит проверки легче случайного.

Дело не только в адресе

Смена адреса не убирает проверки полностью, потому что адрес — лишь часть картины.

При установке TLS-соединения клиент отправляет список поддерживаемых шифров, расширений и их порядок. Набор устойчив и заметно различается у разных браузеров и библиотек — из него получается отпечаток соединения (JA3, JA4 и родственные схемы). Он говорит не «кто вы», а «чем вы пришли»: настоящий браузер, автоматизированный клиент или скрипт на Python.

Похожая история с HTTP/2: порядок заголовков, параметры окон, приоритеты потоков тоже складываются в подпись.

Отсюда практическое следствие: с обычного браузера отпечаток обычный, и вопросов к нему нет. Но если запросы идут из скрипта или необычного клиента, капча будет и на «чистом» адресе. Заодно понятно, почему инкогнито ничего не меняет: он чистит хранилище браузера, а не адрес и не отпечаток соединения.

Механика самих подписей подробнее разобрана в статье про маскировку трафика: там речь о том, как протокол скрывает себя от анализатора, но признаки формируются те же.

Почему банк ведёт себя иначе

Проверка при входе в банк или на госпортал — не капча и не про репутацию. Это антифрод: система сравнивает вход с вашей обычной картиной. Обычно вы заходите из Москвы с домашнего адреса, а сейчас пришли из Финляндии с адреса хостинга — на это положено среагировать.

Спорить с антифродом бессмысленно, он работает как задумано. Разумнее не пускать такие приложения в туннель вовсе — для этого есть раздельное туннелирование: банковские и государственные сервисы ходят напрямую, остальное через туннель. Заодно исчезают лишние подтверждения по SMS.

Что делать

Сменить сервер. Репутация привязана к адресу, а не к сервису. Другой узел — другой диапазон, другая история. Это первое, что стоит попробовать, и чаще всего этого достаточно.

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

Вынести часть трафика из туннеля. Банки, госуслуги, доставка, локальные сервисы — им туннель не нужен, а проверок от него много.

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

Для Telegram не поднимать туннель вовсе. Если задача ограничивается мессенджером, MTProto-прокси работает внутри самого приложения, остальной трафик идёт своим путём — и репутация адреса ни на что больше не влияет.

Чего ждать не стоит

Полностью «чистого» общего адреса не бывает. Любой адрес, которым пользуется больше одного человека, рано или поздно накопит историю — вопрос только в том, как быстро и как далеко она разойдётся по спискам.

Выделенный адрес эту проблему решает, но ценой приватности: если адресом пользуетесь только вы, то и весь трафик с него принадлежит вам одному — ровно то свойство, ради устранения которого туннель и поднимали. Это осознанный размен, и он не всегда в вашу пользу.

Полезно помнить, какую задачу вы вообще решаете: доступность, приватность и анонимность — три разные цели, и требования к адресу у них противоположные.

Коротко

Капчи с туннелем появляются потому, что адрес сервера принадлежит дата-центру и делится между пользователями; сайт оценивает адрес целиком, а не вас. К адресу добавляются отпечаток TLS-соединения и совпадение косвенных признаков — страны, языка, часового пояса. Лечится сменой узла и выносом «чувствительных» приложений из туннеля; чисткой cookie и режимом инкогнито — нет.