qvib.pro
EN

~9 мин чтения · всем · Обновлено: 28.07.2026

ИИ-сервис не работает из России: диагностика

ИИ-сервис не работает из России: диагностика

Коротко

«Перестало работать» — это три разные поломки, и лечатся они по-разному. Первая: вас режут на периметре, до приложения запрос не доходит — в браузере страница-заглушка Cloudflare с Ray ID и кодом вида 1009 или 1020, в консоли пусто. Вторая: аккаунт ограничен или ключ отозван — сеть проходит, приложение отвечает, но отдаёт JSON с authentication_error или permission_error, и ломается одинаково с любого IP и устройства. Третья: не прошли деньги — интерфейс жив, ломается только генерация, приходит billing_error или отказ карты.

Порядок проверки на десять минут: статус-страница провайдера → один curl с выводом заголовков → повтор с другой сети и с другого устройства → почта (включая спам) и страница биллинга. Первая же развилка — HTML-заглушка или JSON-ошибка — отсекает половину вариантов.

Главная ошибка: сразу начать перебирать VPN-серверы. При бане аккаунта и при отказе платежа это не помогает, а лишних сигналов вашему аккаунту добавляет.

Зачем отличать три ситуации

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

Различить их можно по одному признаку — кто с вами разговаривает.

  • Периметр (CDN, WAF, DNS) — отвечает HTML-страницей. Никакого JSON, никакого request_id, зато есть Ray ID и номер ошибки. Список этих кодов Cloudflare держит открытым: 1009 — «Access Denied: Country or region banned», 1005 — бан целой автономной системы, то есть провайдера или хостера целиком.
  • Приложение — отвечает JSON по документированной схеме ошибок: объект error с полями type и message плюс request_id. Если вы видите такой ответ, сеть до сервиса дошла, и дело не в стране.
  • Биллинг — отвечает отдельным кодом: у Claude API это 402 billing_error, «There's an issue with your billing or payment information».

Дальше — конкретные шаги.

Диагностика целиком: десять минут по шагам

Шаг 0. Статус-страница, 30 секунд. У Anthropic это status.claude.com с разбивкой по компонентам: claude.ai, Console, API, Claude Code — то есть можно увидеть, что API живой, а веб-интерфейс нет. У OpenAI — status.openai.com. Если там инцидент, дальше можно не копать: ждать. На статус-страницу подписываются на уведомления (почта, вебхук, RSS) — один раз настроили, дальше не гадаете.

Шаг 1. Один запрос с выводом заголовков. Для API это выглядит так:

curl -sS -D - -o /dev/null https://api.anthropic.com/v1/messages \
  -H "anthropic-version: 2023-06-01" \
  -H "content-type: application/json" \
  -d '{"model":"claude-sonnet-5","max_tokens":16,"messages":[{"role":"user","content":"ping"}]}'

Ключ намеренно не передаём. Здоровый ответ на такой запрос — 401 с JSON и request_id: это значит, что до сервиса вы дошли и он с вами разговаривает. Если вместо этого приходит HTML с Ray ID или соединение вообще не устанавливается — вы упёрлись в периметр. Кстати, что Cloudflare стоит перед api.anthropic.com, написано в самой документации: ошибку про размер запроса он возвращает «before the request reaches the API servers».

Для веб-интерфейса тот же шаг — открыть DevTools, вкладку Network, перезагрузить страницу и посмотреть на первый неудачный запрос: код ответа и тело.

Шаг 2. Второй канал. Повторите ровно то же самое с мобильного интернета (не с того же роутера), а потом — с другого устройства и в режиме инкогнито. Это разводит сеть и аккаунт:

Со своей сети С другой сети Вывод
Не работает Работает Блокировка по IP/провайдеру или локальный DNS
Не работает Не работает, но под другим аккаунтом работает Проблема в аккаунте
Не работает Не работает ни под каким аккаунтом Сбой сервиса или блокировка целой подсети
Работает в инкогнито Расширение, куки или кэш

Шаг 3. Почта и биллинг. Провайдеры о санкциях к аккаунту пишут письмом, и оно регулярно улетает в спам. Параллельно откройте страницу баланса: у Anthropic предоплаченные кредиты просто заканчиваются, и это выглядит как «внезапно перестало работать».

Шаг 4. Сохраните request_id. Это единственное, с чем поддержка может что-то сделать: заголовок request-id есть в каждом ответе API и дублируется в теле ошибки. Обращение без него обрабатывается дольше и часто заканчивается шаблонной отпиской.

Разбор по частям: что означает каждый признак

Что видите Слой Что это Что делать
HTML, Ray ID, ошибка 1009/1005 Периметр Гео- или ASN-блокировка Менять канал доступа
Таймаут, соединение не встаёт Сеть DNS, провайдер, фильтрация Проверить DNS, мобильную сеть
401 authentication_error Приложение Ключ отозван, истёк или неверен Выпустить новый ключ
403 permission_error Приложение Нет прав на ресурс, вопрос к настройкам организации Проверить workspace и роль
402 billing_error Биллинг Проблема с оплатой или балансом Пополнить, сменить карту
429 rate_limit_error Лимиты Упёрлись в rate limit Снизить темп, ретраи с backoff
529 overloaded_error Провайдер Перегрузка на стороне сервиса Повторить позже
Логин проходит, но всё пусто Аккаунт Ограничение аккаунта Читать почту, писать в поддержку

