getaddrinfo ha vuelto
Hacía muchos años que no tenía un error con la palabra getaddrinfo
, desde los tiempos de SESLinEX porque nos arriesgábamos demasiado y rompíamos cosas. Lo malo, además de falta de práctica para resolverlo, es que los provocan problemas de red poco definidos.
Dos días después del último evento antes del parón del verano, la web del grupo de usuarios de AWS en Sevilla, dejó de funcionar. Literalmente. Le pregunté a Rafa, quien la desarrolla y mantiene, si había habido algún cambio y me dijo que no. Además, la instaló en su servidor y funcionaba perfectamente.
Es una imagen docker desplegada y configurada mediante un JSON, tan difícil no puede ser averiguar lo que le pasa, me dije. Los logs del contenedor devolvían el mismo error con cada acceso a la web, el del getaddrinfo
.
Error al leer o analizar JSON Error: getaddrinfo EAI_AGAIN aws.amazon.com
at GetAddrInfoReqWrap.onlookup [as oncomplete] (node:dns:107:26) {
errno: -3001,
code: 'EAI_AGAIN',
syscall: 'getaddrinfo',
hostname: 'aws.amazon.com'
}
Error al leer o analizar JSON Error: getaddrinfo EAI_AGAIN aws.amazon.com
at GetAddrInfoReqWrap.onlookup [as oncomplete] (node:dns:107:26
die
¿Cómo puede ser que no sea capaz de obtener la IP de AWS? Probé inútilmente a desplegar de nuevo la imagen un par de veces, con más fe que otra cosa. Como el grupo descansa los meses de verano y tenía algunos asuntos urgentes entre manos, lo pospuse.
Hoy nos reunimos virtualmente Rafa, Tasia y yo para solucionar esto definitivamente. A la media hora y tras varios despliegues, cambios en la imagen, en el JSON y hasta en el servidor web, hicimos pruebas de conectividad desde el servidor ejecutando un sencillo dig aws.amazon.com
. Resolvía bien pero mostraba un mensaje que me despejó la mente en un instante.
“The OpenDNS service is currently unavailable in France and some French territories due to a court order under Article L.333-10 of the French Sport Code. See https://support.opendns.com/hc/en-us"
El pasado 28 de junio entró en vigor un bloqueo en Francia y Portugal a los DNS de OpenDNS por infrigir el copyright. Dos días después del último evento.
Resulta que mi servidor está en OVH, concretamente en la región de París y que, como buen paranoico, evito utilizar los DNS más habituales como Google o ClooudFlare, con lo que soy un fan de OpenDNS. Ha sido así durante la última década o más y son las IPs que puse al configurar el servidor, en 2010. Al parecer se juntaron el hambre con las ganas de comer…
Mientras todas estas coincidencias me pasaban por la cabeza, cambié las IPs de los DNS a las de Cloudflare y Google, volví a desplegar el contenedor y… la web volvió a aparecer ante nosotros como si no pasase nada.
Ha sido interesante volver a ver a un viejo conocido como getaddrinfo
y ha sido preocupante ver como se bloquean servicios fundamentales como el DNS.