Recebi os arquivos de um mini linux, que inicializa diretamente firefox. Funciona para tudo o que deveria estar fazendo, só que eu não tenho conexão com a Internet.
Temos 3 servidores DNS na rede, todos funcionando. Eu também posso fazer ping. Mas ao tentar ping google.deou wget google.derecebo um bad addresserro.
nslookup google.de funciona por algum motivo.
Rastreei o problema até o meu resolv.confno sistema inicializado, sem o mesmo conteúdo resolv.confque coloquei no .isoarquivo.
Tentei entender todos os fatores envolvidos na criação e modificação resolv.conf. Não tenho certeza de ter conseguido tudo, mas definitivamente não encontrei minha solução lá.
Então, como último esforço, tentei tornar o resolv.confarquivo imutável usando
:~# chattr +i /etc/resolv.conf
Ao reconstruir e inicializar novamente para minha surpresa, meu arquivo foi renomeado resolv.conf~e, em seu lugar, estava o mesmo arquivo padrão que me assombrava.
O conteúdo do arquivo me faz acreditar que obtém as informações da própria rede. Ao iniciar o .isoVirtualbox sem acesso à Internet, meu arquivo está sendo mantido como está.
Tentei mudar /etc/dhcp/dhclient.confpara não obter as informações da rede, excluindo domain-name-servere domain-name-searchda requestparte do arquivo.
Infelizmente não funcionou.
Não tenho o NetworkManager instalado. O iso é baseado no Ubuntu 14.04.
Provavelmente faltam informações vitais. Estou feliz em fornecê-lo.
ATUALIZAR:
Acho que encontrei o arquivo que limpa resolv.conf.
Parece ser /usr/share/udhcpc/default.script
#!/bin/sh
# udhcpc script edited by Tim Riker <Tim@Rikers.org>
[ -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
Faz parte do udhcpcprograma. Um pequeno cliente dhcp, que faz parte dobusybox
Irá investigar mais.
ATUALIZAÇÃO2 E SOLUÇÃO:
Comentei a parte (#Start to #End), que aparentemente sobrescreve o /etc/resolv.confarquivo e com certeza. Esse foi o culpado. Portanto, um script obscuro causou todo esse problema.
Alterei a pergunta para refletir, o que realmente precisava ser conhecido para resolver meu problema, para que fosse mais fácil encontrar pessoas com o mesmo problema e para que eu pudesse aceitar uma resposta.
Obrigado pela ajuda aqui para descobrir as coisas.