Errores de timeout del proxy: la conexión se cuelga y luego se agota
Actualizado:
Un timeout es más frustrante que otros errores porque no dice nada: no hay rechazo, no solicita contraseña, solo silencio hasta que tu software se rinde. Por lo general, los paquetes van a algún lugar y desaparecen, o el proxy acepta la conexión pero no responde a tiempo. El objetivo es averiguar en qué paso ocurre ese silencio.
Tres salidas de timeout que medimos
Configuramos un proxy de prueba que acepta conexiones TCP y nunca responde, y luego ejecutamos la misma solicitud con dos tipos de límite de tiempo (dirección reescrita como 203.0.113.10:8080, user123:pass456):
curl --connect-timeout 10 -x http://user123:[email protected]:8080 https://example.comdevuelvecurl: (28) Proxy CONNECT aborted due to timeout. Ese límite solo cubre la fase de conexión.- Al cambiarlo por
-m 10(un límite para toda la transferencia), devuelvecurl: (28) Connection timed out after 10002 milliseconds. - Chromium apuntando al mismo proxy muestra
ERR_TIMED_OUT; el verificador de proxy reportatimeout.
Causas, ordenadas de mayor a menor probabilidad
- Tu red bloquea silenciosamente el puerto del proxy. Las redes wifi de oficinas, hoteles y campus universitarios suelen descartar paquetes dirigidos a puertos inusuales en lugar de rechazarlos, por lo que la espera es infinita.
- El timeout en tu código es demasiado corto. Un proxy en un país lejano necesita algo más de tiempo para el handshake; un límite de 2 a 3 segundos puede cortar un proxy que funciona perfectamente.
- El proxy o el sitio de destino están sobrecargados. El proxy acepta la conexión pero se queda esperando al sitio web, y tu tiempo de espera se agota antes.
- IP incorrecta. Un error tipográfico que apunte a una dirección que no responde genera silencio en lugar de un rechazo.
Soluciones según el entorno
- Windows/Chrome: prueba el mismo proxy usando los datos móviles de tu teléfono. Si el timeout desaparece, la red original está bloqueando la conexión; consulta cómo verificar el proxy y el firewall.
- Navegadores antidetect: el botón de comprobación de proxy suele tener un tiempo de espera fijo. Reinténtalo varias veces y, si solo fallan algunos perfiles, compara su línea de configuración de proxy con una que funcione.
- Telegram: quedarse atascado en «Conectando...» tras activar un proxy a menudo también es un timeout; prueba el proxy en el verificador antes de modificar nada en Telegram.
- Python requests: pasa
timeout=(10, 30), lo que significa 10 segundos para conectar y 30 segundos para leer. Capturarequests.exceptions.ConnectTimeoutyrequests.exceptions.ReadTimeoutpor separado para ver dónde se interrumpe, y añade algunos reintentos espaciados en lugar de un timeout ilimitado. - curl: usa
--connect-timeoutpara medir únicamente el paso de conexión y-mpara limitar la duración total del comando.
¿Timeout o solo lentitud?
Un proxy lento sigue respondiendo, solo que más tarde. La prueba de velocidad de proxy muestra tiempos de respuesta reales; si están muy cerca del timeout de tu software, aumenta el límite o elige un proxy en un país más cercano al objetivo. Si tras varias pruebas nunca obtienes respuesta, se trata de un timeout real, y el siguiente paso es abrir un ticket con el resultado del verificador.
Paso a paso
- 1
Confirma el timeout con el verificador
Pega la línea del proxy en el verificador de proxy. Un resultado
timeoutsignifica que no llegó ninguna respuesta dentro del límite de espera. - 2
Cambia de red para aislar el problema
Vuelve a intentarlo con datos móviles. Si funciona, el problema está en la red original o en su firewall.
- 3
Mide el tiempo de respuesta
Ejecuta la prueba de velocidad de proxy para ver si el proxy es lento o no responde.
- 4
Ajusta los timeouts y reintentos en tu software
Aumenta el límite de conexión a unos 10 segundos, añade reintentos y vuelve a ejecutar la tarea.
Preguntas frecuentes
¿Un timeout del proxy significa que el proxy está muerto?
No necesariamente. Muchos timeouts se deben a que la red del usuario bloquea el puerto. Haz una prueba desde otra red antes de darlo por hecho.
¿Qué timeout debería configurar para proxies en mi código?
Unos 10 segundos para conectar y 30 segundos para leer es un punto de partida razonable. Los proxies lejanos o las páginas pesadas pueden necesitar más.
¿Por qué solo algunos sitios web dan timeout a través del proxy?
En ese caso el proxy funciona y el destino es lento o está bloqueando. Si el sitio genera un 502 en lugar de silencio, consulta 502 Bad Gateway.
¿En qué se diferencia un timeout de una conexión rechazada?
Un rechazo se devuelve al instante; un timeout espera hasta alcanzar el límite. Consulta el servidor proxy rechaza las conexiones.
Elige un proxy cercano a tu mercado
VinaProxy ofrece IP en Vietnam, EE. UU., Japón, Corea del Sur, Singapur, el Reino Unido y Hong Kong para que estés cerca de tu objetivo.
Ver precios