Objetivos
Conhecer as caractersticas, funcionalidades e componentes do servio de resoluo de nomes (Domain Name Service DNS); Capacitar o aluno a projetar, instalar, configurar e disponibilizar o DNS; Incentivar a utilizao correta e bem ajustada dos servios de produo;
(C) Bruno Pontes
Fomentar a utilizao de boas prticas objetivando a oferta de servios adequados, com tima disponibilidade e a um custo razovel;
Sumrio I
Introduo; Fundamentos
Tpicos;
Sumrio II
Mtodos de resoluo de nomes; Mapeamento reverso; Vulnerabilidades do DNS; O Banco de dados DNS; Registros de Recursos; Servidores DNS;
4
(C) Bruno Pontes
Introduo
A necessidade de associar nomes a endereos surgiu durante o desenvolvimento inicial da Internet, na ento ARPAnet; A ARPAnet era uma rede de pesquisa que interligava sobretudo as universidades americanas; Com a adoo do protocolo TCP/IP (anos 80), a ARPAnet cresceu fenomenalmente;
Introduo
O modelo usado para a translao dos nomes em endereos tornou-se invivel: Um computador central mantinha um arquivo HOSTS.TXT; Alteraes em qualquer parte da rede era informada ao gerenciadores do computador central (via e-mail); Cada host na rede tinha que atualizar os seus dados com base no HOSTS.TXT atualizado (via FTP) 6
Fundamentos do DNS
O Sistema de Nomes de Domnio um banco de dados distribudo onde cada servidor detm um pedao do Banco; Isso permite um controle local dos segmentos do banco de dados global, embora os dados em cada segmento estejam disponveis em toda a rede atravs de um esquema cliente-servidor.
Fundamentos do DNS
A distribuicao da base DNS nao segue nenhuma diviso geogrfica ou de hardware; Dois tipos de resoluo so possveis com o DNS:
Representar endereos numa forma mais simples de serem lidos por seres humanos; Auxiliar alguns sistemas de autorizao; 8
Fundamentos do DNS
O DNS associa nomes a endereos IP de forma hierrquica (rvore inversa de domnios); O n mais alto o RAIZ e representado por .; A hierarquia do DNS possibilida delegao de autoridade na busca pelo IP/nome, o que viabiliza o gerenciamento do sistema e assegura unicidade;
(C) Bruno Pontes
1984 Descrito pelas RFCs 882 e 883 1987 Redefinio pelas RFCs 1034 e 1035 Por padro, utiliza TCP e UDP com a porta 53
Fundamentos do DNS
10
A representao pode ser relativa ou absoluta (FQDN); Na representao relativa, os nomes tm de ser interpretados de acordo com o domnio onde est localizado. Geralmente identificam mquinas; saturno, www, servidor1 Nome de Domnio Totalmente Qualificado (FQDN): saturno.uol.com.br, alecrim.ifrn.edu.br Um Nome pode representar um domnio ou uma mquina; 11
Delegao
Um nico servidor de nomes poderia conter o banco de dados DNS inteiro e responder a todas as consultas referentes ao banco; Esse servidor ficaria to sobrecarregado que seria intil; Caso esse servidor viesse a ficar fora do ar, toda a Internet seria atingida;
(C) Bruno Pontes
Delegao
13
Zona X Domnio
14
Conceitos parecidos; A zona delimita que informaes de um domnio so delegadas a um servidor; A abrangncia depende da autoridade de um servidor; Domnio significa todos os ramos abaixo de um n; Zona significa a parte de um ou mais ramos que est delegada a um servidor;
Zona X Domnio
O(s) sevidor(es) DNS em cada domnio (so) responsvel(is) por zonas especficas e no por todo o domnio; Aqui o servidor DNS da zona com delega autoridade aos subdomnios;
15
16
No princpio definiu-se duas configuraes de Servidores DNS: Primary (Master): l dados das zonas de um arquivo em seu host; Secondary (Slave): obtm dados das zonas de outro servidor master de nomes que tem autoridade sobre aquela zona; Ambos os tipos de servidores tm autoridade sobre a zona em questo;
Na inicializao ocorre a transf. de zona do master para o slave; Os arquivos de cada zona s so transferidos novamente quando os mesmos mudam no master; Vantagens de se ter mais de um servidor de nome por zona so:
Redundncia; Garantir que cada host na zona tenha um servidor de nome por perto;
(C) Bruno Pontes
Distribuio de carga;
17
Master (Primary): Recebe autoridade sobre uma zona a ele delegada. Normalmente o master notifica os slaves sobre mudanas em suas zonas (SERIAL!!!); Slave (Secondary): Tem autoridade sobre a zona do master mas copia os dados das zonas do master (periodicamente ou quando notificado);
(C) Bruno Pontes
Caching (hint): Contm apenas a zona dos TLDs (domnio .). Armazena (cache) zonas do master e as usa nas novas solicitaes at que o perodo limite (TTL) seja alcanado; 18
19
Forwarding (Proxy, Client, Remote): Retransmite todas a solicitaes a correspondentes servidores master; Stealth (DMZ or Split): Um servidor que no aparece em nenhum registro NS por privacidade; Authoritative Only: Somente responde questionamentos das zonas sobre as quais o mesmo tem autoridade;
Cenrios Tpicos
20
Cenrios Tpicos
Um DNS stealth e vrios slaves: Todas as resolues so realizadas nos slaves; O master stealth pode ser alterado sem que o sistema seja interrompido; Privacidade do stealth
21
Um servidor DNS pode receber muitas solicitaes de resoluo sobre domnios para os quais o mesmo no tem responsabilidade. Nesses casos, dois comportamentos so possveis:
Recursivo: Ao receber requisies de resoluo de nomes, faz requisies para os servidores autoritativos e conforme a resposta recebida dos mesmos continua a realizar requisies para outros servidores autoritativos at obter a resposta satisfatria;
(C) Bruno Pontes
Iterativo: Ao receber requisies de resoluo de nome, responde um endereo caso possua, uma referncia caso conhea o caminho da resoluo ou uma negao caso no conhea; 22
23
24
Mapeamento reverso
O mapeamento reverso ou mapeamento de endereo para nome feito atravs de um espao de nomes especfico: in-addr.arpa. O domnio in-addr.arpa possui 256 ns que representam o primeiro octeto de um nmero ip: Possui apenas 4 nveis, referentes ao 4 octetos de um nmero ip e a leitura na rvore in-addr.arpa o contrrio do resto da rvore DNS; 25
Mapeamento reverso
26
Vulnerabilidades do DNS
27
O banco de dados DNS de um domnio um conjunto de arquivos de texto mantidos pelo administrador no servidor de nomes mestre do domnio; Esses arquivos de textos so normalmente chamados de arquivos de zonas; Arquivos de zonas contm dois tipos de entradas: comandos do analisador sinttico e os chamados registros de recurso (RRs);
(C) Bruno Pontes
Os RRs so os dados que descrevem o(s) domnio(s) e apenas eles realmente fazem parte do banco de dados; Os comandos do analisador sinttico simplesmente fornecem algumas maneiras reduzidas para introduzir registros;
28
Registros de Recursos
Os dados associados com os nomes de domnio esto contidos em Resource Records ou RRs (Registro de Recursos); So divididos em classes e tipos; Atualmente existe uma grande variedade de tipos; Um registro de recurso uma tupla de cinco campos; Os campos so separados por espaos em branco e podem conter os caracteres especiais mostrados abaixo:
Caractere ; @ Significado Introduz um comentrio O nome da zona atual
29
Registros de Recursos
[Name]
[Time_to_live]
[Class]
Type
Value
Name: identifica a entidade (um host ou domnio) que o registro descreve. Pode ser relativo ou absoluto. Os absolutos devem terminar com um . (ponto); Time_to_live: fornece uma indicao do tempo de vida do registro em cache; Class: especifica o tipo de rede. No caso de informaes relacionadas Internet, ele sempre IN; Value: Pode ser um nmero, um nome de domnio ou um string ASCII. A semntica depender do tipo de registro;
(C) Bruno Pontes
Registros de Recursos
Principais RR:
Significado Incio de autoridade Endereo IP de um host Troca de mensagens de correio Servidor de nomes Nome cannico (sinnimo) do nome oficial do host Ponteiro Descrio de host Texto Valor Parmetros para essa zona Inteiro de 32 bits Prioridade, servidor disposto a aceitar correio eletrnico Nome de um servidor para este domnio Nome oficial do host
(C) Bruno Pontes
Nome alternativo de um endereo IP (Reverso) CPU e sistema operacional em ASCII Texto ASCII no interpretado
31
Registros de Recursos
Parmetros do RR SOA:
Serial: O nmero de reviso do arquivo de zona. Tem efeito na transferncia de zona; Refresh: O tempo, em segundos, que um servidor DNS secundrio espera antes de consultar a origem da zona para tentar renov-la; Retry: O tempo, em segundos, que um servidor secundrio espera antes de tentar novamente uma transferncia de zona falha; Expire: O tempo, em segundos, antes que o servidor secundrio pare de responder s consultas depois de transcorrido um intervalo de atualizao no qual a zona no foi renovada ou atualizada; Minimum: Tempo de sobrevida de respostas negativas que so armazenadas em cache;
32
(C) Bruno Pontes
Registros de Recursos
Observaes importantes a respeito do RR CNAME: Registros MX, NS, CNAME, ou SOA s devem se referir a um registro A; RRs referindo-se a um CNAME podem ocasionar problemas de buscas e carga extra na rede;
(C) Bruno Pontes
33
Os comandos so apenas diretivas do analisador de sintaxe que ajudam a torna o manuteno dos arquivos de zona mais legvel e mais fcil de manter; Os comandos influenciam a maneira como o analisador de sintaxe interpreta os registros subsequentes;
(C) Bruno Pontes
Os comandos tm obrigatoriamente que comear na primeira coluna e cada um deles deve ocupar uma linha exclusiva;
34
Existem trs comandos principais: $ORIGIN nomeDeDomnio $INCLUDE nomeDeArquivo [origem] $TTL padrottl Os comandos $ORIGIN e $TTL so especificados nas RFCs e devem ser entendidos por todos os servidores de nomes;
(C) Bruno Pontes
35
Servidores DNS
36
Servidores DNS
37
Servidores DNS
38
Bibliografia
FERREIRA, R. E., Guia do Administrador do Sistema, Novatec Editora, 2003 MORIMOTO, C. E., Redes e Servidores Linux: Guia Prtico - GDH Press e Sul Editores, 2008 NEMETH, E., SYNDER, G. e HEIN, T. R., Manual Completo do Linux: Guia do Administrador, Pearson, 2007; TANENBAUM, S. A., Redes de Computadores, 4a Edio, Campus.
39