DNS: Aprenda a configurar um servidor Bind9

Nos primeiros artigos sobre serviços de rede, decidimos abordar um serviço bastante importante, o DHCP, que podem consultar aqui e aqui. No artigo de hoje, vou falar-vos de outro serviço fundamental para o funcionamento das redes em geral – o serviço de DNS.

O que é o serviço de DNS?

O DNS (Domain Name System), é responsável pela tradução de nomes, em endereços de IP. Todos os websites que visitamos têm associado um endereço de IP, além de nós só sabermos o seu nome, Neste caso ao visitarmos o techemportugues.com, estamos a aceder ao IP 37.60.245.152, mas é muito mais simples para o ser humano decorar techemportugues.com, do que 37.60.245.152.

Como funciona o serviço de DNS?

O serviço de DNS funciona à base de pedidos e respostas, isto é, um utilizador faz uma “pergunta” sobre um nome e se o registo estiver presente, é retomado ao cliente que fez o pedido. Caso o registo não conste no servidor de DNS, o servidor pode reencaminhar o pedido para outro servidor ou fornecer ao cliente o endereço de quem possa saber a correspondência para o nome procurado.

Que tipos de registos se podem encontrar num servidor de DNS?

A – registo associado a um IP do tipo v4. Geralmente utilizados para fazer a correspondência entre um nome e um endereço;
AAA – registo associado a um IP do tipo v6. Geralmente utilizados para fazer a correspondência entre um nome e um endereço;
MX – Aponta para os servidores de email do domínio. A este registo está sempre associada uma prioridade, que determina qual o servidor que é resolvido em primeiro lugar;
NS – indica qual o servidor autoritário de um determinado domínio;
CNAME – Basicamente são alias de um determinado domínio, por exemplo, ao escrevermos no browser www.tech-portugal.com e techemportugues.com somos redireccionadosredirecionados para o mesmo sitio;
Caso prático

Neste tutorial vou apresentar-vos um software opensource, que pode ser utilizado para transformar o vosso Ubuntu num servidor de DNS. O software em questão é o bind9.

Neste caso prático foi utilizada a máquina virtual que tinha servido de servidor de DHCP num tutorial anterior, máquina com o IP 10.10.10.1/24.

O primeiro passo é editar o ficheiro /etc/hosts e definir o nome completo da máquina, como se vê em baixo.

hosts DNS

Depois de configurado o ficheiro /etc/hosts, está na hora de actualizar o repositório de pacotes e instalar o software que vai fazer o nosso servidor de DNS, o Bind9.

sudo apt-get update && sudo apt-get upgrade -y 
sudo apt-get install bind9

De seguida vamos configurar um domínio local chamado techemportugues.com, que vai resolver IP’s dentro da nossa rede.

Inicialmente vamos adicionar algumas linhas no ficheiro /etc/bind/named.conf.local, ficheiro este que indica onde estão os registos do nosso domínio.

DNS named.conf.local

Os nossos registos vão estar dentro dos ficheiros, db.techemportugues.com e db.techemportugues.com.rev. O ultimo ficheiro server para fazer reverse lookup, isto é, fazer a tradução entre um IP e um nome.

Foram criados alguns registos em ambos os ficheiros, como podem verificar nas imagens abaixo.

Ficheiro: db.techemportugues.com

db.techemportugues.com

Ficheiro: db.techemportugues.com.rev

db.techemportugues.com.rev

É necessário alterar o ficheiro /etc/bind/named.conf.options na secção dos forwarders, para que pedidos que não sejam resolvidos no nosso servidor, sejam encaminhados para um servidor externo.

DNS named.conf.options

Por fim basta fazer um restart ao serviço do bind e se tudo correr bem aparece um output como o da imagem a seguir.

sudo service bind9 restart

DNS bind9 restart

Pronto o nosso servidor está funcionar. Agora pode fazer nslookup ou dig de máquinas dentro da sua rede e pode comprovar que o servidor está a resolver bem os nomes.

NOTA: Não se esqueça de distribuir o seu endereço de DNS e domínio através do DHCP ou configurá-lo manualmente nas máquinas clientes.

DNS Query

Podem consultar todas as opções a aplicar no servidor bind9 na página oficial aqui.

Que servidores ou serviços gostaria de ver aqui abordados?

Fonte das imagens