Меню документации

Справочник ошибок прокси

Ошибки прокси — это сбои плоскости данных при входе по HTTP или SOCKS5. Они не связаны с JSON-ошибками, которые возвращает Litport API.

Ошибки HTTP-прокси#

При входе по HTTP сначала изучите эти заголовки ответа, а потом интерпретируйте HTTP-статус:

X-Proxy-Error-Code: 10
X-Proxy-Error-Message: Too many requests

Числовой заголовок — основной признак. Одного HTTP-статуса недостаточно: несколько путей совместимости используют 500, а некоторые сетевые сбои определяются как 503. Коды 11 и 12 могут нести более конкретное сообщение в ответе, чем сообщение по умолчанию из таблицы ниже.

Код 13 (недостаточно средств на балансе аккаунта) — исключение из соглашения о 500: он возвращает 402 Payment Required. Многие клиенты сообщают только строку статуса, когда HTTPS-туннель не удалось открыть, поэтому по одному статусу они понимают, что проблема в балансе. Пополните баланс перед повторной попыткой.

Код Символ Сообщение по умолчанию или в ответе HTTP-статус(ы) Рекомендация по повтору Что делать
0 ErrorNone Пусто Ответа с ошибкой нет Неприменимо Считайте запрос успешным.
1 ErrorPanic panic 500 Без повторов в плотном цикле Повторите один раз с задержкой, затем обратитесь в поддержку с данными запроса.
2 ErrorInternal Internal proxy error 500 или 503 Повтор с ограниченной задержкой Повторите ограниченное число раз, затем обратитесь в поддержку.
3 ErrorInterrupted Connection was interrupted 500 Только если операция приложения безопасна Перед повтором проверьте таймауты клиента и целевого сайта.
4 ErrorNoToken Token not found 407 После исправления данных для подключения Проверьте логин, пароль, хост и порт прокси.
5 ErrorNoAccess Access denied 500 для совместимости Без автоматического повтора Проверьте статус токена, доступ аккаунта и политику назначения.
6 ErrorLimited You have reached the limit of concurrent connections 403 Когда появится свободная ёмкость Закройте неиспользуемые соединения или снизьте параллелизм.
7 ErrorNoProxy Internal proxy error 500 Повтор с ограниченной задержкой Повторите ненадолго; если апстрим не появляется, обратитесь в поддержку.
8 ErrorHubMismatch Proxy host mismatch, check token settings 500 После исправления хаба Используйте хаб, указанный для токена в личном кабинете.
9 ErrorHubProxyTypeMismatch Proxy type mismatch, check token settings 500 После исправления входа Используйте текущий HTTP- или SOCKS5-эндпоинт токена.
10 ErrorRateLimited Too many requests 403 Нужна задержка перед повтором Снизьте частоту новых запросов или новых соединений для этого режима входа.
11 ErrorPpgGetProxy PPG proxy error Может быть заменено конкретным сообщением в ответе. 500 Зависит от конкретного сообщения Исправьте параметры пула, географии или сессии; иначе повторите с задержкой.
12 ErrorPpgStats PPG stats error Сообщение в ответе может быть другим. 500 Повтор с ограниченной задержкой Повторите ненадолго, затем обратитесь в поддержку, если ошибка не исчезает.
13 ErrorPpgNotEnoughUnits Insufficient account balance 402 Не сетевой повтор Проверьте баланс аккаунта или пополните его в личном кабинете.
14 ErrorRemoteProxy Remote proxy connection error 500 или 503 Повтор с ограниченной задержкой Повторите с задержкой; повтор может выбрать другой удалённый прокси. Если вы выбираете страну, регион или город и ошибка не пропадает, в этой локации сейчас может не быть IP онлайн: повторите позже или расширьте локацию.
15 ErrorUpstreamConnection Upstream server connection error 500 или 503 Зависит от безопасности назначения Перед повтором проверьте назначение и политику повторов.
16 ErrorPpgUpstreamResponse Internal proxy error 500 Повтор с ограниченной задержкой Повторите ненадолго; если ошибка не исчезает, обратитесь в поддержку, указав хаб, ID токена, назначение, время и код 16 (никогда не указывайте пароль прокси).
17 ErrorPackageBandwidthExceeded packageBandwidthExceeded 403 Не сетевой повтор Это возможно только у старого пакета с лимитом трафика: он израсходовал трафик за текущий период. Дождитесь продления периода или обратитесь в поддержку.
18 ErrorPackageEntitlementUnavailable packageEntitlementUnavailable 503 Повтор с ограниченной задержкой Не удалось вовремя прочитать или зарезервировать права пакета. Повторите ненадолго; если ошибка не исчезает, обратитесь в поддержку, указав хаб, ID токена и время.
19 ErrorPackageInactive packageInactive 403 Без автоматического повтора Пакет приостановлен или отменён. Проверьте его статус и способ оплаты в личном кабинете.
20 ErrorPackageExpired packageExpired 403 Без автоматического повтора Период пакета закончился. Продлите его или купите новый пакет в личном кабинете.
21 ErrorPackageMissing packageMissing 403 Без автоматического повтора Токен указывает на пакет, которого больше нет. Обратитесь в поддержку и укажите ID токена.
22 ErrorPackageStale packageEntitlementStale 403 Без автоматического повтора Хаб хранит запись о пакете, слишком устаревшую, чтобы ей доверять. Обратитесь в поддержку, указав хаб, ID токена и время.
23 ErrorClientAborted Client closed the connection Не отправляется (клиент уже закрыл соединение) Неприменимо Ваш клиент закрыл или сбросил соединение до завершения запроса. Проверьте таймауты клиента и повторное использование соединений.

