Lingua-e
← Errores
Python

Qué significa ConnectionRefusedError y cómo solucionarlo

Referencia del error

ConnectionRefusedError

Lenguaje

Python

Severidad

Alta

Cuándo ocurre

ConnectionRefusedError se lanza cuando un intento de conexión TCP es rechazado activamente por el host destino.

Posibles soluciones

Verifica que el servicio destino esté en ejecución y escuchando en el puerto esperado. Implementa lógica de reintento con retroceso exponencial para servicios que pueden no estar listos inmediatamente. Comprueba las reglas del firewall y asegúrate de que el número de puerto en tu configuración coincida con el servidor.

Más detalles

ConnectionRefusedError se lanza cuando un intento de conexión TCP es rechazado activamente por el host destino. Esto significa que el host es alcanzable pero ningún proceso está escuchando en el puerto especificado. Es una subclase de ConnectionError y OSError.

Por qué ocurre

  • El servicio destino (base de datos, servidor web, etc.) no está en ejecución.
  • El servicio está en ejecución pero en un puerto diferente al especificado.
  • Un firewall bloquea la conexión y envía un paquete TCP RST.
  • El proceso del servidor se ha bloqueado o aún no ha terminado de iniciarse.

Posibles soluciones

Verifica que el servicio destino esté en ejecución y escuchando en el puerto esperado. Implementa lógica de reintento con retroceso exponencial para servicios que pueden no estar listos inmediatamente. Comprueba las reglas del firewall y asegúrate de que el número de puerto en tu configuración coincida con el servidor.

Ejemplos

Python

Código que causa el error

import socket

s = socket.create_connection(("localhost", 9999))

Error en la terminal

ConnectionRefusedError: [Errno 111] Connection refused

Código corregido

import socket

try:
    s = socket.create_connection(("localhost", 9999))
except ConnectionRefusedError:
    print("Server is not running on port 9999")

Practica en inglés

¿Cómo le explicarías un ConnectionRefusedError a un compañero dev? Elige la frase correcta:

"I hit an error...

¿Listo para practicar tu inglés en el trabajo?

Lingua-e tiene ejercicios interactivos basados en conversaciones reales de developers: standups, code reviews, retrospectivas y más. Practica hasta que salga solo.

Prueba Lingua-e gratis