Три уточнения, которые экономят время.

Гео. Отсутствие страны в списке поддерживаемых — это не «баг», а условие обслуживания. Anthropic держит список поддерживаемых стран отдельным документом, России в нём нет, и условия использования прямо ссылаются на него: пользоваться сервисом можно «only in compliance with our Terms, including ... the policy governing the countries and regions Anthropic currently supports». Из этого следует неприятное: восстановления «как было» тут не бывает, бывает смена способа доступа. Что реально работает без обходных путей, разобрано в тексте про нейросети без VPN в России, а по конкретно Claude — в доступе к Claude API из России.

Аккаунт. Здесь важен один диагностический факт: при ограничении аккаунта поломка едет за вами. Другой браузер, другой IP, другое устройство — тот же результат. Если хоть где-то работает, дело не в аккаунте.

Деньги. Отказ карты — не сбой сервиса. У Stripe есть открытый справочник кодов отказа, и там видно, что отказ бывает двух происхождений: от банка-эмитента (do_not_honor — «declined for an unknown reason», разбираться с банком) и от самого Stripe (generic_decline может означать блокировку правилами Radar). Отдельный случай — authentication_required: нужен 3-D Secure, который на карте иностранного посредника часто просто некому подтвердить. Российская карта в большинстве зарубежных ИИ-сервисов не проходит вовсе, и это ожидаемое поведение, а не поломка.

Чего делать не надо

Перебирать VPN-серверы по кругу. Если ответ приходит от приложения (JSON с type), смена IP не меняет ничего — вы приходите под тем же аккаунтом.

Заводить второй аккаунт на тот же e-mail, телефон или карту. Так вы связываете новый аккаунт со старым.

Отдавать логин или ключ «человеку, который починит». Это отдельный пункт условий: «You may not share your Account login information, Anthropic API key, or Account credentials with anyone else». Санкция за это — не предупреждение, а прекращение доступа. Про то, как ключи вообще устроены и почему их нельзя пересылать в мессенджере, есть отдельный разбор.

Ставить «расширение-разблокировщик» из поиска. Расширение получает доступ к содержимому страниц, включая ваши сессии.

Писать в поддержку «у меня не работает». Без request_id, точного времени и кода ответа тикет уходит в шаблонный ответ.

Заливать чужие персональные данные в первый попавшийся доступный сервис, пока чините основной. Аварийная замена — самый частый момент, когда данные клиентов уезжают туда, куда не следовало; ограничения описаны в материале про ИИ и 152-ФЗ.

Как держать доступ живым

Доступ ломается не в удобное время, поэтому имеет смысл заранее:

  • подписаться на статус-страницы тех сервисов, на которых у вас что-то стоит;
  • держать запасного провайдера с уже выпущенным ключом — для агентных редакторов это решается списком бесплатных LLM-провайдеров для Cline и Roo Code, для инференса — вариантами вроде Groq с его лимитами;
  • не держать весь бюджет на одном балансе;
  • логировать request_id и код ответа в своём коде — иначе через неделю вы не докажете, что именно сломалось;
  • раз в месяц проверять, что запасной путь ещё живой: ключи протухают, тарифы меняются, страны из списков пропадают.

Честное ограничение: эта диагностика говорит, что именно сломалось, но не гарантирует, что это чинится. Гео-блокировка и бан аккаунта — решения провайдера, и в обоих случаях вы упираетесь в его правила, а не в свои настройки. Ценность в другом: вы перестаёте тратить вечер на лечение не той болезни.

Частые вопросы

Как отличить бан аккаунта от блокировки по IP за одну минуту?

Откройте сервис в режиме инкогнито с мобильного интернета под другим аккаунтом. Работает — значит, канал в порядке и дело в вашем аккаунте. Не работает ни под каким аккаунтом — дело в канале или в самом сервисе. Для API тот же тест делается запросом без ключа: JSON-ошибка означает, что сеть дошла.

Пришло письмо об ограничении аккаунта. Поможет ли смена VPN?

Нет. Ограничение висит на аккаунте, а не на адресе. Смена IP после письма только добавляет несоответствий в историю входов. Единственный рабочий путь — обращение в поддержку с деталями, и приготовьтесь к тому, что решение может быть отрицательным и без объяснений: условия позволяют приостановить доступ «at any time without notice».

Сервис работал, а после оплаты перестал. Что это?

Скорее всего, платёж прошёл частично или был отменён после проверки. Смотрите две вещи: код ошибки от API (402 billing_error указывает именно на биллинг) и статус транзакции в личном кабинете и у банка. Если платёж отбил эмитент — вопрос к банку, а не к сервису.

Ошибка 429 — это блокировка?

Нет, это rate limit: «Your account has hit a rate limit». Лечится темпом запросов и повторами с экспоненциальной задержкой — официальные SDK делают это сами, по умолчанию два раза, с учётом заголовка retry-after. Соседний код 529 означает перегрузку сервиса и к вашему аккаунту отношения не имеет.

Что приложить к обращению в поддержку?

request_id из ответа (или Ray ID, если ответил периметр), точное время с часовым поясом, код ответа, полный текст ошибки и что вы уже проверили: другую сеть, другое устройство, другой аккаунт. Скриншот без этих данных бесполезен.

Читайте также