No puedo retener la dirección del servidor de nombres que configuré mediante /etc/resolv.conf
. Cada vez que configuro el valor, el administrador de red lo anula con la puerta de enlace predeterminada al reiniciar.
¿Cómo arreglarlo?
Preferiría una forma diferente a cambiar el servidor de nombres en el enrutador.
linux
nameserver
Ashildr
fuente
fuente
NetworkManager
(como se indica en la primera línea). Este archivo se vuelve a generar en cada arranque medianteNetworkManager
. Depende de su distribución de Linux (que no mencionó) cómo acceder a estoNetworkManager
.Respuestas:
Depende. Por favor, lea hasta el final.
Si no tiene instalado el paquete resolvconf , entonces es fácil: después de cambiarlo como desee, ejecute el comando
El comando cambia los atributos del archivo, haciéndolo
immutable
(la opción + i).Sin embargo, si tiene instalado el paquete resolvconf, el archivo /etc/resolv.conf puede transformarse en un enlace simbólico,
que es un archivo en un sistema de archivos virtual, la epitomía de una versión no permanente. Lo curioso es que es posible que no sepa que tiene instalado resolvconf, porque las versiones recientes de sistemas operativos tipo Debian vienen preinstalados. Puede establecer si su distribución lo ha instalado para usted emitiendo el comando:
Aún más importante, puede establecer si su
/etc/resolv.conf
se ha transformado en un enlace mediante el comando (archivo /etc/resolv.conf) anterior. Si la respuesta esASCII text
, usechattr
, de lo contrario ...Si usa una IP estática, lo más simple es agregar la siguiente línea (o algo así)
a la estrofa que define las propiedades de su interfaz estática en / etc / network / interfaces.
Si, en cambio, está en una computadora portátil que se conecta todo el tiempo a diferentes redes, puede seguir
LawrenceC
la excelente sugerencia. Pero, si tiene resolvconf en su sistema, la forma correcta (y más simple) de proporcionar un conjunto fijo de DNS es utilizar los archivos en /etc/resolvconf/resolv.conf.d . En particular, se utilizan los siguientes archivos (consulte la página de Stephane Graber ):base : se utiliza cuando no se pueden encontrar otros datos
head : Se usa para el encabezado de resolv.conf, se puede usar para garantizar que un servidor DNS sea siempre el primero en la lista
tail : cualquier entrada en tail se agrega al final del resolv.conf resultante.
Coloque sus servidores de nombres favoritos en la cabeza , de la siguiente manera
y listo
fuente
LawrenceC
, es el siguiente./etc/resolvconf/
no existe por defecto en Ubuntu 18.04.Agregue una línea similar al
/etc/dhcp/dhclient.conf
uso de un terminal raíz:supersede domain-name-servers 74.122.198.48, 50.116.23.211;
Esto hace que
dhclient
el programa que emite una solicitud DHCP y realiza cambios de acuerdo con lo que la respuesta le indicó, reemplace la información que obtuvo del servidor DHCP con lo anterior antes de realizar cambios.Los anteriores son dos servidores DNS OpenNIC. Reemplace según sea necesario para cualquier servidor que desee usar.
Como esto sucede cada vez que obtiene información de configuración de DHCP, utilice
dhclient -v eth0
o cualquier interfaz para actualizarla y ver el cambio.fuente
prepend domain-name-servers 8.8.8.8
por ejemplo. Esto usaría el DNS del ISP cuando esté disponible.Parece que, según lo mencionado por @Rik, la razón de los reemplazos de DNS al reiniciar se debe al administrador de red / utilidad que está configurada. En Linux Mint, según la captura de pantalla, tenía mi método IPv4 configurado solo en direcciones automáticas (DHCP). Luego puede ingresar la configuración correcta en /etc/resolv.conf o en la sección de servidores DNS. Recuerdo que en Ubuntu 13.04 mis servidores de nombres cambiaron varias veces durante un largo período de tiempo, pero después de que en realidad fui y los edité en la GUI, todo parecía estar estable de allí en adelante.
fuente
Tuve el mismo problema, pero uso una dirección IP estática. La solución fue simplemente agregar el dns en / etc / network / interfaces
fuente
/etc/network/interfaces
. ¡Buena atrapada!Si usó wicd, haga clic derecho en el icono y haga clic en información de conexión. Cuando se abra la ventana, haga clic en las propiedades de la que está conectado.
Verifique usar DNS estático y en la línea que dice Servidor DNS 1 escriba la IP para el DNS de Google
8.8.8.8
y en la línea para el servidor DNS 2 escriba8.8.4.4
luego haga clic en "ok".Si recibe errores de los valores predeterminados, puede comunicarse con su ISP y mencionarlo. Por lo general, asignan servidores DNS a su módem cuando se conecta con ellos.
fuente
Hackear su entrada por
chattr +i
o similar es una solución rápida en el mejor de los casos, y debe evitarse siempre que sea posible (al menos a largo plazo, como se dijo, es una solución temporal a corto plazo hasta que se encuentre tiempo para la solución real) . Como ya se señaló, este es un trabajo para NetworkManager, que ofrece una CLI que podemos usar para eso:Si usa una dirección IP estática, también puede usar la solución de la respuesta de kanelbolle .
fuente
Es sorprendente lo frustrante que puede ser este pequeño problema, cuando las soluciones dadas para él ya no funcionan en Ubunutu 18.04.
Lo que funcionó para mí fue simplemente sobrescribir el
nameserver
valor en/etc/resolv.conf
cada arranque.sudo
edite/etc/rc.local
y agregue esta línea:fuente