Não consigo reter o endereço do servidor de nomes definido por mim /etc/resolv.conf
. Toda vez que eu defino o valor, o gerenciador de rede o substitui pelo gateway padrão na reinicialização.
Como acertar?
Eu preferiria uma maneira diferente de alterar o servidor de nomes no roteador.
linux
nameserver
Ashildr
fonte
fonte
NetworkManager
(como indicado na primeira linha). Este arquivo é gerado novamente em cada inicialização peloNetworkManager
. Depende da sua distribuição Linux (que você não mencionou) como acessar issoNetworkManager
.Respostas:
Depende. Por favor, leia até o fim.
Se você não possui o pacote resolvconf instalado, é fácil: depois de alterá-lo da maneira que desejar, emita o comando
O comando altera os atributos do arquivo, tornando-o
immutable
(a opção + i).No entanto, se você tiver o pacote resolvconf instalado, o arquivo /etc/resolv.conf poderá ser transformado em um link simbólico,
que é um arquivo em um sistema de arquivos virtual, a epitomia de uma versão não permanente. O engraçado é que você pode não saber que possui o resolvconf instalado, porque versões recentes de sistemas operacionais semelhantes ao Debian vêm com ele pré-instalado. Você pode determinar se sua distribuição o instalou para você emitindo o comando:
Ainda mais importante, você pode estabelecer se o seu
/etc/resolv.conf
foi transformado em um link por meio do comando (arquivo /etc/resolv.conf) acima. Se a resposta forASCII text
, usechattr
, caso contrário ...Se você usa um IP estático, a coisa mais simples é adicionar a seguinte linha (ou algo assim)
à estrofe que define as propriedades da sua interface estática em / etc / network / interfaces.
Se você estiver em um laptop que se conecta o tempo todo a redes diferentes, siga
LawrenceC
as excelentes sugestões. Porém, se você tiver resolvconf em seu sistema, a maneira correta (e mais simples) de fornecer um conjunto fixo de DNSs é usar os arquivos em /etc/resolvconf/resolv.conf.d . Em particular, os seguintes arquivos são usados (consulte a página de Stephane Graber ):base : Usado quando nenhum outro dado pode ser encontrado
head : Usado para o cabeçalho do resolv.conf, pode ser usado para garantir que um servidor DNS seja sempre o primeiro da lista
tail : Qualquer entrada no tail é anexada no final do resolv.conf resultante.
Então coloque seus servidores de nomes favoritos na cabeça , da seguinte maneira
e você terminou.
fonte
LawrenceC
, é esse abaixo./etc/resolvconf/
não existe por padrão no Ubuntu 18.04.Adicione uma linha semelhante ao
/etc/dhcp/dhclient.conf
uso de um terminal raiz:supersede domain-name-servers 74.122.198.48, 50.116.23.211;
Isso faz com que
dhclient
o programa que emite uma solicitação DHCP e faça alterações de acordo com o que a resposta disse, substitua as informações obtidas do servidor DHCP pelas anteriores, antes de fazer alterações.Acima estão dois servidores DNS OpenNIC. Substitua conforme necessário para os servidores que você deseja usar.
Como isso acontece sempre que você obtém informações de configuração do DHCP, use
dhclient -v eth0
ou qualquer outra interface para atualizá-lo e ver a alteração.fonte
prepend domain-name-servers 8.8.8.8
por exemplo. Isso usaria o DNS do ISP quando disponível.Parece que foi mencionado pelo @Rik que o motivo das substituições de DNS na reinicialização se deve ao gerenciador / utilitário de rede que está definido. No Linux Mint, conforme a captura de tela, eu tinha meu método IPv4 definido apenas para endereços Automático (DHCP). Você pode inserir as configurações corretas em /etc/resolv.conf ou na seção de servidores DNS. Lembro que no Ubuntu 13.04 meus servidores de nomes mudaram algumas vezes durante um longo período de tempo, mas depois que eu os editei na GUI, tudo parecia estável a partir de então.
fonte
Teve o mesmo problema, mas eu uso o endereço IP estático. A correção estava apenas adicionando o DNS em / etc / network / interfaces
fonte
/etc/network/interfaces
. Boa pegada!Se você usou o wicd, clique com o botão direito do mouse no ícone e clique em informações da conexão. Quando a janela se abrir, clique nas propriedades da qual você está conectado.
Verifique usar DNS estático e, na linha que diz servidor DNS 1, digite o IP do DNS do Google
8.8.8.8
e, na linha do servidor DNS 28.8.4.4
, clique em "ok".Se você estiver recebendo erros dos padrões, entre em contato com seu ISP e mencione-o. Eles geralmente atribuem servidores DNS ao seu modem quando você se conecta a eles.
fonte
Invadir seu caminho por
chattr +i
ou similar é uma solução rápida, na melhor das hipóteses, e deve ser evitado sempre que possível (pelo menos a longo prazo - como dito, é uma solução alternativa de curto prazo até encontrar tempo para a solução real) . Como já apontado, este é um trabalho para o NetworkManager, que oferece uma CLI que podemos usar para isso:Se você usa um endereço IP estático, também pode usar a solução da resposta de kanelbolle .
fonte
Incrível como frustrando este pequeno problema pode começar, quando as soluções dadas para que não funcionam mais em Ubunutu 18,04.
O que funcionou para mim foi simplesmente substituir o
nameserver
valor/etc/resolv.conf
de cada inicialização.sudo
edite/etc/rc.local
e adicione esta linha:fonte