nginx no puede resolver los nombres ascendentes en la recarga, incluso si el SO los resuelve

9

Al volver a cargar la configuración (específicamente para proxy_pass), de vez en cuando esto se verá: nginx: el host [emerg] no se encuentra en el flujo ascendente

Sin embargo, el nombre del servidor ascendente SE RESOLVERÁ en el sistema operativo (Linux), solo nginx parece tener este problema.

Esto parece ser una regresión reciente, ya que no parecía suceder antes de las versiones 1.0.10.

¿Alguien ha notado esto recientemente?

Intentando reducir lugares para buscar.

Michael Neale
fuente

Respuestas:

6

Nginx almacena en caché internamente DNS durante 5 minutos (no estoy seguro si esto es configurable en versiones posteriores). Quizás su resolución falla por alguna razón, entonces Nginx almacena en caché este resultado.

He visto esto en sistemas con IPv6 habilitado ya que, por defecto, el resolutor solicita registros IPv4 e IPv6 en paralelo. Esto puede ser visto como una inundación por el resolutor que resulta en un problema temporal de DNS. Vi esta ventana emergente en un cuadro con mucho tráfico de correo electrónico al hacer la verificación del nombre de dominio.

Intenta agregar:

  options single-request

a /etc/resolv.conf

Esto hace que las búsquedas de IPv6 / v4 se realicen secuencialmente.

jeffatrackaid
fuente
Gracias por tu respuesta. Resultó que esto fue un error al desordenar los nombres de host en los archivos de configuración. Ups Pero su respuesta es realmente muy útil de todos modos, por lo que la marcaré como la correcta, ya que seguramente causaría problemas de DNS (explotándola con solicitudes).
Michael Neale
2
Tengo el mismo problema: ¿qué hiciste exactamente en los archivos de configuración para solucionar esto (gracias de antemano)
Zabs
Ahora puede agregar la value=30sopción para resolverdefinir cuánto tiempo se debe mantener una dirección IP resuelta en las resolvermemorias caché de.
Alexis Wilke