Симптомы#
- Сервис проверки IP несколько раз подряд возвращает один адрес, хотя идентификатор сессии не задан.
- Ресурс с лимитами по IP блокирует краулер, который якобы меняет адрес, но повторно использует пул из десяти соединений.
Настройки для разных клиентов#
| Клиент | Как получить новое соединение на каждый запрос |
|---|---|
| cURL | каждый отдельный запуск уже создаёт новое соединение |
| Python requests | requests.get(...) без Session, или headers={"Connection": "close"} |
| Node.js fetch / undici | новый ProxyAgent на каждый запрос, или pipelining: 1 с keepAliveTimeout: 0 |
| Go net/http | Transport.DisableKeepAlives = true |
| Браузеры | управлять этим нельзя; используйте закреплённую сессию и меняйте -sid- для ротации |
Обратная задача#
Если для нескольких запросов нужен один выходной IP, keep-alive помогает сохранить его в пределах одного соединения. Однако полагаться только на это не стоит: используйте закреплённую сессию, чтобы адрес сохранялся и после сброса соединения.
Как это работает в HodlProxy#
Шлюзы HodlProxy выбирают выходной IP при открытии нового соединения и сохраняют его до закрытия этого соединения. Неактивные соединения закрываются через 60 секунд. Параметр -sid- явно закрепляет выбор IP и делает его независимым от соединения.