dhclient: fixando o servidor DNS

Atualizado em agosto 28, 2016

Esta é uma dica rápida.

Uso a Internet via ADSL e quando meu micro solicita o IP via DHCP, o arquivo /etc/resolv.conf é atualizado com os servidores do provedor. Este é o comportamento desejado para a maioria dos usuários, já que não dá trabalho nenhum. Já no meu caso, prefiro não confiar em nenhum DNS de provedores, principalmente depois da descoberta da falha de DNS por Kaminsky, quando fiquei semanas testando servidores DNS do meu provedor e descobri que eles não estão nem aí para o problema dos seus usuários…

Então, quem usa Linux tem uma vantagem: instale um servidor DNS de sua preferência e use-o como cache. Eu gosto do BIND, mas existem outros muito bons, como o DNSMasq.

Depois de instalado o DNS, o problema foi fazer com que o cliente dhcp não alterasse o arquivo /etc/resolv.conf quando recebesse as configurações da rede.

Eu uso o dhclient3 e, depois de pesquisar um pouco, descobri que é possível definir opções locais que se sobrepõem às configurações entregues pelo servidor DHCP.

Para de valor fixo para o servidor DNS, edite o arquivo dhclient.conf que fica no diretório /etc/dhcp ou /etc/dhcp3 e adicione a seguinte linha ao final do arquivo:

supersede domain-name-servers 127.0.0.1;

Pode ser adicionado mais de um servidor de nomes, bastando separá-los por vírgulas.

Com esta configuração, no entanto, apenas os servidores de nomes serão assumidos. Também é possível adicionar um ou mais servidores de nomes à lista dos servidores fornecidos pelo servidor DHCP. Neste caso, os servidores de nomes especificados no arquivo dhclient.conf serão colocados no início da lista de servidores de no no arquivo /etc/resolv.conf, o que significa que eles serão sempre os primeiros a serem consultados. Se eles falharem, então serão consultados os servidores de nomes fornecidos pelo DHCP. Para esta configuração, ao invés do parâmetro supersede, use o prepend, conforme ilustrado a seguir:

prepend domain-name-servers 127.0.0.1;

Use o endereço IP do seu servidor de nomes desejado.

Ah, e não se esqueça do ponto-e-vírgula no final da linha.

Até mais.

Marião