![¿Por qué dnsmasq coloca la IP de mi enrutador en /etc/resolv.conf en lugar de 127.0.0.1?](https://rvso.com/image/31670/%C2%BFPor%20qu%C3%A9%20dnsmasq%20coloca%20la%20IP%20de%20mi%20enrutador%20en%20%2Fetc%2Fresolv.conf%20en%20lugar%20de%20127.0.0.1%3F.png)
Tengo problemas de resolución de DNS en varios contextos que parecen deberse a mi configuración de red.
Estoy ejecutando solo la dnsmasq-base
instalación dnsmasq
en dos instalaciones de Linux (Lubuntu 12.04 y 12.10). No he hecho nada en particular para configurar dnsmasq
, pero creo que algunos otros cambios que hice anteriormente pueden haber provocado una configuración incorrecta al actualizar.
La configuración de trabajo en la máquina 'A' que ejecuta 12.04 establece /etc/resolv.conf
el uso de 127.0.1.1 (que /etc/hosts
está configurado en $HOSTNAME
). En la máquina 'B', donde ciertas aplicaciones como OpenVPN experimentan problemas de resolución de DNS, /etc/resolv.conf
está configurada en 192.168.1.1, que es mi puerta de enlace. PI. Sólo determinadas aplicaciones se ven afectadas. La navegación web, por ejemplo, funciona bien.
¿Alguna idea de si esta diferencia es la causa de los problemas de resolución de DNS y por qué 'B' se comporta de manera diferente?
Ediciones:
Tanto 'A' como 'B' se están ejecutando dnsmasq
, ambos usan DHCP para obtener la configuración de DNS y yo solo estoy usando dnsmasq para DNS.
No hay ningún /etc/dnsmasq.conf
archivo. Entiendo que esto es normal cuando se ejecuta simplemente dnsmasq-base
.
El contenido de /etc/resolvconf
las dos máquinas parece ser idéntico. No hay archivos extraños o faltantes.
Lo siento, no puedo ser más específico sobre la naturaleza del problema. "Problema de resolución de DNS" fue el punto final de mi conversación con el soporte técnico de mi proveedor de VPN.
Respuesta1
En la máquina B, si /etc/NetworkManager/NetworkManager.conf
contiene , dns=dnsmasq
entonces resolv.conf
debería contener solo una línea de "servidor de nombres", es decir nameserver 127.0.1.1
. 127.0.1.1 es la dirección donde escucha el servidor de nombres de reenvío local controlado por NetworkManager. NetworkManager le proporciona a ese servidor de nombres direcciones de reenvío para usar.
Intente ejecutarlo sudo dpkg-reconfigure resolvconf
en la máquina B. Esto restaurará el enlace simbólico necesario desde /etc/resolv.conf
a ../run/resolvconf/resolv.conf
.
¿Está ejecutando un cliente VPN de terceros? Se sabe que estos clientes lo golpean /etc/resolv.conf
y no lo restauran cuando salen. Es posible que tengas que hacerlo sudo dpkg-reconfigure resolvconf
cada vez que detengas a un cliente de este tipo.
Otra cosa que puedes probar es: comentar dns=dnsmasq
y /etc/NetworkManager/NetworkManager.conf
luego reiniciar. Esto deshabilita el servidor de nombres de reenvío local controlado por NetworkManager, que tiene algunos problemas conocidos.