Yan Lameira Viveiros
1 DNS Domain Name System Prof. José Gonçalves Departamento de Informática UFES
2 DNS - Domain Name System O DNS é um sistema de nomes cujo objetivo primário é mapear, em escala global, nomes de domínios de rede e nomes de máquinas em endereços IP, processo conhecido por resolução de nomes. O DNS possui também a funcionalidade reversa, traduzindo endereços IP em nomes.
3 DNS - Domain Name System (cont.) manguinhos.lprm.inf.ufes.br Resoluçã o direta Resoluçã o reversa
4 DNS - Domain Name System O DNS é estruturado na forma de um banco de dados hierárquico distribuído, onde cada servidor é responsável por manter uma tabela com os endereços IP e nomes dos hosts em seu sub-domínio.
5 DNS - Domain Name System (cont.)
6 Histórico Antigamente, o mapeamento entre nomes de hosts e endereços IP era mantido em uma tabela estática, implementada como um arquivo de texto único (Unix: arquivo /etc/hosts). Esta tabela era gerenciada de forma centralizada e era distribuída para todos os computadores da antiga Arpanet. Os nomes de hosts não seguiam o esquema hieráquico atual. O procedimento para nomear um computador incluía verificar se já existia um outro computador com aquele nome. Como se pode deduzir, o arquivo estava constantemente desatualizado.
7 Histórico (cont.) O DNS resolveu o problema de se ter uma tabela estática administrada centralmente introduzindo dois novos conceitos: Nomes de hosts hierárquicos; e Distribuição da responsabilidade pela resolução de nomes.
8 Histórico (cont.) O DNS foi especificado formalmente por Paul Mockapetris nas RFCs 882 e 883 (1983), alterado pelas RFCs 1034 e 1035 (1987) e estendido nas RFCs 1101 e 1183 (1990). Em 1985, Kevin Dunlap, em Berkeley, produziu o BIND Berkeley Internet Name System, uma implementação de sucesso do DNS. O BIND é hoje parte da maioria das implementações Unix.
9 O que é definido pelo DNS? Um espaço de nomes hierárquico para hosts. Uma tabela de hosts implementada como um banco de dados distribuído. Rotinas de biblioteca para fazer consultas (queries) a este banco de dados. Um protocolo para trocar informações de nomes.
10 O Espaço de Nomes do DNS O espaço de nomes do DNS é representado em uma estrutura hierárquica, em forma de árvore, onde cada nó possui um label de até 63 caracteres. Não existe diferenciação entre letras maiúsculas e minúsculas, e a raiz da árvore é um nó especial, de label nulo. O espaço de nomes do DNS é, na verdade, uma árvore de nomes de domínios (domain names), com autoridade ascendente, cuja raiz está no Departamento de Defesa dos EUA (DoD Department of Defense) e é chamada de. (ponto).
11 O Espaço de Nomes DNS (cont.)
12 O Espaço de Nomes do DNS (cont.) O domínio de qualquer nó da árvore é a lista dos labels, começando por aquele nó, até a raiz, usando um ponto (. ) como separador de labels. Cada domínio representa uma parte distinta do espaço de nomes e é mantido por uma (única) entidade administrativa. Ex: inf.ufes.br amazon.com petrobras.com.br columbia.edu
13 O Espaço de Nomes do DNS (cont.) Debaixo da raiz estão os domínios denominados de top-level domain. Esses domínios são relativamente fixos. Por razões históricas, existem dois tipos de top-level domain names. Nos EUA, os domínios top-level possuem usualmente 3 letras (EDU, NET, COM, etc). Para domínios fora dos EUA, o código ISO de duas letras para países é usado.
14 O Espaço de Nomes DNS EUA (cont.) EDU - instituições educacionais COM - companhias comerciais GOV - agências do governo MIL - agências militares NET - provedores de acesso à rede ORG - organizações não governamentais Restante do Mundo BR PT FR CA CH AU - Brasil - Portugal - França - Canadá - Suíça - Austrália
15 O Espaço de Nomes do DNS Um nome de domínio que termina com um ponto é dito totalmente qualificado. (cont.) FQDN fully qualified domain name Se o nome não termina com ponto, ele necessita ser completado pelo software que implementa o DNS. camburi camburi.lprm.inf.ufes.br.
16 O Espaço de Nomes do DNS (cont.) Cada parte da árvore de domínios pode ser gerenciada por uma organização diferente, de forma hierárquica. A responsabilidade pelos domínios brasileiros (nomes terminando em.br ) está a cargo do serviço Registro.BR, mantido pelo Comitê Gestor da Internet no Brasil (CGI.br).
17 O DNS nas Organizações Pequena organização: Organização média, com várias sub-redes: Pode ter o seu próprio servidor DNS ou então solicitar esse serviço do seu provedor Internet. Deve ter servidores DNS em cada sub-rede para reduzir a carga da rede. Organização grande: Deve dividir o seu domínio em sub-domínios e ter servidores para cada sub-domínio.
18 Zonas Os nomes de domínios são chamados pelo DNS de zonas. Cada zona se relaciona com sua zona superior e registra nomes de máquinas e zero, uma ou mais zonas inferiores. Cada zona inferior deve ser registrada na zona superior.
19 Tipos de Servidores Servidor Primário: Mantém a cópia master dos dados do domínio em disco. Existe apenas um servidor de nomes primário para cada domínio ou subdomínio. Deve estar localizado numa máquina estável, que não tenha muitos usuários, que seja relativamente segura e, preferencialmente, com fonte ininterrupta de energia.
20 Tipos de Servidores (cont.) Servidor Secundário: Copia os dados do servidor primário através de uma operação chamada de transferência de zona. Pode haver vários servidores secundários para um domínio (tem que existir pelo menos um). É recomendado existir pelo menos dois servidores secundários, um dos quais off-site. Secundários on-site devem ficar em diferentes redes e em diferentes circuitos de energia.
21 Tipos de Servidores (cont.) Servidor caching-only: Carrega os endereços de um pequeno conjunto de máquinas importantes (servidores para o domínio root) a partir de um arquivo de startup e pega todo o resto dos seus dados via caching das respostas às consultas (queries) que ele resolve. A maioria dos servidores primários e secundários também constroem os seus próprios caches.
22 Resumindo... Caching-only: Primário: Possui somente dados derivados das últimas requisições + root servers Servidor com autoridade sobre os dados de um domínio Secundário: Servidor que possui autoridade sobre os dados de um domínio, mas os têm replicados, podendo atender uma requisição de um resolvedor.
23 Observação Um servidor pode ser responsável por mais de um domínio.
24 Root Name Servers Se um servidor não contém a informação requisitada, ele deve acionar outro servidor de nomes. Todo servidor DNS tem que saber, pelo menos, como contactar os servidores de nomes dos domínios toplevel. Para isso, ele tem que conhecer o endereço IP de cada um dos servidores raiz (root name servers). Os root servers sabem o nome e endereço IP de cada um dos servidores DNS autoritativos de cada toplevel domain (.com,.edu,.net,.br,.uk,...). O servidor raiz encaminha ao servidor local os endereços de servidores de nomes autoritativos que podem resolver a consulta.
25 Root Name Servers (cont.) Servidores Top-level domain (TLD) : - Servidores DNS responsáveis por domínios com, org, net, edu, etc, e todos os domínios de países como br, uk, fr, ca, jp. - Network Solutions mantém servidores para domínio.com - NIC.br (Registro.br) para domínio.br Servidores oficiais: - Servidores DNS das organizações, provendo mapeamentos oficiais entre nomes de hospedeiros e endereços IP para os servidores da organização (e.x., Web e correio). - Podem ser mantidos pelas organizações ou pelo provedor de acesso.
26 Root Name Servers (cont.) Existem atualmente 13 root name servers, com nomes na forma letter.root-servers.net, onde letter varia de A a M. Isto não significa que existam apenas 13 servidores físicos; cada operador usa equipamento redundante para prover um serviço confiável mesmo na ocorrência de falha de hardware ou software. Além disso, parte desses servidores operam em múltiplos locais, o que provê maior performance e tolerância a falhas. Há agora servidores C, F, I, J, K, L e M localizados em diferentes continentes usando anúncios anycast para prover um serviço descentralizado. Como resultado, a maioria dos root servers estão hoje fora dos EUA, permitindo uma maior performance nas consultas. Uma relação atualizada pode ser obtida no site:
27 Root Name Servers (cont.) a Verisign, Dulles, VA c Cogent, Herndon, VA (also Los Angeles) d U Maryland College Park, MD g US DoD Vienna, VA k RIPE London (also Amsterdam, Frankfurt) h ARL Aberdeen, MD j Verisign, ( 11 locations) i Autonomica, Stockholm (plus 3 other locations) m WIDE Tokyo e NASA Mt View, CA f Internet Software C. Palo Alto, CA (and 17 other locations) b USC-ISI Marina del Rey, CA l ICANN Los Angeles, CA 13 servidores de nome raiz em todo o mundo
28 Root Name Servers (cont.) Endereçamento anycast: one-to-oneof-many.
29 Root Name Servers (cont.)
30 Número de Domínios Registrados por DPN (Domínio de Primeiro Nível) no Brasil 17/04/08 30
31 Respostas Autoritativas e não-autoritativas Uma resposta autoritativa de um servidor é garantida estar acurada (atualizada) enquanto que uma resposta não-autoritativa pode estar desatualizada. Existe um porcentual muito alto de respostas nãoautoritativas que estão perfeitamente corretas. Servidores primários e secundários são autoritativos para os seus domínios mas não o são sobre informações a respeito de outros domínios mantidas em seus caches.
32 Respostas Autoritativas e nãoautoritativas (cont.) Servidores caching-only nunca são autoritativos; entretanto, podem reduzir a quantidade de tráfego DNS na rede. Constitui uma boa política colocar um servidor secundário ou caching-only em cada segmento de rede ou sub-rede. É perfeitamente admissível uma máquina ser servidora primária para um domínio e servidora secundária para outros domínios.
33 Respostas Autoritativas e nãoautoritativas (cont.) % nslookup [...] > nic.ddn.mil nic.ddn.mil [...] > set type=ns > nic.ddn.mil Server: tab00.larc.nasa.gov Address: [or some other authoritative server] Non-authoritative answer: nic.ddn.mil nameserver = NIC.DDN.MIL nic.ddn.mil nameserver = DIIS-DEV.DDN.MIL Authoritative answers can be found from: NIC.DDN.MIL inet address = DIIS-DEV.DDN.MIL inet address = > exit
34 Servidor Interativo (não-recursivo) É um servidor considerado com comportamento lazy. Se ele tiver a resposta em seu cache proveniente de uma consulta anterior ou se ele é autoritativo para o domínio ao qual o nome consultado pertence, então ele retorna uma resposta apropriada; caso contrário, retorna uma referência a servidores autoritativos de um outro domínio que sejam mais prováveis de terem a resposta. O cliente de um servidor não-recursivo deve estar preparado para aceitar e saber agir ao receber as referências a outros servidores.
35 Servidor Interativo (não-recursivo) (cont.)
36 servidor raiz Servidor Interativo (não-recursivo) (cont.) Hospedeiro em cis.poly.edu quer endereço IP para gaia.cs.umass.edu consulta interativa: Servidor consultado responde com o nome de um servidor de contato Não conheço este nome, mas pergunte para esse servidor servidor TLD 5 servidor local dns.poly.edu servidor oficial dns.cs.umass.edu solicitante cis.poly.edu gaia.cs.umass.edu 36
37 Servidor Recursivo Retorna somente respostas reais ou então mensagens de erro. Ele próprio segue as referências, liberando o cliente desta responsabilidade. O procedimento de resolver a consulta é o mesmo, o que muda é que o servidor recursivo contata ele próprio os outros servidores, ao invés de passar esta tarefa para o cliente.
38 Servidor Recursivo (cont.) servidor DNS raiz 2 consulta recursiva: 3 7 Transfere a responsabilidade de resolução do nome para o servidor de servidor DNS local nomes contatado dns.poly.edu Carga pesada? 1 solicitante 6 servidor TLD servidor DNS oficial dns.cs.umass.edu cis.poly.edu gaia.cs.umass.edu
39 Servidor Recursivo (cont.)
40 Servidores Recursivos x não-recursivos Um efeito colateral de um servidor de nomes ter que seguir as referências é que seu cache adquire informação sobre domínios intermediários. Em uma LAN isso é interessante já que permite que consultas subsequentes de outros hosts se beneficiem do trabalho anterior do servidor. Já um servidor de um domínio top-level, como com ou edu, não deveria salvar informação requisitada por hosts de vários domínios abaixo, porque isso poderia encher o seu cache rapidamente.
41 Servidores Recursivos x não-recursivos (cont.) Por esta razão, servidores de nível mais baixo na árvore de nomes são usualmente recursivos enquanto que servidores dos níveis mais altos (top-level ou de segundo nível) não devem sêlos. O lado cliente do DNS (resolver) que vem com a maioria das implementações Unix espera que o servidor de nomes local seja recursivo. Opções no BIND são providas para desligar a recursão (a partir da versão 4.9.3).
42 Caching Uma vez que um servidor qualquer aprende um mapeamento, ele o coloca num cache local. Entradas na cache são sujeitas a temporização (desaparecem depois de um certo tempo) Servidores TLD são tipicamente armazenados no cache dos servidores de nomes locais. Assim, servidores raiz acabam não sendo visitados com muita freqüência. Estão sendo projetados pela IETF mecanismos de atualização/notificação dos dados. RFCs 2136, 3007, 4033/4/5 2b: Camada de Aplicação 42
43 Exemplo Ex: resolução do endereço mammoth.cs.berkeley.edu a partir da máquina lair.cs.colorado.edu.
44 Exemplo (cont.) Ao final da consulta: ns.cs.colorado.edu tem em seu cache o endereço de mammoth. ns.cs.colorado.edu tem em seu cache os endereços dos servidores de Berkeley. Um servidor de Berkeley tem em seu cache o endereço de mamoth.
45 O Sistema BIND Escrito originalmente para o 4.3 BSD Unix, atualmente é mantido pelo Internet Software Consortium (http://www.isc.org/bind.html). O BIND apresenta três componentes principais: named: deamon que executa as consultas. A máquina na qual ele executa é chamado de name server. resolver: rotinas de biblioteca que são usadas na resolução dos nomes. É o lado cliente do BIND. nslookup, dig e host: interfaces orientadas a linhas de comando. Se named não souber a resposta é ele quem consulta outros servidores e coloca as respostas em cache. É ele também o responsável pela operação de transferência de zona (vide adiante).
46 A Biblioteca Resolver O serviço DNS é acessado pelos processos clientes através da biblioteca resolver. A biblioteca oferece diversas funções para resolução de nomes, das quais as mais utilizadas são: gethostbyname() e gethostbyaddress(). No UNIX, resolver é parte integrante do release de qualquer sistema. Utiliza (é preciso configurar) o arquivo /etc/resolv.conf.
47 A Biblioteca Resolver (cont.)
48 A Biblioteca Resolver (cont.) O resolver consulta a biblioteca NSS (Name Service Switch, que também faz parte da biblioteca Lib C) para determinar o mecanismo a ser utilizado para a resolução de um nome. A resolução de nomes pode fazer uso de diversos mecanismos, entre os quais os mais importantes são: /etc/hosts: arquivo do sistema local que contém uma tabela de números IP e nomes associados. DNS: sistema de resolução de nomes da Internet. NIS: Network Information System, um sistema criado pela Sun para difundir informações administrativas pela rede, como nomes de hosts, informações de usuários, etc.
49 Name Server Switch O sistema NSS, criado inicialmente para o Solaris, permite definir a ordem de procura de serviços para a resolução de diversos tipos de nomes em um ambiente Unix: hosts, usuários/senhas, parâmetros de rede (serviços TCP/IP, serviços RPC, etc). O arquivo Network Services Switch (/etc/nsswitch.conf) determina a ordem das buscas realizadas quando uma certa informação é requisitada. Exemplo: passwd: files nis+ nis shadow: files nis+ nis group: files nis+ nis hosts: files dns ethers: files services: files A linha hosts do exemplo indica que a resolução de nomes de computadores deverá ser feita inicialmente via arquivos locais (/etc/hosts) e depois, caso o nome não tenha sido encontrado, através do serviço DNS.
50 Configurando o Cliente DNS Deve-se configurar o arquivo resolv.conf. Este é o arquivo onde é indicado quem são os servidores de nome para as consultas de DNS. No arquivo, pode ainda ser utilizada a diretiva search ou domain, útil em consultas DNS onde é informado somente o nome do host ao invés do endereço completo (FQDN). Vários domínios podem ser adicionados, o que deve ser evitado, pois causará uma consulta DNS em cada um deles.
51 Configuração do Cliente DNS Suponha o seguinte arquivo /etc/bind/resolv.conf: (1) (2) (3) (4) nameserver nameserver nameserver search com.br acme.com.br com Linhas (1) (3): lista de servidores de nomes que este cliente pode consultar, por ordem de prioridade. Podem ser especificados até três servidores. Linha (4): sufixos a serem adicionados pelo DNS a nomes não totalmente qualificados. Por exemplo, uma pesquisa por obelix pesquisará, na verdade, os seguintes nomes, nesta ordem: obelix.com.br, obelix.acme.com.br e (cont.) obelix.com [obelix] Se for especificado o nome obelix.com.br, sem ponto no final, serão pesquisados os seguintes nomes: obelix.com.br.com.br, obelix.com.br.acme.com.br, obelix.com.br.com e obelix.com.br
52 Configuração do Cliente DNS (cont.) Na inexistência do arquivo /etc/resolv.conf, o comportamento normal é assumir que o servidor de nomes é o computador local e que o nome do domínio é obtido a partir do nome da máquina. Por exemplo, se o computador foi configurado com o nome obelix.unicamp.br, o domínio é obtido a partir do resultado do comando: % hostname obelix.unicamp.br
53 Configuração do Cliente DNS Configuração default (cont.) Não é usado o /etc/resolv.conf O servidor é o computador local O domíno local é derivado de hostname ou domainname Configuração customizada O arquivo /etc/resolv.conf é usado nameserver <ip1> <ip2> <ip3> domainname <nomedom>
54 Configuração do Servidor No Unix, os seguintes arquivos, no mínimo, devem ser configurados: named.boot named.ca named.hosts named.rev
55 Configuração do Servidor (cont.) Exemplo a ser usado Empresa: NetRoad (provedor de acesso) Domínio: netroad.com.br Cliente único: empresa NetMasters A NetRoad presta serviço de mestre secundário para a empresa NetWizards (netwizards.com.br) Equipamentos: Roteador com 16 portas assíncronas, servidor de nomes, servidor Web, servidor de FTP, servidor de Usenet News e seis microcomputadores usados pelos funcionários da empresa.
56 named.boot directory <path> primary <nomedom> <filename> define que o diretório path conterá as demais tabelas do DNS declara que o servidor local é primário para o domínio nomedom e os respectivos dados estão em filename secondary <nomedom> <listaddr> <arqdom> declara que o servidor é secundário para o domínio nomedom. listaddr contém uma lista de endereços IP de, no mínimo, um servidor primário, no qual o servidor vai buscar os dados do domínio, que será armazenado no arquivo arqdom.
57 named.boot cache. <filename> nome do arquivo que contém os nomes e os endereços IP dos root servers. forwarders <listaddr> (cont.) listaddr contêm uma lista de endereços IP de servidores para os quais serão repassadas as requisições que não podem ser resolvidas localmente (que não se tem respostas autoritativas). slave força o servidor para somente usar os servidores na lista do comando forwarders.
58 Exemplo: /etc/named.boot ; exemplo de named.boot ; directory primary inf.ufes.br primary in-addr.arpa primary in-addr.arpa secondary demac.ufu.br secondary in-addr.arpa cache. [forwarders]... [slave] /var/named named.db named.rev named.local named.demac.hosts named.demac.rev named.ca
59 Arquivo /etc/bind/named.boot do Servidor de Nomes da Empresa NetRoad directory /usr/local/named primary netroad.com.br primary netmasters.com.br p/netmasters.db primary IN-ADDR.ARPA p/ db secondary netwizards.com.br s/netwizards.db secondary IN-ADDR.ARPA s/ db cache. primary IN-ADDR.ARPA p/netroad.db named.root db
60 A Base de Dados do DNS É um conjunto de arquivos texto mantido pelo administrador do sistema no servidor primário do domínio. Itens armazenados na base de dados são denominados resource records (RR). Os tipos e formato dos RR são definidos nas RFCs 882, 1035 e 1183.
61 Resource Records <nome> <ttl> IN <tipo> <dados> nome: nome do objeto ttl: tempo em segundos que a informação deve permanecer no cache IN: Internet DNS resource record tipo: tipo do registro dados: informação específica ao tipo do registro
62 Resource Records (cont.) Start of Authority (SOA) Name Server (NS) Address (A) Pointer (PTR) Mail Exchange (MX) Canonical Name (CNAME) Host Information (HINFO) Well Known Service (WKS)
63 SOA (Start Of Authority) <zone> [ttl] IN SOA <origin> <contact> { serial refresh retry expire minimum } Marca o início de uma zona. Existe apenas um registro SOA para cada zona.
64 SOA (Start Of Authority) (cont.) zone: o nome do domínio (zona). referencia o domínio definido em named.boot. origin: nome (FQDN) do servidor primário para o domínio. contact : do gerente do domínio. serial: número seqüencial usado indicar a necessidade da atualização dos dados nos servidores secundários. refresh: tempo em segundos que o servidor secundário vai esperar para testar se precisa atualizar os dados (1 a 6 horas).
65 SOA (Start Of Authority) (cont.) retry: tempo em segundos que determina o intervalo de nova tentativa de um pedido de refresh não respondido por um servidor primário (20-60 minutos). expire: tempo em segundos que o servidor secundário poderá ficar com os dados sem um refresh. minimum: tempo em segundos que os registros podem ficar no cache de outro servidor.
66 Exemplo netroad.com.br. IN SOA ns.netroad.com.br. dnsmaster.netroad.com.br. ( ; Serial ; Refresh 1800 ; Retry ; Expire ) ; Minimum
67 NS (Name Server) Define o(s) servidor(es) de nomes do domínio. Permite delegar de autoridade para sub-domínios de níveis inferiores (em outras palavras, permite definir/alterar a hierarquia de domínios). <domain> [ttl] IN NS <server> Onde: domain: nome do domínio ttl: time to live (opcional) server: endereço da máquina servidora
68 NS (Name Server) (cont.) Domínio Servidor de Nomes lprm.inf.ufes.br. IN NS manguinhos.lprm.inf.ufes.br Ponto OBRIGATÓRIO!!!
69 NS (Name Server) (cont.) ; Definição dos servidores primário NetRoad.com.BR ; netroad.com.br IN NS ns.netroad.com.br IN A netroad.com.br IN NS e secundário do domínio ns.netroad.com.br ns.netwizards.com.br. Obs: foi necessária a introdução de um Registro Cola ( A ) para servidor ns.netroad.com.br., visto que este servidor de DNS se encontra dentro do próprio domínio netroad.com.br.
70 Delegação de Autoridade Suponhamos que seja feito o registro do domínio exemplo.com.br. na entidade responsável pela administração de nomes de domínio no Brasil, que é o Registro.br (www.registro.br). OBS: O NIC.br (Núcleo de Informação e Coordenação do Ponto BR) é o braço executivo do CGI.br (Comitê Gestor da Internet no Brasil). Entre outras funções, o NIC.br responde pelo Registro.br. Durante o processo de registro de domínios, é necessário indicar para a entidade registradora no mínimo dois servidores DNS que estejam respondendo pelo domínio exemplo.com.br. Isto é feito inserindo registros do tipo NS nos servidores raiz do domínio BR, de modo a apontar para este novo domínio.
71 Delegação de Autoridade (cont.) Supondo que os servidores DNS do domínio exemplo.com.br sejam ns1.exemplo.com.br e ns2.exemplo.com.br, os registros inseridos nos servidores raiz do domínio com.br teriam a seguinte forma: exemplo.com.br. ns1.exemplo.com.br. ns1.exemplo.com.br. exemplo.com.br. ns2.exemplo.com.br. ns2.exemplo.com.br. IN NS IN A IN NS IN A
72 Delegação de Autoridade (cont.) Supondo agora que o domínio exemplo.com.br tenha representações em todas as capitais do Brasil e cada um destes subdomínios se inicia pelo nome da capital onde está sediado, o administrador do serviço DNS do domínio exemplo.com.br poderá realizar a delegação de autoridade para os domínios regionais: espiritosanto.exemplo.com.br. IN NS ns.vitoria.exemplo.com.br. pernambuco.exemplo.com.br. NS ns.recife.exemplo.com.br. ceara.exemplo.com.br. IN NS ns.fortaleza.exemplo.com.br. maranhao.exemplo.com.br. IN NS ns.saoluis.exemplo.com.br. rio.exemplo.com.br. IN NS ns.rio.exemplo.com.br. minas.exemplo.com.br. IN NS ns.bh.exemplo.com.br. IN
73 A (Address Record) Usado para converter um nome de host em um endereço IP. <host> [ttl] IN A <addr> Onde: host: nome do host, geralmente é relativo ao domínio corrente. ttl: time to live (optional). addr: endereço IP do host.
74 A (Address Record) vancouver.inf.ufes.br. parati camburi (cont.) IN IN IN A A A ; Definição dos microcomputadores de trabalho de NetRoad.com.BR ; pc01.netroad.com.br. pc02.netroad.com.br. pc03.netroad.com.br. pc04.netroad.com.br. pc05.netroad.com.br. pc06.netroad.com.br IN IN IN IN IN IN A A A A A A
75 MX (Mail exchanger) Usado para o direcionamento de correio eletrônico. <name> [ttl] IN MX <precedence> <host> Onde: name: nome da máquina ou domínio para o qual o é direcionado (relaying). precedence: fator usado para definir a ordem na qual os servidores de mail são tentados. dos Servidores de Primário e Secundário de ; Definição host: o nome do servidor de mail. NetRoad.br ; netroad.com.br IN MX 10 mail.netroad.com.br.
76 CNAME (Canonical Name) Permite definir um apelido (alias) para um nome de host. <nickname> [ttl] IN CNAME <hostname> onde: nickname: apelido hostname: nome já definido para o host
77 CNAME (Canonical Name) Apelido CNAME (cont.) camburi.inf.ufes.br. Tradução do apelido ; Definição dos servidores Web, FTP e News de NetRoad.br ; IN CNAME ns.netroad.com.br. ftp.netroad.com.br IN CNAME ns.netroad.com.br. news.netroad.com.br IN A
78 netroad.com.br. IN SOA ns.netroad.com.br. dnsmaster.netroad.com.br. ( ; Serial ; Refresh 1800 ; Retry ; Expire ) ; Minimum ; ; Definição dos Servidores Primário e Secundário do Domínio NetRoad.com.BR ; netroad.com.br IN NS ns.netroad.com.br. ns.netroad.com.br IN A netroad.com.br IN NS ns.netwizards.com.br. ; ; Definição dos Servidores de Primário e Secundário ; netroad.com.br IN MX 10 mail.netroad.com.br. netroad.com.br IN MX 20 mail.netwizards.com.br. ; ; Definição dos servidores Web, FTP, News ; IN CNAME ns.netroad.com.br. ftp.netroad.com.br IN CNAME ns.netroad.com.br. news.netroad.com.br IN A ; ; Definição dos microcomputadores de trabalho do provedor ; pc01.netroad.com.br IN A pc02.netroad.com.br IN A pc03.netroad.com.br IN A pc04.netroad.com.br IN A pc05.netroad.com.br IN A pc06.netroad.com.br IN A ; ; Definição do Roteador e de suas oito portas assíncronas ; async01.netroad.com.br IN A async02.netroad.com.br IN A async03.netroad.com.br IN A async04.netroad.com.br IN A async05.netroad.com.br IN A async06.netroad.com.br IN A async07.netroad.com.br IN A async08.netroad.com.br IN A Arquivo netroad.db de NetRoad.br
79 DNS Reverso
80 DNS Reverso (cont.)
81 DNS Reverso (cont.) IN-ADDR.ARPA. IN SOA ns.netroad.com.br. dnsmaster.netroad.com.br. ( ; Serial ; Refresh 1800 ; Retry ; Expire ) ; Minimum ; ; Definição dos Servidores Primário e Secundário do Domínio NetRoad.com.BR ; netroad.com.br IN NS ns.netroad.com.br. ns.netroad.com.br IN A netroad.com.br IN NS ns.netwizards.com.br. ; ; Definição dos microcomputadores de trabalho do provedor ; IN-ADDR.ARPA IN PTR pc01.netroad.com.br IN-ADDR.ARPA IN PTR pc02.netroad.com.br IN-ADDR.ARPA IN PTR pc03.netroad.com.br IN-ADDR.ARPA IN PTR pc04.netroad.com.br IN-ADDR.ARPA IN PTR pc05.netroad.com.br IN-ADDR.ARPA IN PTR pc06.netroad.com.br. ; ; Definição do Roteador e de suas oito portas assíncronas ; IN-ADDR.ARPA IN PTR async01.netroad.com.br IN-ADDR.ARPA IN PTR async02.netroad.com.br IN-ADDR.ARPA IN PTR async03.netroad.com.br IN-ADDR.ARPA IN PTR async04.netroad.com.br IN-ADDR.ARPA IN PTR async05.netroad.com.br IN-ADDR.ARPA IN PTR async06.netroad.com.br IN-ADDR.ARPA IN PTR async07.netroad.com.br IN-ADDR.ARPA IN PTR async08.netroad.com.br.
83 Formato da Mensagem DNS
84 Formato da Mensagem DNS Identification: Dividido em vários campos (vide adiante). Number of questions: Id da mensagem, definida pelo cliente e retornada nas respostas do servidor. Permite ao cliente fazer o casamento entre as requisições e as respostas. Flags: (cont.) Para queries é igual a 1, com os outros campos = 0. Para answers é igual a 0. Number of answers: Número de Resource Records (RRs) existentes na resposta.
85 Formato da Mensagem DNS: Flags
86 Formato da Mensagem DNS: Flags QR: Messagem Type opcode: Operation Code 0-standard query; 1-inverse-query; 2-server status request AA: Authoritative Answer 0-query; 1-response O nome do servidor é autoritativo para o domínio definido na seção de question. TC: Truncated No caso de UDP, o tamanho total da resposta excedeu 512 bytes (apenas 512 bytes foram retornados).
87 Formato da Mensagem DNS: Flags RD: Recursion Desired Ligado ( setado ) na consulta (query) e retornado na resposta. Diz ao servidor para tratar essa consulta como recursiva. Se não setado e o servidor não tiver uma resposta autoritativa, o servidor retorna uma lista de servidores para se contatar para obter a resposta (neste caso, ele a trata como uma consulta interativa). RA: Recursion Available (cont.) É setado em 1 na resposta, se o servidor suporta recursão. A maioria dos servidores suporta a recursão, exceto os root servers. RCODE: Response Code 0-no error; 3-name error
88 DNS Questions Query Name: É o nome que está sendo consultado (domínio a ser resolvido). É uma sequência de um ou mais labels, cada um deles começando com um contador que especifica o número de bytes que segue. O nome é terminado com 0 (zero), que é o tamanho do label da raiz do DNS (. ). Ex: gemini.tuc.noao.edu
89 DNS Questions (cont.) Query Type: Cada consulta tem uma query type e cada resposta (denominada Resource Record RR), tem um type. Query Class: Normalmente igual a 1 (Internet address).
90 DNS Responses: Resource Records (RRs) Os três campos finais da mensagem DNS (answers, authority e additional information) compartilham um formato comum, que é chamado de Resource Record (RR).
91 DNS Responses: Resource Records (RRs) (cont.) Domain Name: Type: Normalmente 1 (Internet data). TTL: Especifica o tipo do registro RR (idem query type). Class: Nome do domínio ao qual o RR pertence (idem formato da query name). Número de segundos que o RR pode ficar em cache no cliente. RRs normalmente tem um TTL de dois dias ( segundos). Resource Data Length: Especifica o tamanho dos dados. O formato deste campo depende do tipo do RR. Para um RR do tipo 1 ( A ) o tamanho é de 4 bytes, que é o tamanho de um endereço IP.