O servidor DNS é um sistema potencialmente complexo, configurado por uma série de arquivos surpreendentemente confiáveis. Esses arquivos são formados por um arquivo de boot e vários arquivos de dados de zona, onde cada arquivo de zona é apontado por um registro de zona no arquivo de boot.
Com os exemplos essa explicação ficará mais clara.
No Debian, com o bind instalado, o arquivo de boot DNS é o
/etc/bind/named.conf.
Comentários neste arquivo podem ser feitos de três formas:
/* estilo c */
// estilo c++
# estilo shell
Outras declarações seguem o formato:
Keyword {statement; statement; ...; statement;};
Tudo neste arquivo é delimitado por chaves, espaço e ponto-e-vírgula. Logo, espaçamento múltiplos, tab, quebra de linha não afetam a configuração.
Inclua no arquivo o apontamento da zona que corresponde ao seu domínio, informando em qual arquivo ele deve procurar a configuração de zona quando o seu domínio for digitado.
zone "dominio.casa" { # domínio da rede que deseja incluir no DNS
type master;
file "/etc/bind/dominio.casa.zone"; # arquivo que conterá as informações para tradução do nome
};
Agora inclua o apontamento para o IP reverso. Neste caso, qualquer endereço ip na sub-rede especificada será tratada pelo arquivo apontado por ele.
zone "1.168.192.in-addr.arpa" { # endereço da sub-rede
type master;
file "/etc/bind/named.198.168.1"; # arquivo de configuração que tratará o IP
};
Os arquivos de zona, no nosso caso estarão na diretório /etc/bind/. Os arquivos de zona são apontados pela declaração zone do arquivo de boot.
A primeira coisa a entender sobre os arquivos de zona é que sua sintaxe é totalmente diferente do arquivo de boot named.conf.
Há 10 registros possíveis:
- SOA - inicialização de autoridade
- NS - nome do servidor
- A - registro de endereço
- PTR - registro de ponteiro
- MX - intercâmbio de carreio
- CNAME - nome canônico
- RP e TXT - as entradas de documento
- HINFO - informações sobre os host
- NULL - registro de recurso nulo sem formato de dados
Supondo que o endereço de sua sub-rede seja 192.168.1 e que o servidor é 192.168.1.1, o computador 1 é 192.168.1.2 e o computador 3 192.168.1.3.
Crie o primeiro arquivo o
/etc/bind/dominio.casa.zone e adicione o seguinte código:
$TTL 604800
@ IN SOA dominio.casa. root.dominio.casa. ( # indica para qual domínio o SOA é obrigatório
200007201 ; serial (d. adams) # Serial que mostra aso DNS secundários como realizar transferência de zona
28800 ; refresh # indica o tempo em segundos de intervalo para o servidor DNS secundário consultar o primário para saber se houve alteração
14400 ; retry # tempo em segundo para conexão com o servidor primário caso a tentativa no tempo de refresh falhe
3600000 ; expiry # tempo de descarte das informações no cache
84400 ) ; minimum # indica quanto tempo os dados devem ser guardados no cache antes que expire a validade
;
www IN A 192.168.1.1
www2 IN A 192.168.1.1
www3 IN A 192.168.1.1
serv IN A 192.168.1.1
comp1 IN A 192.168.1.2
comp2 IN A 192.168.1.3
@ IN MX 10 dominio.casa.c
@ IN NS dominio.casa.
@ IN A 192.168.1.1
Neste caso o endereço www.dominio.casa, www2.dominio.casa, www3.dominio.casa e serv.dominio.casa se referem ao mesmo IP ao 192.168.1.1.
O host comp1.dominio.casa se refere ao IP 192.168.1.2 e comp2.dominio.casa te levará ao micro com IP 192.168.1.3.
No caso do IP reverso, crie o arquivo
/etc/bind/named.198.168.1 com as seguintes linhas:
$TTL 604800
@ IN SOA dominio.casa. root.dominio.casa. (
2000072001 ; Serial
28800 ; Refresh
14400 ; Retry
3600000 ; Expire
86400 ) ; Minimum
@ IN NS dominio.casa.
10 IN PTR dominio.casa.
Os dados no arquivo de IP reverso tem o mesmo significado do arquivo anterior.