O que é
Servidor DNS tem função de resolver nomes. Como assim? Toda vez que você acessa a internet, como por exemplo o Viva o
Linux, você não está acessando www.vivaolinux.com.br, está acessando um endereço IP formado por 4 octetos (162.144.34.172). Imagine você ter que gravar números ao invés de nomes toda vez que você quiser acessar a internet, seria complicado. Pra isso você configura o DNS indicando algum servidor DNS para resolver isso pra você.
Economia de recursos de rede
Toda vez que você faz uma requisição para um nome ou quando um website faz uma requisição para um domínio, a rede é onerada. Por exemplo: se em seu ambiente um website precisa apontar um provedor de imagens e também um provedor de vídeos, 3 requisições serão exigidas: 1 para o servidor web, outra para o servidor de imagens e uma terceira para o servidor de vídeos. Essa gama de requisições consome recursos de rede e portanto o DNS é um importante aliado para a gestão destes recursos.
Quando a utilização é feita em um DNS local, a requisição é obtida dentro do cache do DNS, que é delimitado pelo seu cache interno ou pelo cache interno do domínio autoritativo. Em outras palavras, o DNS recebe uma identificação de quanto em quanto tempo precisa checar se aquele domínio alterou ou não as informações internas. Esse check é feito de acordo com o DNS autoritativo.
Inventário
- Ambiente Virtualizado com Dropbox
- Hardware: 20 Gb 256MB 1CPU
- IP: 172.16.0.4/24
- Rede: 172.16.0.0/24 Gateway: 172.16.0.1/24
- S/O: Debian9
Repositórios do arquivo
/etc/apt/source.list:
deb http://ftp.br.debian.org/debian/ stretch main
deb-src http://ftp.br.debian.org/debian/ stretch main
deb http://security.debian.org/debian-security stretch/updates main contrib
deb-src http://security.debian.org/debian-security stretch/updates main contrib
# stretch-updates, previously known as 'volatile'
deb http://ftp.br.debian.org/debian/ stretch-updates main contrib
deb-src http://ftp.br.debian.org/debian/ stretch-updates main contrib
Instalação e Configuração do Bind
Instalar o bind via gerenciador de arquivos apt-get:
# apt-get install bind9 dnsutils -y
Configuração do Bind:
Para organização da implementação, primeiramente iremos editar o arquivo
/etc/hosts e inserir a entrada "172.16.0.4":
127.0.0.1 localhost
127.0.1.1 hostname
172.16.0.4 vivaolinux.com.br hostmaster.vivaolinux.com.br DNS1.vivaolinux.com.br
Feito isso, precisamos editar o arquivo
/etc/bind/named.conf.options. Iremos inserir e substituir as entradas:
directory "/etc/bind";
version "não disponível";
No mesmo arquivo coloque as entradas abaixo:
forwarders {
172.16.0.1;
8.8.8.8;
};
listen-on {
127.0.0.1;
172.16.0.4;
};
allow-query {
127.0.0.0/8;
172.16.0.0/24;
};
Explicação das entradas(ML):
- listen-on: são os ips onde o DNS vai responder na porta 53.
- allow-query : são as redes que serão autorizadas a obter dados do DNS.
- listen-on-v6: são os ranges de IPV6, caso sua maquina possua, que o servidor responder na porta 53.
Segue o arquivo de configuração:
options {
directory "/etc/bind";
version "não disponível";
forwarders {
172.16.0.1;
8.8.8.8;
};
dnssec-validation auto;
auth-nxdomain no; # conform to RFC1035
listen-on{
127.0.0.1;
172.16.0.4;
};
allow-query {
127.0.0.1/8;
172.16.0.0/24;
};
};