Me dieron los archivos para un mini linux, que arranca directamente firefox. Funciona para todo lo que debería estar haciendo, solo que no tengo conexión a Internet.
Tenemos 3 servidores DNS en la red, todos funcionan. Yo también puedo hacerles ping. Pero cuando intento ping google.deo wget google.deme sale un bad addresserror.
nslookup google.de Funciona por alguna razón.
Seguí el problema hasta mi resolv.confen el sistema arrancado que no tiene el mismo contenido que el resolv.confque puse en el .isoarchivo.
Traté de comprender todos los factores que intervienen en la creación y modificación resolv.conf. No estoy muy seguro de tenerlo todo, pero definitivamente no encontré mi solución allí.
Entonces, como último esfuerzo, intenté hacer que el resolv.confarchivo sea inmutable usando
:~# chattr +i /etc/resolv.conf
Al reconstruir y arrancar nuevamente para mi sorpresa, mi archivo cambió de nombre resolv.conf~y, en su lugar, fue el mismo archivo estándar que me ha estado persiguiendo.
El contenido del archivo me hace creer que obtiene la información de la propia red. Al iniciar .isoen Virtualbox sin acceso a Internet, mi archivo se mantiene como está.
Intenté cambiar /etc/dhcp/dhclient.confpara no obtener la información de la red, eliminando domain-name-servery domain-name-searchde la requestparte del archivo.
No funcionó desafortunadamente.
No tengo instalado el NetworkManager. La iso está basada en Ubuntu 14.04.
Probablemente falta información vital. Estoy feliz de proporcionarlo.
ACTUALIZAR:
Creo que encontré el archivo que borra resolv.conf.
Parece ser /usr/share/udhcpc/default.script
#!/bin/sh
# udhcpc script edited by Tim Riker <[email protected]>
[ -z "$1" ] && echo "Error: should be called from udhcpc" && exit 1
RESOLV_CONF="/etc/resolv.conf"
[ - n "$broadcast" ] && BROADCAST="broadcast $broadcast"
[ -n "$subnet" ] && NETMASK="netmask $subnet"
case "$1" in
deconfig)
/bin/ifconfig $interface 0.0.0.0
for i in /etc/ipdown.d/*; do
[ -e $i ] && . $i $interface
done
;;
renew|bound)
/bin/ifconfig $interface $ip $BROADCAST $NETMASK
if [ -n "$router" ] ; then
echo "deleting routers"
while route del default gw 0.0.0.0 dev $interface ; do
:
done
metric=0
for i in $router ; do
route add default gw $i dev $interface metric $((metric++))
done
fi
echo -n > $RESOLV_CONF # Start ----------------
[ -n "$domain" ] && echo search $domain >> $RESOLV_CONF
for i in $dns ; do
echo adding dns $i
echo nameserver $i >> $RESOLV_CONF
done
for i in /etc/ipup.d/*; do
[ -e $i ] && . $i $interface $ip $dns
done # End ------------------
;;
esac
exit 0
Es parte del udhcpcprograma. Un pequeño cliente dhcp, que es parte debusybox
Investigará más a fondo.
ACTUALIZACIÓN2 Y SOLUCIÓN:
Comenté la parte (#Start to #End), que aparentemente sobrescribe el /etc/resolv.confarchivo y efectivamente . Ese fue el culpable. Entonces, un guión oscuro causó todos estos problemas.
Cambié la pregunta para reflexionar, qué se necesitaba saber para resolver mi problema, por lo que sería más fácil encontrar a personas con el mismo problema y así podría aceptar una respuesta.
Gracias por la ayuda aquí para resolver las cosas.
fuente

Respuestas:
1) No debe actualizar manualmente su resolv.conf, porque todos los cambios serán sobrescritos por los datos que proporciona su servidor DHCP local. Si desea que sea estático, ejecute
sudo dpkg-reconfigure resolvconfy responda "no" a las actualizaciones dinámicas. Si desea agregar nuevas entradas allí, editar/etc/resolvconf/resolv.conf.d/basey ejecutarsudo resolvconf -u, agregará sus entradas y las entradas del servidor DHCP.2) Intente editar sus / etc / network / interfaces y agregue sus entradas allí, como
y luego reiniciar
/etc/init.d/networking restartosudo ifdown -aysudo ifup -a3) Su sistema usa udhcp, que es un programa cliente DHCP muy pequeño. El cliente udhcp negocia una concesión con el servidor DHCP y notifica un conjunto de scripts cuando se obtiene o pierde una concesión. Puede leer sobre su uso aquí o simplemente editar este script (como lo hizo).
fuente
/etc/resolvconf/resolv.conf.d/basey corríresolvconf -u. No funcionó, desafortunadamente.dpkg-reconfigure resolvconf. Las entradas no estaban allí. Y tengo entradas con ambosnameserver ipysearch domain.dpkg-reconfigure resolvconfno agregará entradas, pero puede deshabilitar las actualizaciones automáticas. Si deshabilita las actualizaciones, puede editar resolv.conf manualmente y no debe sobrescribirse.resolvconf -ulas entradas no se agregaron.Me encontré con esto también. Hacer comentarios
domain-name-serverno me lo solucionó tampoco.Además, no estoy usando
resolvconf, simplemente/etc/resolv.conf.No intenté usar
chattr +ipara bloquearresolv.confporque parece demasiado hacky. Además, quiero que Puppet pueda modificarresolv.confcuando sea necesario.La mejor solución que encontré anula el comportamiento predeterminado de
dhclientusar sus ganchos documentados.Cree un nuevo archivo en
/etc/dhcp/dhclient-enter-hooks.d/nodnsupdatecon los siguientes contenidos:Luego haga que el archivo sea ejecutable:
Ahora, cuando se ejecuta dhclient, ya sea al reiniciar o cuando se ejecuta manualmente
sudo ifdown -a ; sudo ifup -a, carga este scriptnodnsupdate. Este script anula una función interna llamadamake_resolv_conf()que normalmente sobrescribiríaresolv.confy, en cambio, no hace nada.Esto funcionó para mí en Ubuntu 12.04.
fuente
/etc/resolv.confse sobrescribió después del reinicio.Ubuntu 16.04Si las interfaces de red para su instancia de servidor están controladas por DHCP, el programa dhclient sobrescribirá su/etc/resolv.confarchivo cada vez que se reinicie el servicio de red.Puede solucionar el problema modificando el
/etc/dhcp/dhclient.confarchivo y la adición de declaraciones “sustituyen” de dominio de nombre , dominio de búsqueda y de Nombres de Dominio-servidores de la siguiente manera:En este caso particular, el servidor de nombres se encuentra en "192.168.56.103" y el nombre de dominio es "local.com"
Tenga en cuenta que cada línea está terminada por un punto y coma y el nombre de dominio está entre comillas dobles.
fuente
/etc/resolv.confse sobrescribió con 127.0.0.53.dnsmasqir a este directorio:
Abra el archivo llamado head y coloque las direcciones IP o nombres DNS allí. Abra el archivo llamado tail y coloque el dominio allí. Reiniciar.
fuente
En máquinas virtuales de Azure /etc/resolv.conf no es directamente editable.
Intente agregar las entidades DNS en los archivos de configuración de su red / etc / sysconfig / network-scripts / ifcfg-eth0 y así sucesivamente como a continuación:
DOMINIO = ejemplo.com
DNS1 = 10. . . *
DNS2 = 10. . . *
DNS3 = 10. . . *
y reinicie el servicio de red después de guardar los archivos. verá que la configuración también se agregará a resolve.conf también.
fuente
Para que los cambios relacionados con DNS sean
resolv.confpermanentes, debe cambiar el archivo de configuración de DHCP denominadodhclient.conf. Puedes encontrar el archivo en/etc/dhcp/dhclient.conf.Abra el archivo para editarlo (no olvide usar sudo). Verás líneas como estas:
Elimine el "#" anterior y use el nombre de dominio y / o los servidores de nombres de dominio que desee. Guárdalo Ahora los cambios relacionados con DNS serán permanentes.
Los créditos van a: https://itsfoss.com/resolvconf-permanent-ubuntu/
fuente
Use el siguiente comando para evitar que resolv.conf o cualquier archivo se sobrescriba después de reiniciar
nombre de archivo chattr -V + i, p. ej. chattr -V + i /etc/resolv.conf
Para revertir el cambio, use el siguiente comando:
chattr -i filename: para volver a habilitar la inserción en el archivo
chattr (Cambiar atributo) es una utilidad de Linux de línea de comandos que se usa para establecer / deshabilitar ciertos atributos en un archivo en el sistema Linux para asegurar la eliminación o modificación accidental de archivos y carpetas importantes, incluso si está conectado como usuario root.
fuente
chattr, pero observó que esto no tuvo ningún efecto.En ubuntu 18.04 usando NetworkManager. Debe eliminar el archivo 'resolv.conf' y dejar que NetworkManager genere uno para usted.
Para eliminar el archivo en tipo de terminal
sudo rm -f /etc/resolv.conf; esto eliminará el archivo por ti.Reinicie el sistema y NetworkManager generará un archivo resolv.conf para usted.
fuente