Laboratório: NetKit DNS

De Wiki Cursos IFPR Foz
Revisão de 23h00min de 9 de dezembro de 2015 por Evandro.cantu (discussão | contribs)
Ir para navegaçãoIr para pesquisar

Laboratório: NetKit DNS

O servidor DNS vem instalado no ambiente do Netkit2, correspondendo ao aplicativo bind disponível para distribuições Linux.

Ambiente para testes do serviço DNS

Vamos montar no Netkit2 um ambiente para testes do serviço DNS, conforme a figura a seguir [1]:

Todas as máquinas estarão na mesma rede local. A máquina 192.168.100.101 é o servidor DNS principal, as demais serão são servidores DNS secundários e serão utilizadas como escravos para resolver nomes vinculados ao domínio das mesmas.

Configurações dos servidores DNS secundários

/etc/bind/named.conf.local
Exemplo para máquina 192.168.100.102 (domínio redes2.edu.br):
zone "redes2.edu.br" {
   type master;
   file "/etc/bind/db.redes2";
   allow-transfer {
     192.168.100.101;
   };
};
Para as outras máquinas a configuração é similar.

Cada servidor DNS deve responder pelo nome da própria máquina (m2, m3, m4), www, ftp, ns e mail, todos apontando para o mesmo endereço IP.

/etc/bind/db.redes2
$TTL    86400
@   IN    SOA   ns.redes2.edu.br. (
                              2014040902; serial
                              3H ; refresh
                              60 ; retry
                              1W ; expire
                              3W ; minimum
                             )
@       IN  NS     ns.redes2.edu.br. ; este é o servidor master deste domínio
@       IN  MX     10 mail.redes2.edu.br.
$ORIGIN redes2.edu.br.
m2   A 192.168.100.102
mail A 192.168.100.102
www  A 192.168.100.102
ftp  A 192.168.100.102
ns   A 192.168.100.102
Servidor DNS local
vim /etc/resolv.conf
nameserver 192.168.100.101

Configuração do servidor DNS principal

O servidor principal utilizará os demais servidores como escravos para resolver nomes dos sub-domínios.

Cache
Criação de arquivos para armazenar as caches dos escravos.
mkdir /var/cache/bind/slaves
chown bind:bind /var/cache/bind/slaves
/etc/bind/named.conf.local
zone "redes1.edu.br" {
        type master;
        file "/etc/bind/db.redes1";
};

zone "100.168.192.in-addr.arpa" IN {
        type master;
        file "/etc/bind/db.200.168.192";
};
 
zone "redes2.edu.br" IN {
        type slave;
        file "/var/cache/bind/slaves/db.redes2";
        masters { 192.168.100.102; };
};
 
zone "redes3.edu.br" IN {
        type slave;
        file "/var/cache/bind/slaves/db.redes3";
        masters { 192.168.100.103; };
};
 
zone "redes4.edu.br" IN {
        type slave;
        file "/var/cache/bind/slaves/db.redes4";
        masters { 192.168.100.104; };
};
/etc/bind/db.redes1
$TTL	86400
@	IN	SOA	m1.redes1.edu.br. root (
		     2014040900		; Serial 
			 604800		; Refresh
			  86400		; Retry
			2419200		; Expire
			  86400 )	; Negative Cache TTL
;
@	IN	NS	ns.redes1.edu.br.
@	IN	MX	10	mail.redes1.edu.br.
$ORIGIN redes1.edu.br.
m1	A	192.168.2.101
ns	A	192.168.2.101
www	A	192.168.2.101
ftp	A	192.168.2.101
mail	A	192.168.2.101
/etc/bind/db.2.168.192
Zona reversa
$TTL	86400
@	IN	SOA	m1.redes1.edu.br. root (
		     2014040900		; Serial
			 604800		; Refresh
			  86400		; Retry
			2419200		; Expire
			  86400 )	; Negative Cache TTL
;
	IN      NS      m1.redes1.edu.br.
101       IN      PTR     m1.redes1.edu.br.
102       IN      PTR     m2.redes2.edu.br.
103       IN      PTR     m3.redes3.edu.br.
104       IN      PTR     m4.redes4.edu.br.

Verificação da configuração

Utilitário para testar o arquivo que contém o conteúdo de uma zona:

named-checkzone nome_do_dominio arquivo_da_zona  
named-checkzone redes2.edu.br /etc/bind/db.redes2

Utilitário para testar a configuração do BIND:

named-checkconf -z

Restart do serviço:

service bind9 restart

Verificando se está tudo certo:

tail -n 200 /var/log/syslog

Sequência de testes

Comandos para testar o funcionamento do DNS:

ping www.redesN.edu.br
ping ns.redesN.edu.br
ping ftp.redesN.edu.br
ping mail.redesN.edu.br

Teste do DNS reverso:

dig -x 192.168.100.10X

Referências

  1. VALLE, O. T. Gerência de Redes, Diário Aula, 2014. http://wiki.sj.ifsc.edu.br/wiki/index.php/GER20706-2014-1

--Evandro.cantu (discussão) 19h40min de 9 de dezembro de 2015 (BRST)