Mudanças entre as edições de "DNS"
Linha 107: | Linha 107: | ||
= Exercícios: entendendo o serviço DNS = | = Exercícios: entendendo o serviço DNS = | ||
− | + | Usando a ferramenta [http://www.madboa.com/geek/dig/ dig] execute os seguintes comandos. | |
− | dig - | + | |
− | dig | + | # Resolvendo um nome DNS ... que registros DNS foram obtidos na resposta ? Quais seus significados ? <syntaxhighlight lang=bash> |
+ | dig integrado.sj.ifsc.edu.br | ||
+ | </syntaxhighlight> | ||
+ | # Para obter um registro específicos associado a um nome, deve-se indicá-lo ao executar o ''dig'': <syntaxhighlight lang=bash> | ||
+ | # consulta o registro NS associado a integrado.sj.ifsc.edu.br | ||
+ | dig ns integrado.sj.ifsc.edu.br | ||
+ | </syntaxhighlight> | ||
+ | # Obtendo outros registros: consulte os registros MX, TXT, NS, A associados a ifsc.edu.br. Interprete cada resposta obtida. | ||
+ | # A obtenção de uma resposta DNS pode envolver bastante esforço dos programas envolvidos (o cliente, representado pelo ''dig'' nestes exercícios, e o servidor DNS, que reside em um computador do campus). Você pode ter uma ideia das etapas necessárias para realizar uma tradução de nome DNS se especificar a opção ''+trace'' do ''dig'': <syntaxhighlight lang=bash> | ||
dig +trace www.polito.it; | dig +trace www.polito.it; | ||
− | dig | + | </syntaxhighlight>O que significam as respostas sucessivas obtidas durante a execução do ''dig'' ? Como elas podem ser relacionadas à figura que representa uma hierarquia de domínios DNS (mostrada no início desse artigo) ? |
+ | # Descubra que servidores DNS são consultados para resolver os seguintes nomes: <syntaxhighlight lang=text> | ||
+ | integrado.sj.ifsc.edu.br | ||
+ | das.ufsc.br | ||
+ | www.uol.com.br | ||
+ | ciram.epagri.sc.gov.br | ||
+ | receita.fazenda.gov.br | ||
+ | windguru.cz | ||
+ | www.cister.isep.ipp.pt | ||
+ | www.surfline.com | ||
+ | www.youtube.com | ||
+ | www.cackletv.com | ||
+ | </syntaxhighlight> | ||
+ | # Usando o ''dig'' desenhe a hierarquia de domínios e servidores DNS correspondente aos seguintes campi do IFSC: São José (sj.ifsc.edu.br), Chapecó (chapeco.ifsc.edu.br), Jaraguá do Sul (jaragua.ifsc.edu.br) e Joinville (joinville.ifsc.edu.br). O desenho deve iniciar no domínio raiz, de forma semelhante à [http://wiki.sj.ifsc.edu.br/images/5/56/Hierarquia-DNS.gif figura] mostrada no início deste artigo. |
Edição das 08h51min de 29 de setembro de 2011
DNS (Domain Name System) é uma base de dados distribuída e hierárquica. Nela se armazenam informações para mapear nomes de máquinas da Internet para endereços IP e vice-versa, informação para roteamento de email, e outros dados utilizados por aplicações da Internet.
A informação armazenada no DNS é identificada por nomes de domínio que são organizados em uma árvore, de acordo com as divisões administrativas ou organizacionais. Cada nodo dessa árvore, chamado de domínio, possui um rótulo. O nome de omínio de um nodo é a concatenação de todos os rótulos no caminho do nodo até a raiz. Isto é representado como uma string de rótulos listados da direita pra esquerda e separados por pontos (ex: ifsc.edu.br, sj.ifsc.edu.br). Um rótulo precisa ser único somente dentro do domínio pai a que pertence.
Por exemplo, um nome de domínio de uma máquina no IFSC pode ser mail.ifsc.edu.br, em que br é o domínio do topo da hierarquia ao qual mail.sj.ifsc.edu.br pertence. Já edu é um subdomíno de br, ifsc um subdomínio de edu, e mail o nome da máquina em questão.
Por razões administrativas, o espaço de nomes é dividido em áreas chamadas de zonas, cada uma iniciando em um nodo e se estendendo para baixo para os nodos folhas ou nodos onde outras zonas iniciam. Os dados de cada zona são guardados em um servidor de nomes, que responde a consultas sobre uma zona usando o protocolo DNS.
Clientes buscam informação no DNS usando uma biblioteca de resolução (resolver library), que envias as consultas para um ou mais servidores de nomes e interpreta as respostas.
(obtido do manual do BIND9)
Ver também o livro sobre DNS e BIND da O'Reilly.
Registros DNS
Cada rótulo na hierarquia DNS possui um conjunto de informações associadas a si. Essas informações são guardas em registros de diferentes tipos, dependendo de seu significado e propósito. Cada consulta ao DNS retorna assim as informações do registro pedido associado ao rótulo. Por exemplo, para ver o registro de endereço IP associado a www.ifsc.edu.br pode-se executar esse comando (o resultado teve alguns comentários removidos):
msobral@dell-iron:~$ dig sj.ifsc.edu.br mx
;; QUESTION SECTION:
;sj.ifsc.edu.br. IN MX
;; ANSWER SECTION:
sj.ifsc.edu.br. 3600 IN MX 10 hendrix.sj.ifsc.edu.br.
;; AUTHORITY SECTION:
sj.ifsc.edu.br. 3600 IN NS ns.pop-udesc.rct-sc.br.
sj.ifsc.edu.br. 3600 IN NS ns.pop-ufsc.rct-sc.br.
sj.ifsc.edu.br. 3600 IN NS hendrix.sj.ifsc.edu.br.
;; ADDITIONAL SECTION:
hendrix.sj.ifsc.edu.br. 3600 IN A 200.135.37.65
ns.pop-ufsc.rct-sc.br. 11513 IN A 200.135.15.3
ns.pop-udesc.rct-sc.br. 37206 IN A 200.135.14.1
Cada uma das informações acima mostra um determinado registro e seu conteúdo, como descrito na tabela abaixo:
Nome | TTL | Classe | Registro | Conteúdo do registro |
---|---|---|---|---|
hendrix.sj.ifsc.edu.br. | 3600 | IN | A | 200.135.37.65 |
sj.ifsc.edu.br. | 3600 | IN | NS | hendrix.sj.ifsc.edu.br. |
sj.ifsc.edu.br. | 3600 | IN | MX | 10 hendrix.sj.ifsc.edu.br. |
Obs: TTL é o tempo de validade (em segundos) da informação retornada do servidor de nomes, e classe é o tipo de endereço (no caso IN equivale a endereços Internet).
Os tipos de registros mais comuns são:
Registro | Descrição | Exemplo |
---|---|---|
A | Endereço (Address) | www.sj.ifsc.edu.br IN A 200.135.37.66 |
NS | Servidor de nomes (Name Server) | sj.ifsc.edu.br IN NS hendrix.sj.ifsc.edu.br. |
CNAME | Apelido (Canonical Name) | mail.sj.ifsc.edu.br IN CNAME hendrix.sj.ifsc.edu.br. |
MX | Roteador de email (Mail Exchanger) | sj.ifsc.edu.br IN MX mail.sj.ifsc.edu.br. |
SOA | dados sobre o domínio (Start of Authority) | sj.ifsc.edu.br IN SOA hendrix.sj.ifsc.edu.br. root.sj.ifsc.edu.br. 2009120102 1200 120 604800 3600 |
PTR | Ponteiro para nome (Pointer) | 65.37.135.200.in-addr.arpa IN PTR hendrix.sj.ifsc.edu.br. |
TXT | Texto genérico (Text) | sj.ifsc.edu.br IN TXT "v=spf1 a mx ~all" |
Uma zona assim é composta de um conjunto de registros com todas as informações dos domínios nela contidos. O conteúdo de uma zona conforme armazenado em servidores DNS que usam o software BIND, contendo o domínio example.com, pode ser visualizado abaixo:
example.com 86400 IN SOA ns1.example.com. hostmaster.example.com. (
2002022401 ; serial
10800 ; refresh
15 ; retry
604800 ; expire
10800 ; minimum
)
IN NS ns1.example.com.
IN NS ns2.smokeyjoe.com.
IN MX 10 mail.another.com.
IN TXT "v=spf1 mx -all"
ns1 IN A 192.168.0.1
www IN A 192.168.0.2
ftp IN CNAME www.example.com.
bill IN A 192.168.0.3
fred IN A 192.168.0.4
Exercícios: entendendo o serviço DNS
Usando a ferramenta dig execute os seguintes comandos.
- Resolvendo um nome DNS ... que registros DNS foram obtidos na resposta ? Quais seus significados ?
dig integrado.sj.ifsc.edu.br
- Para obter um registro específicos associado a um nome, deve-se indicá-lo ao executar o dig:
# consulta o registro NS associado a integrado.sj.ifsc.edu.br dig ns integrado.sj.ifsc.edu.br
- Obtendo outros registros: consulte os registros MX, TXT, NS, A associados a ifsc.edu.br. Interprete cada resposta obtida.
- A obtenção de uma resposta DNS pode envolver bastante esforço dos programas envolvidos (o cliente, representado pelo dig nestes exercícios, e o servidor DNS, que reside em um computador do campus). Você pode ter uma ideia das etapas necessárias para realizar uma tradução de nome DNS se especificar a opção +trace do dig: O que significam as respostas sucessivas obtidas durante a execução do dig ? Como elas podem ser relacionadas à figura que representa uma hierarquia de domínios DNS (mostrada no início desse artigo) ?
dig +trace www.polito.it;
- Descubra que servidores DNS são consultados para resolver os seguintes nomes:
integrado.sj.ifsc.edu.br das.ufsc.br www.uol.com.br ciram.epagri.sc.gov.br receita.fazenda.gov.br windguru.cz www.cister.isep.ipp.pt www.surfline.com www.youtube.com www.cackletv.com
- Usando o dig desenhe a hierarquia de domínios e servidores DNS correspondente aos seguintes campi do IFSC: São José (sj.ifsc.edu.br), Chapecó (chapeco.ifsc.edu.br), Jaraguá do Sul (jaragua.ifsc.edu.br) e Joinville (joinville.ifsc.edu.br). O desenho deve iniciar no domínio raiz, de forma semelhante à figura mostrada no início deste artigo.