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...

¿Programando en inglés?

Para arreglar esto, leíste inglés técnico real. Lingua-e tiene ejercicios gratis hechos igual: dailys, code reviews y situaciones reales de trabajo.

Practicar inglés para developers gratis