Rotación de proxies: cuándo cambia la IP
La rotación de proxies cambia la IP de salida que ve un sitio web al recibir tu tráfico. El cambio puede producirse con una solicitud nueva, después de un intervalo definido o cuando tu aplicación pide otra dirección. Elegir el momento adecuado permite repartir las solicitudes independientes entre distintas IP y mantener juntas las acciones relacionadas.
La elección general entre una dirección fija y direcciones cambiantes se trata en Proxies estáticos y rotativos. Aquí la cuestión es qué provoca un cambio y cómo afecta a las solicitudes ya iniciadas.
¿Qué cambia durante la rotación?
Con una puerta de enlace rotativa, la dirección introducida en tu programa puede permanecer igual mientras el sitio web ve distintas IP de salida. Te conectas al mismo nombre de host y puerto; el servicio elige la salida utilizada para la conexión al sitio web.
Por ejemplo, un monitor de precios puede obtener una página pública de producto a través de 192.0.2.14 y otra mediante 198.51.100.27. Son direcciones de ejemplo. El ordenador que ejecuta el monitor no ha cambiado su conexión a Internet; las solicitudes llegan al sitio a través de salidas diferentes.
Dos decisiones distintas determinan el resultado: cuándo volver a seleccionar una salida y de dónde obtener la siguiente. Un temporizador puede seleccionar otro proxy disponible o reconectar un módem móvil. El desencadenante es el mismo, pero la operación y cualquier interrupción pueden ser distintas.
Rotación con cada solicitud
Con la rotación por solicitud, el servicio realiza una nueva selección de salida para cada solicitud que puede encaminar de forma independiente. Esto encaja con páginas de productos, anuncios públicos o consultas de búsqueda independientes que no necesitan compartir una IP. Conviene precisar qué significa «solicitud»: en tráfico HTTPS y SOCKS5 sobre TCP, la rotación suele aplicarse cuando se abre una conexión nueva con el destino.
Imagina recopilar el precio de 500 páginas de productos. Cada página proporciona un resultado independiente. El servicio puede distribuir esas solicitudes entre las salidas disponibles, en lugar de enviar todo el trabajo a través de una sola dirección. Varias solicitudes ejecutadas al mismo tiempo también pueden utilizar salidas diferentes.
Una nueva selección puede devolver una dirección utilizada anteriormente. El grupo disponible es finito y la selección puede ser aleatoria. La rotación por solicitud no promete por sí sola 500 IP diferentes para 500 solicitudes.
Una solicitud y una conexión son cosas distintas
Una aplicación puede enviar varias solicitudes HTTP por una sola conexión. En una conexión HTTPS ordinaria a través de un proxy, primero abre un túnel hacia el destino. Después, las solicitudes cifradas viajan dentro de ese túnel y el proxy reenvía sus datos sin leer cada solicitud individual.
Por tanto, la salida permanece igual durante ese túnel. Un servicio descrito como «por solicitud» puede elegir otra salida cuando la aplicación abre un túnel nuevo o una conexión nueva con el destino. Reutilizar el túnel existente puede mantener la IP anterior.
Una página del navegador puede cargar muchos recursos mediante varias conexiones, y al actualizarla se pueden reutilizar conexiones ya abiertas. Por ello, la rotación no equivale a un clic, una pestaña o una carga completa de página.
Rotación a intervalos definidos
Con la rotación por tiempo, una asignación de IP dura un período definido. Después, el servicio vuelve a elegir una salida. Las solicitudes relacionadas pueden compartir la dirección asignada durante ese período, siempre que la salida siga disponible.
Supongamos que una sesión comienza a las 10:00 y dura cinco minutos. Una prueba abre un catálogo, aplica un filtro y comprueba la siguiente página de resultados utilizando la misma salida. A las 10:05 vence la asignación; una conexión nueva después del vencimiento puede recibir otra dirección. Los cinco minutos son un ejemplo, no un intervalo estándar de todos los servicios.
Comprueba cuándo empieza a contar el temporizador. Puede contar desde la primera solicitud de una sesión o seguir un horario para un puerto del proxy. Si falta un minuto para el siguiente cambio programado, empezar una tarea ahora no te da un período completo de cinco minutos. Un tiempo de espera por inactividad independiente también puede terminar antes una asignación.
El intervalo suele aplicarse a una sesión, un puerto o una configuración de conexión del proxy concretos. No necesariamente hace rotar todas las conexiones de una cuenta a la vez. Si varias tareas necesitan asignaciones de IP separadas, necesitan la separación correspondiente admitida por el servicio.
Conservar una salida asignada durante varias solicitudes suele denominarse sesión persistente. Un servicio rotativo puede utilizar este modo para mantener una dirección durante un tiempo y después volver a seleccionar.
Rotación bajo demanda
Con la rotación bajo demanda, tú o tu aplicación elegís el momento de solicitar otra salida. Según el servicio, el control puede ser un botón del panel, una URL de rotación o una orden de API. Algunos servicios también realizan una asignación nueva cuando inicias otra sesión de proxy.
Esto resulta útil cuando una tarea tiene varios pasos relacionados, pero una duración imprevisible. Una prueba puede abrir un formulario, enviarlo y esperar la página de confirmación. Puede mantener la salida actual durante toda la secuencia y solicitar otra asignación antes de iniciar la siguiente prueba independiente.
La rotación bajo demanda puede automatizarse: la aplicación envía la orden de cambio después de completar una tarea o un número elegido de solicitudes. «Bajo demanda» describe quién decide cuándo cambiar. No exige que una persona pulse un botón cada vez.
También importa el alcance del control. Una orden puede afectar a una sola sesión, a todo un puerto de proxy o a un módem físico compartido por varias conexiones. Si cambia la asignación de todas esas conexiones, también puede afectar a otros trabajos que utilicen ese recurso.
¿Qué sucede con una solicitud ya iniciada?
En una conexión TCP ordinaria con un sitio web, la IP de salida sigue formando parte de esa conexión. Una solicitud y su respuesta utilizan la misma conexión establecida. La rotación no puede trasladar sin más el intercambio pendiente a otra IP de salida.
Un servicio puede gestionar el momento de la rotación de distintas maneras. Puede permitir que una conexión existente termine por su salida actual y aplicar la nueva asignación a conexiones posteriores. También puede cerrar la conexión, obligando a la aplicación a reconectarse. Reconectar un módem también puede interrumpir el tráfico que pasa por él.
Piensa en una descarga que empieza justo antes de una rotación programada. Si la conexión se mantiene abierta, la descarga puede continuar por la salida anterior después de vencer el temporizador. Si la conexión se cierra, la aplicación debe reiniciar la descarga o reanudarla cuando sea posible. El intervalo de rotación por sí solo no indica cómo se comportará una transferencia activa.
¿De dónde sale la siguiente IP?
Seleccionar otra salida de un grupo
Un servicio basado en un grupo elige una salida disponible. La siguiente conexión puede utilizar otra IP del mismo servidor de centro de datos, otro servidor, una conexión doméstica o un dispositivo móvil. Seleccionar una salida de un grupo no exige reconectar el dispositivo que transportó la solicitud anterior.
Cuando se admiten filtros de ubicación o de red, estos restringen las salidas que pueden elegirse. Seleccionar otra IP dentro de un país no exige cambiar de país. Una selección más restringida también puede implicar menos direcciones disponibles y más repeticiones.
Reconectar un módem móvil
Algunos servicios de proxies móviles rotan desconectando y restableciendo la conexión de datos móviles del módem. El tráfico de esa conexión puede detenerse durante el proceso. El operador determina las direcciones públicas, por lo que la reconexión puede devolver la misma IP pública.
Otros servicios móviles seleccionan otro dispositivo disponible de un grupo. Ambas son formas de rotación de proxies móviles, pero pueden tener efectos distintos sobre el trabajo en curso. El término rotación móvil por sí solo no especifica qué mecanismo se utiliza.
¿Quién controla los cambios?
Con una puerta de enlace rotativa, el proveedor elige la salida según el modo solicitado. Tu aplicación puede mantener la misma puerta de enlace en su configuración mientras el servicio gestiona las direcciones de salida.
Tu aplicación también puede rotar por sí misma una lista de proxies fijos. Por ejemplo, puede utilizar la primera dirección para una tarea, la segunda para la siguiente y continuar por la lista. Puede seleccionar en orden o al azar, cambiar después de cada solicitud independiente o mantener un proxy hasta terminar una tarea.
Por tanto, una lista de proxies estáticos de centro de datos o ISP puede servir para un proceso con rotación. La IP propia de cada proxy sigue fija; tu programa cambia qué proxy transporta la siguiente conexión. Esto resulta útil cuando quieres controlar tú mismo la asignación de direcciones a los trabajos.
Sustituir las direcciones compradas de una suscripción es otra operación. Una renovación programada cambia el conjunto de IP al que puedes acceder. No hace que tu aplicación alterne automáticamente entre ellas durante su trabajo.
Elige el momento según la tarea
Empieza por identificar qué acciones necesitan mantener la misma salida. Después, sitúa el cambio en un punto donde la siguiente solicitud o tarea pueda utilizar otra IP.
| Tarea | Momento adecuado | Motivo |
|---|---|---|
| Recopilar páginas públicas de productos independientes | Por solicitud o por conexión nueva con el destino | Cada resultado puede obtenerse mediante una salida seleccionada por separado. |
| Realizar varias comprobaciones relacionadas dentro de un período conocido | Una asignación temporizada que cubra esas comprobaciones | Las solicitudes pueden compartir una salida mientras la asignación siga activa. |
| Completar una secuencia de duración variable | Bajo demanda, después de terminar | Tu aplicación sabe cuándo han terminado los pasos que deben permanecer juntos. |
En una transferencia larga, la gestión de las conexiones existentes importa más que un intervalo de rotación corto. Para varias tareas simultáneas, comprueba si el control de rotación se aplica a cada una por separado o a un recurso compartido.
Cambiar la IP no borra las cookies del navegador ni los datos de la cuenta. Un sitio web puede seguir asociando las solicitudes con la misma sesión o cuenta. La rotación distribuye el tráfico entre salidas; no reinicia todas las restricciones ni garantiza que una solicitud tenga éxito.
Comprueba el modo elegido con una prueba pequeña antes de una ejecución completa. Registra la IP de salida y la hora de las conexiones nuevas, y después repite la comprobación al cruzar el vencimiento previsto o tras una orden de cambio. Comprueba también si una conexión abierta se mantiene. Estas observaciones muestran si los cambios reales se ajustan a la tarea; repetir IP no demuestra por sí solo que la rotación esté averiada.
