DNS
Willamys Araújo
1
Introdução
• A internet possui uma infinidade de sites e, para acessá-los,
você digita um endereço no campo correspondente do seu
navegador, por exemplo,
– www.google.com.br,
– www.infowester.com e
– www.itep.br.
2
O que o computador faz para
encontrar esses sites quando você
solicita?
3
O que é DNS
• DNS é a sigla para Domain Name System (Sistema de
Resolução de Nomes).
• Trata-se de um recurso usado em redes TCP/IP (o
protocolo utilizado na internet e na grande maioria
das redes)
• Permitindo acessar computadores sem que o
usuário ou sem que o próprio computador tenha
conhecimento de seu endereço IP.
4
O que é DNS
• Cada site da internet é acessível por um endereço IP.
• O problema é que existem tantos que é praticamente
impossível decorar o IP de cada um.
• Imagine
que
ao
invés
de
digitar
www.infowester.com para acessar este site, você
tivesse que informar ao navegador o endereço
200.178.123.25.
5
O que é DNS
• Imagine então que você tivesse que fazer o mesmo
para cada site que você visita, como Google, UOL,
Yahoo, etc.
• Iria ser trabalhoso acessar cada um desses sites
através do endereço IP, pois além de decorá-los, você
teria que consultar uma relação de IPs toda vez que
quisesse acessar um site novo.
6
O que é DNS
• Para lidar com esse problema é que o DNS é usado. É
ele que permite o uso de nomes (também chamados
de domínios) ao invés dos IPs no acesso aos sites.
• Basicamente, na internet, o DNS é um conjunto de
grandes bancos de dados distribuídos em servidores
de todo o mundo que indicam qual IP é associado a
um nome (ou seja, um endereço do tipo
www.nomedosite.com).
7
Breve Histórico
8
Breve Histórico
• Quando a internet ainda era uma ferramenta de uso
militar e não possuía muitos computadores, o acesso
aos nomes era possível graça a um arquivo de nome
hosts.txt.
• Esse arquivo continha os endereços de cada nome
existente.
• Com o crescimento da internet, esse arquivo passou a
crescer de igual forma e chegou ao ponto de ser tão
grande que causava atraso nas atualizações.
• Por volta de 1983, o esquema hoje conhecido como
DNS tomou forma para resolver esse problema.
9
Funcionamento
10
Funcionamento
• Como já foi dito, os serviços de DNS da internet são
um conjunto de bancos de dados espalhados em
servidores de todo o mundo.
• Esses bancos de dados têm a função de indicar qual
IP está associado a um nome de um site.
11
Funcionamento
• Quando você digita um endereço em seu navegador,
por exemplo, www.itep.br, seu computador solicita
aos servidores de DNS de seu provedor de internet
que encontre o endereço IP associado a www.itep.br.
• Se os servidores não tiverem essa informação, ele se
comunica com outros que possam ter.
12
Funcionamento
• Devido ao tamanho da internet, armazenar todos os
pares domínio endereço IP em um único servidor
DNS seria inviável, por questões de escalabilidade
que incluem:
– Confiablidade: se o único servidor de DNS falhasse, o
serviço se tornaria indisponível para o mundo inteiro.
– Volume de tráfego: o servidor deveria tratar os pedidos
DNS do planeta inteiro.
13
Funcionamento
– Distância: grande parte dos usuários estaria muito distante
do servidor, onde quer que ele fosse instalado, gerando
grandes atrasos para resolver pedidos DNS.
– Manutenção do banco de dados: o banco de dados
deveria armazenar uma quantidade de dados enorme e
teria que ser atualizado com uma frequência muito alta,
toda vez que um domínio fosse associado a um endereço
IP.
14
Funcionamento
• A solução encontrada é fazer do DNS um banco de
dados distribuído e hierárquico . Os servidores DNS
se dividem nas seguintes categorias:
– Servidores raiz
– Servidores de domínio de topo (Top-Level Domain)
– Servidores autoritativos
15
Funcionamento
• Servidores raiz
– No topo da hierarquia os servidores raiz. Um Servidor Raiz (Root Name
Server) é um servidor de nome para a zona raiz do DNS (Domain Name
System).
– A sua função é responder diretamente às requisições de registros da
zona raiz e responder a outras requisições retornando uma lista dos
servidores de nome designados para o domínio de topo apropriado.
– Os servidores raiz são parte crucial da internet por que eles são o
primeiro passo em traduzir nomes para endereços IP e são usados
para comunicação entre hosts.
16
Funcionamento
• Servidores de domínio de topo (Top-Level Domain)
– Cada domínio é formado por nomes separados por pontos.
– O nome mais à direita é chamado de domínio de topo.
– Exemplos de domínios de topo são .com, .org, .net, .edu e
.gov.
– Cada servidor de domínio de topo conhece os endereços
dos servidores autoritativos que pertencem àquele
domínio de topo, ou o endereço de algum servidor DNS
intermediário que conhece um servidor autoritativo.
17
Funcionamento
• Servidores autoritativos
– O autoritativo é o servidor que está autorizado a
responder por um domínio.
– A autoridade para que um servidor de DNS (autoritativo)
responda pelo domínio é dada pelos registros de domínios,
oficiais, de uma determinada região do mundo.
– No nosso caso, Brasil, quem fornece a autoridade para que
um ou mais servidores autoritativos respondam por um
domínio é o Registro.br.
18
Funcionamento
• A autoridade do Registro.br é reconhecida pelos
servidores root, pois o Registro.br é um NIR
(National Internet Register) responsável pelo Brasil e
autorizado pelo LACNIC, que é um dos cinco RIRs
(Regional Internet Register), do mundo.
19
Funcionamento
20
Funcionamento
21
Funcionamento
22
Funcionamento
• Para melhor entender o DNS, vamos ao seguinte
exemplo: suponha que você queira visitar o site
• www.nomedosite.com.br.
• Para isso, primeiramente o servidor raiz é verificado
e este indica o servidor de terminação.br, que por
sua vez, indica o servidor que cuida do domínio
nomedosite.com.br que informa qual o seu IP, ou
seja, qual o servidor onde o site em questão está
localizado.
23
Funcionamento
24
Melhorias de Funcionamento
25
Melhorias de Funcionamento
• Dois recursos são usados em conjunto para reduzir a
quantidade de requisições que os servidores raiz
devem tratar e a quantidade de requisições feitas
para resolver cada consulta:
– Cache
– Servidor Local
26
Melhorias de Funcionamento
• Cache
– Toda vez que um servidor retorna o resultado de uma
requisição para a qual ele não é autoridade (o que pode
acontecer no método de resolução recursivo), ele
armazena temporariamente aquele registro.
– Se, dentro do tempo de vida do registro, alguma
requisição igual for feita, ele pode retornar o resultado
sem a necessidade de uma nova consulta.
27
Melhorias de Funcionamento
– Note que isso pode provocar inconsistência, já que se um
domínio mudar de endereço durante o tempo de vida do
cache, o registro estará desatualizado.
– Apenas o servidor autoritativo tem a garantia de ter a
informação correta.
– É possível exigir na mensagem de requisição DNS que a
resposta seja dada pelo servidor autoritativo.
28
Melhorias de Funcionamento
•
Servidor Local
– Esse tipo de servidor não pertence a hierarquia DNS, mas é
fundamental para o seu bom funcionamento.
– Em vez de fazer requisições a um servidor raiz, cada cliente
faz sua requisição a um servidor local, que geralmente fica
muito próximo do cliente fisicamente.
– Ele se encarrega de resolver a requisição. Com o uso de
cache, esses servidores podem ter a resposta pronta, ou
ao menos conhecer algum servidor mais próximo ao
autoritativo que o raiz (por exemplo, o servidor de topo),
reduzindo a carga dos servidores raiz.
29
Download

Aula – 8 – Fundamentos de Redes – DNS