Ротация IP означает, что прокси меняет исходящий IP-адрес, который он использует от вашего имени — при каждом запросе, через заданное время или по вашему запросу — так что ваша активность распределяется по множеству адресов, а не накапливается на одном. Она существует потому, что почти каждая защита сайта от автоматизации работает на уровне IP: лимиты запросов, бюджеты запросов, списки блокировок. При правильной ротации каждый IP остается ниже всех порогов; при неправильной вы ломаете собственные логины. Это руководство описывает механику и компромиссы.
Проблема, которую решает ротация
Сайт видит, что с одного IP за час пришло 5000 запросов, и правильно заключает, что это скрипт. Он отвечает капчей, ошибкой 429 Too Many Requests или молчаливой блокировкой. Те же 5000 запросов с 500 IP — по десять с каждого — выглядят как 500 человек, каждый из которых просмотрел несколько страниц. В трафике не изменилось ничего, кроме распределения по адресам.
Поэтому ротация — это не маскировка; это балансировка вашей репутации. Каждый IP имеет определенный запас доверия на конкретном сайте, и ротация позволяет вам тратить понемногу из многих бюджетов, а не исчерпать один.
Как на самом деле работают ротируемые прокси: backconnect-шлюзы
Вы не получаете список из 10 000 IP и не перебираете их сами. Вместо этого провайдер дает вам единую точку входа — что-то вроде gate.provider.com:7777 — называемую backconnect или шлюзовым прокси. Вы всегда подключаетесь к этому одному адресу. За ним система провайдера выбирает исходящий IP из своего пула для каждого соединения в соответствии с правилами, которые вы задаете через имя пользователя или специальный заголовок.
Типичные учетные данные выглядят так:
user-country-de-city-berlin-session-a1b2c3-sessTime-10:password
Каждый сегмент, разделенный дефисами, является инструкцией для шлюза: использовать немецкий IP в Берлине, сохранять тот же исходящий IP для сессии с именем a1b2c3 и разрешить этой сессии жить 10 минут. Точный синтаксис зависит от провайдера, но модель универсальна: одна точка входа, параметры в логине, исходящий IP выбирается для каждой сессии.
Преимущества практичны. Вашему приложению не нужно знать, какой IP оно получило; мертвые IP заменяются незаметно; а геотаргетинг — это изменение строки, а не новая покупка.
Ротация против sticky-сессий
Это два режима, которые предлагает каждый шлюз, и выбор неправильного — самая распространенная ошибка ротации.
| Ротация (на каждый запрос) | Sticky (сессия) | |
|---|---|---|
| Смена IP | При каждом новом соединении | Удерживается заданное время (обычно 1–30 мин, у некоторых провайдеров до часов) или до тех пор, пока вы его не освободите |
| Cookies / логины | Ломаются — сайт видит нового посетителя каждый раз | Сохраняются — сайт видит одного посетителя на протяжении всего потока |
| Лучше всего для | Stateless-запросы: страницы товаров, результаты поиска, публичные списки | Многошаговые сценарии: вход → просмотр → оформление заказа; отправка форм; все, что требует session cookie |
| Риск | Нет риска от самой ротации; риск в отпечатке каждого запроса | Длинные сессии накапливают активность на одном IP |
| Как выбрать | Опустите параметр сессии | Передайте ID сессии; используйте его повторно для непрерывности, меняйте для ротации |
Правило: если сайту нужно запоминать вас между запросами, используйте sticky; если каждый запрос независим, ротируйте. Скрапинг 10 000 страниц товаров — ротация. Вход и добавление в корзину — sticky на время потока пользователя, затем новая сессия для следующего пользователя.
Ловушка: ротация в середине сессии
Антифрод-системы специально отслеживают, когда IP залогиненной сессии меняется между странами или ASN в середине потока. Реальный человек на телефоне может сменить IP один раз, когда выходит из Wi-Fi в 4G; он не становится бразильцем на третьем шаге немецкого оформления заказа. Если ваша сессия неожиданно прерывается, проверьте, не истек ли sticky-период.
Стратегии ротации
- На каждый запрос. Максимальное распределение, нулевая непрерывность. По умолчанию для скрапинга.
- По таймеру. Новый IP каждые N минут. Хорошо для задач, требующих короткой непрерывности — пагинация по результатам, следование цепочке редиректов.
- По требованию. Ваш код решает, когда ротировать — обычно после 403/429, капчи или когда счетчик на IP достигает порога. Самый эффективный, потому что вы ротируете только при необходимости и сохраняете хорошие IP рабочими.
- По цели. Разные правила ротации для разных сайтов: быстрые для агрессивных целей, медленные для толерантных. Зрелые скрапинг-системы делают это для каждого домена.
- Ручная / мобильная переподключение. С мобильным модемом принудительное переподключение запрашивает новый IP у оператора. Используется осознанно между аккаунтами или после шагов прогрева.
Как выбрать интервал ротации
Универсального числа нет; правильный интервал определяется толерантностью цели к IP и вашей пропускной способностью. Рассчитайте его, ответив на три вопроса:
- Сколько запросов на IP сайт выдерживает, прежде чем среагирует? Измерьте: отправляйте запросы с одного IP в вашем темпе, пока не увидите капчу, 429 или ухудшение ответов. Назовите это N. Ротируйте значительно раньше N — половина — комфортный запас.
- Сколько запросов в минуту вам нужно в целом? Разделите на ваш темп на IP, чтобы получить, сколько IP должно быть активно одновременно. Лимит параллельных соединений вашего плана должен это покрывать.
- Нужна ли непрерывность в какой-либо части вашего потока? Если да, эта часть должна работать на sticky-сессии как минимум столько, сколько длится поток, а затем ротироваться.
Практические отправные точки, которые нужно скорректировать по результатам измерений:
| Задача | Начальная ротация |
|---|---|
| Скрапинг публичных страниц, толерантный сайт | Ротация каждые 50–100 запросов или на каждый запрос, если пул большой |
| Скрапинг публичных страниц, агрессивная антибот-защита | На каждый запрос; добавьте задержки и человеческое поведение |
| Страницы результатов поисковых систем | На каждый запрос; SERP — самая сильно ограниченная поверхность в интернете |
| Вход + несколько действий | Sticky 10–30 мин на пользовательскую сессию, затем ротация |
| API с документированным лимитом на IP | Ротируйте ровно тогда, когда счетчик приближается к лимиту; не раньше |
| Долгоживущий аккаунт (продавца, рекламный) | Не ротируйте — используйте статический IP; сама ротация здесь является красным флагом |
Последняя строка достаточно важна, чтобы повторить: ротация предназначена для анонимности объема, а не для аккаунтов, которые вы сохраняете. Аккаунт продавца на маркетплейсе, который входит с разных IP каждый день, выглядит украденным. Дайте постоянным личностям постоянный адрес — ISP-прокси или выделенный мобильный порт — и оставьте ротацию для одноразового трафика. Наше сравнение типов прокси рассказывает, какие типы предлагают статические IP.
Ротация и геотаргетинг
Ротация происходит в пределах указанной вами цели. Ротация по всему пулу страны подходит для «где угодно в Германии». Если ваша задача — «покупатель в Мюнхене», ограничьте ротацию этим городом, иначе каждый запрос будет попадать в другое место, и сайт, определяющий местоположение, увидит телепортирующегося посетителя. Провайдеры предоставляют это через строку учетных данных, как в примере выше; см. также нашу заметку о ротации по странам.
Чего ротация не может исправить
Ротация IP при отправке тех же cookies, того же отпечатка браузера и той же TLS-подписи не создает множество посетителей; она создает одного посетителя с подозрительной привычкой менять адрес. Сайты, использующие fingerprinting, свяжут сессии независимо от IP. Ротация должна сочетаться с новым состоянием сессии — новым хранилищем cookies для каждой личности, согласованным User-Agent для каждой сессии, а для браузерной автоматизации — антидетект-профилем для каждой личности. IP — это одно измерение личности; ротируйте его в такт с остальными.
Часто задаваемые вопросы
Что такое backconnect-прокси?
Единый адрес шлюза, который дает провайдер и который перенаправляет каждое соединение на другой исходящий IP из своего пула. Вы настраиваете один хост и порт; ротация происходит на стороне провайдера. Почти все сервисы резидентных и мобильных прокси продаются именно так.
Что такое sticky-сессия?
Режим, при котором шлюз сохраняет один и тот же исходящий IP для именованной сессии в течение заданного периода, так что cookies и логины сохраняются между запросами. Вы выбираете его, передавая идентификатор сессии в имени пользователя прокси; изменение идентификатора дает вам новый IP.
Как часто нужно ротировать для веб-скрапинга?
Достаточно часто, чтобы ни один IP не превышал примерно половину наблюдаемой толерантности цели к IP. Для большинства защищенных сайтов это означает на каждый запрос; для толерантных — каждые несколько десятков запросов. Измеряйте толерантность, а не угадывайте — она различается по сайтам и меняется со временем.
Предотвращает ли ротация IP блокировки?
Она предотвращает блокировки по IP из-за объема. Она не предотвращает блокировки, вызванные отпечатком, поведением или учетными данными, и ротация в середине сессии сама может вызвать антифрод-проверки. Ротация — один из нескольких контролей.
Нужно ли ротировать IP для моих аккаунтов?
Обычно нет. Аккаунты, которые вы собираетесь сохранить, должны жить на стабильном IP, соответствующем их заявленному местоположению. Ротируйте только между разными аккаунтами, никогда внутри одного, и никогда не делите один IP между аккаунтами на одной платформе.
Ротация или sticky дороже?
Обычно одинаково на планах с оплатой за гигабайт; пул тот же, отличается только правило назначения. Некоторые провайдеры продают выделенные статические IP (крайний случай «sticky») отдельно и дороже.