Linux, baixo e outras histórias Rotating Header Image

DNS, Linux e o resolv.conf

Dae Pessoal,

Tudo certinho ? Esse post vai ser sobre DNS …

Se você não sabe o que é um bom ponto de partida é o artigo (em inglês) da Wikipedia sobre o assunto, se você não curte inglês pode ler o artigo em português, ele não é tão bom quanto o outro mas já da pro gasto.

O objetivo aqui não é configurar um servidor DNS e sim configurar seu sistema pra usar determinado servidor DNS, tal tarefa é trivial no Windows e no site da Microsoft tem um artigo bem legal sobre o assunto. O negocio é faze-lo no Linux. Digitando o comando:


nm-connection-editor

Você pode ir na aba da conexão que está usando e clicar em propriedades, click em editar, na aba Configurações IPv4 (ou Configurações IPv6 se você estiver usando …) selecione “Somente endereços (DHCP) automáticos” como método e no campo “Servidores DNS” vai ser possível selecionar os servidores DNS desejados e não os que o servidor DHCP indicar.

Massa, legal … mas tem que fazer isso pra toda rede que eu conectar ?

É, esse é o mal desse metodo. Cada rede tem um perfil e que não é aplicável a outras redes. Mas tem uma solução pra isso! Eu não edito nenhum dos perfils de rede, apenas o /etc/resolv.conf. Não sabe o que danado é isso ? Vamo dar uma olhada no que diz o Guia Foca sobre o assunto:

O /etc/resolv.conf é o arquivo de configuração principal do código do resolvedor de nomes. Seu formato é um arquivo texto simples com um parâmetro por linha e o endereço de servidores DNS externos são especificados nele

É possível editar o resolv.conf e especificar quais os servidores DNS serão usados, para editar o bixin use seu editor de preferência, vim, nano, pico, gedit, leafpad ou seja lá qual você usa! O meu resolv.conf está assim agora:


thiago@notebook:~$ cat /etc/resolv.conf
nameserver 208.67.222.222
nameserver 208.67.220.220
Isso já resolve um bocado, mas, sempre que eu acessar uma rede o gerenciador do Gnome vai sobrescrever o resolv.conf editado, pra resolver de vez vamos deixar o arquivo como somente-leitura usando o chattr:

chattr +i /etc/resolv.conf
Lembrando que para isso será preciso direitos de super usuário, ou seja, você vai precisar da senha de root ou usar o sudo. Para editar o arquivo novamente basta usar a opção -i do chattr.
Ok! Agora vamos editar o arquivo pra valer antes de deixar como somente-leitura. A opção domain especifica o domínio local, search uma lista de domínios usados ao procurar por computadores, nameserver é a opção que você vai usar pra valer já que ela especifica que servidor DNS usar. A linha é simples “nameserver XXX.XXX.XXX.XXX”, um servidor por linha. Existem vários servidores DNS na internet os mais confiáveis na minha opnião são o OpenDNS e logo em seguida Google Public DNS.
Agora você já sabe qual arquivo editar, quais servidores DNS pode usar e como não ter que setar cada DNS pra cada rede então mãos a obra!

Deixe uma resposta