Cómo Solucionar el Error de /etc/resolv.conf Sobreescrito en Linux de Forma Definitiva

Cómo Solucionar el Error de /etc/resolv.conf Sobreescrito en Linux de Forma Definitiva
Anuncio relacionado

Introducción al Problema

Uno de los dolores de cabeza más comunes para los administradores de sistemas Linux es configurar manualmente los servidores DNS editando el archivo /etc/resolv.conf, solo para descubrir que al reiniciar el equipo o el servicio de red, toda la configuración se ha borrado o restablecido a los valores por defecto del proveedor o del router. Este comportamiento frustrante se debe a que gestores de red modernos como NetworkManager o systemd-resolved controlan dinámicamente este archivo mediante enlaces simbólicos.

Causas Principales del Error

El archivo /etc/resolv.conf ya no es un archivo estático en la mayoría de las distribuciones modernas de Linux (como Ubuntu, Debian, Fedora o CentOS). Las causas más frecuentes de que se sobrescriba son:

  • El servicio systemd-resolved está activo y gestiona la resolución de nombres localmente.
  • NetworkManager sobrescribe el archivo cada vez que se establece una nueva conexión de red.
  • El archivo es un enlace simbólico que apunta a una configuración generada automáticamente por el sistema.

Método 1: Deshabilitar y Desvincular systemd-resolved (Ubuntu y Debian)

Si tu distribución utiliza systemd-resolved, la forma más directa de tomar el control total de tus DNS es desactivar este servicio y crear un archivo estático real.

  1. Detiene y desgracia el servicio con el siguiente comando en la terminal: sudo systemctl disable --now systemd-resolved
  2. Elimina el enlace simbólico existente: sudo rm /etc/resolv.conf
  3. Crea un nuevo archivo /etc/resolv.conf usando tu editor de texto favorito: sudo nano /etc/resolv.conf
  4. Añade tus servidores DNS deseados, por ejemplo: nameserver 8.8.8.8 nameserver 1.1.1.1
  5. Guarda el archivo y protégelo contra modificaciones accidentales aplicando permisos de solo lectura: sudo chattr +i /etc/resolv.conf

Método 2: Configurar NetworkManager para Evitar que Sobrescriba DNS

Si prefieres mantener NetworkManager activo pero necesitas que respete tu configuración DNS personalizada sin bloquear el archivo con atributos inmutables, debes editar su archivo de configuración global.

  1. Abre el archivo de configuración de NetworkManager: sudo nano /etc/NetworkManager/NetworkManager.conf
  2. Dentro de la sección [main], añade la siguiente línea para deshabilitar la generación automática: dns=none
  3. Guarda los cambios y sal del editor.
  4. Reinicia el servicio de NetworkManager para aplicar los cambios: sudo systemctl restart NetworkManager
  5. Ahora puedes configurar tus servidores DNS directamente en las propiedades de tu conexión de red o editar /etc/resolv.conf manualmente con seguridad.

Conclusión

Solucionar el problema del archivo /etc/resolv.conf sobrescrito en Linux garantiza la estabilidad de la red en tus servidores y equipos de escritorio. Dependiendo de si usas systemd-resolved o NetworkManager, aplicar estos métodos te permitirá fijar tus DNS de forma permanente y evitar sorpresas tras cada reinicio.

Anuncio
Seguir Leyendo

Guías y Soluciones Relacionadas

Windows Apps Juegos
PrestaShop

Cómo Solucionar el Error Token Expired en PrestaShop Definitivamente

¿Te aparece el molesto error de Token Expired al intentar guardar cambios en PrestaShop? Aprende a solucionarlo de forma definitiva con esta guía.

Leer guía completa →
Magento

Cómo Solucionar el Error de Límite de Memoria Excedido en Magento Definitivamente

¿Tu tienda de Magento muestra una pantalla blanca o un error de memoria agotada? Descubre cómo aumentar el límite de PHP y solucionar este fallo.

Leer guía completa →
WordPress

Cómo Solucionar la Pantalla Blanca de la Muerte (WSoD) en WordPress

La Pantalla Blanca de la Muerte deja tu sitio web inaccesible sin mostrar ningún mensaje de error. Aprende a diagnosticar y solucionar este problema común.

Leer guía completa →