Для общего мобильного токена «Мультилокация» код 7 с сообщением noHealthyRoute означает, что у сохранённой цели сейчас нет исправных устройств. Прочитайте местоположение токена, затем дождитесь восстановления или выберите другую доступную цель. Город всегда сохраняется: оператор, у которого в этом городе нет работающего телефона, заменяется другим оператором в том же городе, а effective показывает оператора, который используется фактически.

Неудачное TLS-рукопожатие с HTTP-эндпоинтом прокси по https:// проявляется как закрытие соединения до отправки любого HTTP-ответа, поэтому X-Proxy-Error-Code для проверки нет. Если соединение https:// закрывается сразу, проверьте схему URL, имя хоста (не IP-адрес) и то, что клиент доверяет корневому сертификату кеша Litport для соединения с прокси.

Сбои PPG-апстрима#

Код 16 означает, что апстрим с оплатой за ГБ не смог обработать запрос. Это не означает, что 500 Litport вернул сам целевой сайт. Код 14 означает, что удалённый прокси отказал в соединении или оборвал его, например потому, что в выбранной локации нет ни одного IP онлайн. В обоих случаях Litport намеренно заменяет статус, заголовки и тело ответа провайдера апстрима своей фиксированной ошибкой.

HTTP-клиентам следует ветвить логику по X-Proxy-Error-Code: 16, а не только по HTTP-статусу. SOCKS5-клиенты получают общий сбой без числового заголовка; чтобы увидеть код Litport, воспроизводите через HTTP-вход токена только безопасный идемпотентный запрос.

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

Ответы SOCKS5#

SOCKS5 не передаёт X-Proxy-Error-Code и X-Proxy-Error-Message. Несколько внутренних категорий намеренно сводятся к одному ответу.

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

Ответ Значение Возможные категории
auth 0x01 Логин отклонён Шаг логина и пароля (RFC 1929) не пройден, и соединение закрыто до любого запроса. Здесь выполняется большинство проверок токена и аккаунта: неизвестный, отключённый или просроченный токен либо неверный пароль (4), несоответствие доступа токена (5), неверный хаб (8) или протокол (9), неверные параметры пула PPG (11), учёт PPG (12), недостаточный баланс (13) и состояние пакета (17–22). Клиенты обычно сообщают об этом как об ошибке аутентификации.
0x01 Общий сбой Внутренний сбой или сбой подключения к апстриму после принятия запроса. Чаще всего коды 2, 14, 15 или 16.
0x02 Соединение не разрешено Запрос отклонён после логина: правила назначения или сети (5), лимит одновременных соединений (6), нет доступного апстрима (7), ограничение частоты запросов (10), выбор апстрима PPG (11) или PPG UDP, который выбранный апстрим не поддерживает.
0x07 Команда не поддерживается Запрошенная команда SOCKS5 не реализована; это не X-Proxy-Error-Code.

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

Безопасная политика повторов#

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

Данные для поддержки#

Укажите хаб Litport, вход по HTTP или SOCKS5, время в UTC, ID токена, хост и порт назначения, а также наблюдаемый код и сообщение об ошибке или ответ SOCKS5. Если это важно, укажите метод запроса.