resolv.conf não é configurado na reinicialização quando a rede está configurada para ip estático

resolv.conf não é configurado na reinicialização quando a rede está configurada para ip estático

Estou enfrentando o que parece ser um problema de resolução de nomes no Ubuntu 12.04 Server edition ao configurar meu computador para usar IP estático.

Em /etc/network/interfaces:

# The primary network interface
auto eth0
iface eth0 inet static
address 192.168.1.28
netmask 255.255.255.0
gateway 192.168.1.1

Executar $ sudo apt-get upgrade, resulta em 'Falha ao buscar...':

. . . W: Failed to fetch http://us.archive.ubuntu.com/ubuntu/dists/precise-backports/universe/i18n/Translation-en_US Something wicked happened resolving 'us.archive.ubuntu.com:http' (-5 - No address associated with hostname)
[...]

Quando mudo meu /etc/network/interfaces para:

auto eth0
iface eth0 inet dhcp

Tudo funciona bem.

Examinar /etc/resolv.conf fornece mais algumas dicas.

Nos casos em que eu estava resolvendo o problema, resolv.conf estava vazio; nenhum servidor de nomes foi especificado. Então mudei para DHCP da rede estática e reiniciei; /etc/resolv.conf foi alterado para: 'nameserver 192.168.1.1'.

Voltar do DHCP para estático e reiniciar não remove a entrada do servidor de nomes. Mas quando reiniciei o sistema com conjunto estático, o resolv.conf estava vazio. Quando reinicio o sistema com o DHCP definido, o resolv.conf possui o servidor de nomes 192.168.1.1. Então, parece que o problema é que resolve.conf não está sendo gravado corretamente? Qual pacote/código é responsável por escrever no resolv.conf? Existe um pacote específico que eu possa dar uma olhada nas questões em aberto?

ATUALIZAÇÃO: istream postou um bom artigo discutindo mudanças no resolve.conf em 12.04. http://www.stgraber.org/2012/02/24/dns-in-ubuntu-12-04/

Responder1

Conformea página de manual do resolvconf(exemplo fornecido na página de manual), adicione o seguinte ao seu /etc/network/interfaces na sua configuração estática:

dns-nameservers [IP address(es) of your DNS]     
dns-search      [your dns-search strings (optional)]

Responder2

Tem certeza de que forneceu 192.168.1.1o valor do DNS ao configurar o IP estático?

Não sei como fazer isso na linha de comando, mas usar a System Settings -> NetworkGUI também deve funcionar, não? Tudo o que estou pensando é que você quer algo como a captura de tela abaixo? Ou não estou entendendo o que você está tentando fazer?

Configuração de rede com IP estático, rota padrão, servidor DNS

Nota: Ignore os valores na janela esquerda. Esses são apenas meus valores do DHCP. Não me preocupei em salvar a configuração estática, pois estava apenas tentando ilustrar o que estava pensando.

Aliás, usei 192.168.1.1porque era isso que você estava usando. Mas você também pode usar os IPs de qualquer servidor DNS válido. Por exemplo, 8.8.8.8e/ou 208.67.222.222também deve funcionar.

Responder3

Se você não quiser (ou não puder) usar o miniaplicativo Network Manager para definir suas configurações de rede, encontro a maneira correta de configurar um"estático"A configuração de IP, para quando você não tem um servidor DHCP disponível, é ter uma concessão estática no arquivo dhclient.conf. Lá você deve especificar o servidor de nomes que será gravado no resolv.confarquivo quando o dhclient voltar para estático.

No entanto, se você não quiser sujar as mãos, ainda recomendo usar a GUI para especificar um endereço de servidor DNS nas configurações de IP da sua conexão, como emhttps://askubuntu.com/a/127537/33305.

Responder4

O OP está usando o servidor ed. O NetworkManager não se aplica .. embora quem sabe talvez seja adicionado apenas para adicionar complexidade ao servidor.

Aliás, por que diabos o resolvconf foi adicionado ao servidor ed... POR QUE!!??!?

De qualquer forma, para responder à sua pergunta, adicione:

/etc/rede/interfaces

algo assim:

auto eth0 inet static
     dns-nameservers ns1.mydnsservers.com ns2.mydnsservers.com

A opção importante é "dns-nameservers".

informação relacionada