SEPI - Sistema de Ensino Presencial Integrado

Propaganda
Módulo 14 – DNS Domain Name System
Existem diversas maneiras de sermos identificados, através do nome, CPF, RG, etc.
Cada uma dessas maneiras se encaixa em um contexto adequado. Por exemplo, a
universidade prefere identificar seu aluno pela matrícula do que pelo seu nome
completo, já as pessoas preferem identificar seus amigos e parentes pelo nome pois
é bem mais fácil de se lembra do que o CPF. Imagine você sendo chamado pelo
CPF, você entenderia?
Da mesma forma que podemos ser identificados de várias maneiras, os Hosts
espalhados pela internet também podem. Nomes como www.google.com.br,
www.globo.com, www.terra.com.br, etc. são fáceis de serem lembrados e por isso
são bem utilizados pelos usuários. Infelizmente esse tipo de identificação fornece
poucas informações sobre a localização desses Hosts, como o universo de
caracteres utilizados nos nomes são variáveis isso torna difícil o processamento dos
roteadores e por essas razões é que os Hosts também são identificados pelo
endereço IP.
Para que haja uma conciliação entre o endereço IP e a identificação através dos
nomes com caracteres é necessário um serviço de diretório que execute a tradução
dos nomes para os endereços IP, essa é a tarefa do DNS (Domain Name System –
Sistema de nome de Domínios).
O DNS pode ser entendido com um grande banco de dados distribuído,
implementado através de uma hierarquia de servidores de nomes conhecidos como
servidores DNS, tem o auxilio de um protocolo da camada de aplicação permitindo
que os Hosts consultem o banco de dados de informações.
As entidades da camada de aplicação que utilizam o dns são: http, SMTP,FTP,etc.
Elas utilizam o DNS para traduzir nomes de Hosts que são fornecidos pelo usuário,
para o endereço IP. Como exemplo, quando você digita no Browser do seu
computador a URL www.google.com.br acontece os seguintes passos:
1. Sua própria máquina executa o lado cliente da aplicação DNS;
2. O Browser passa o nome do Host www.google.com.br para o lado cliente da
aplicação;
3. O cliente DNS envia uma consulta para o servidor DNS contendo o endereço
www.google.com.br;
4. O servidor DNS envia uma resposta para o cliente contendo o IP do Host
desejado;
5. Depois de receber o endereço, o Browser abre uma conexão TCP com um
processo http localizado naquele endereço IP.
Como foi observado nesse passo a passo que acontece uma troca de mensagens
entre o servidor e o cliente DNS, existe um pequeno atraso para as aplicações de
internet que utilizam os serviços de DNS. Para diminuir esse problema,os endereços
IP que são procurados com freqüência ficam armazenados no cache de servidores
de DNS próximos e com isso ajuda a reduzir o tráfego e o atraso.
Assim como os protocolos HTTP ,FTP, SMTP o DNS também é um protocolo da
camada de aplicação, só que o seu papel é bem diferente dos outros pois ele não é
uma aplicação com o qual os usuários interagem diretamente, em vez da interação,
ele fornece uma função interna da internet que é a tradução de nomes para
endereços IP.
O DNS não é responsável apenas pela tradução de nomes, existem outros serviços
que ele desempenha que são os seguintes:
Apelidos dos Hosts: Às vezes alguns Hosts possuem um nome complicado ou
então mais de um nome. Um nome como zona1.setor-x.corporate.com.br pode ter
dois apelidos www.corporate.com.br e corporate.com.br. Os apelidos são na maioria
das vezes bem mais fáceis de serem lembrados, com isso o DNS pode ser chamado
para obter o nome real do apelido.
Apelido do servidor de correio: Assim como no apelido dos Hosts, é interessante
que o nome de um e-mail seja fácil de ser lembrado. Quem tem uma conta no Yahoo
pode ter o seguinte e-mail [email protected], só que o servidor de hospedagem do
Yahoo pode ter um nome complicado como zona1.setor-x.yahoo.com.br. O DNS é
chamado pela aplicação de correio eletrônico para obter o nome real a partir do
apelido que é fornecido e o endereço IP do servidor.
Distribuição de Cargas: O DNS é bastante utilizado para realizar a distribuição de
cargas em sites que são bastante visitados como o google.com.br. Essa distribuição
é feita com a utilização de vários servidores que utilizam IP’s diferentes. O conjunto
de IP’s desses servidores são associados ao nome real do site e armazenados no
bando de dados do DNS. Quando um computador cliente solicita o endereço do site,
o servidor de DNS oferece um conjunto de endereços IP, só que ele efetua um
rodízio na ordem dos endereços a cada solicitação, esse rodízio distribuí o tráfego
entre os vários servidores replicados e balanceia a carga entre eles.
14.1 Banco de dados centralizado
Um modo simples e objetivo de se visualizar o DNS e seus serviços, seria um único
servidor de nome contendo todos os mapeamentos. Os usuários dirigiriam todas as
suas consultas para esse único ponto que responderia diretamente todas as
consultas. Essa simplicidade é bem interessante só que não é adequada para a
internet de hoje pois:

Ponto único sujeito a falha: Se o servidor DNS parar, toda a internet
para.

Alto volume de tráfego: Imagine um único servidor DNS manipulando
todas as consultas de milhares de Hosts.

Banco de dados distante: Não seria possível que um único servidor
estivesse próximo de todos os clientes, com isso resultaria em grandes
atrasos.

Grande volume de dados: Como seria um único servidor, o seu banco
de dados armazenaria uma grande quantidade de informações e seria
enorme, isso ocasionaria uma atualização freqüente das informações por
causa dos novos Hosts que surgiriam.
Como você deve ter observado, um único servidor de DNS centralizado não seria
viável, por isso que o DNS é um projeto distribuído.
14.2 Banco de dados distribuído
Para resolver todos os problemas que são causados por um banco de dados
centralizado, o DNS utiliza um grande número de servidores que são organizados de
forma hierárquica e distribuídos em todo o mundo, fazendo com que todos os
mapeamentos da internet estejam espalhados.
Existem três classes de servidores de nomes:
Servidor de nomes raiz: Na internet existem aproximadamente 20 servidores de
nomes espalhados pelo mundo, a maior parte se encontra na América do Norte.
Cada um desses servidores é formado por um conglomerado de servidores
replicados, que garante segurança e confiabilidade das informações.
Servidor de nome de domínio de alto nível (TDL): Esses servidores são
responsáveis pelos domínios de alto nível como .com, .org, .net e por todos os
domínios de alto nível dos países como .br, .ar, .jp.
Servidor de nome com autoridade: Todas as organizações que possuem um
servidor que possa ser acessado publicamente pela internet, devem fornecer
registros de DNS que faça o mapeamento desses servidores para um endereço IP.
Algumas organizações preferem ter seu próprio servidor DNS para abrigar esses
serviços, ou então utilizam alguns provedores de serviços.
14.3 Cache DNS
O DND utiliza muito o cache para melhorar o desempenho em relação ao atraso e
reduzir o número de mensagens de DNS pela internet. Seu funcionamento é bem
simples, quando um servidor de DNS recebe a resposta de uma cadeia de consulta
ele vai armazenando essas informações em sua memória local. Se uma nova
consulta for efetuada e o endereço desejado já estiver em memória, ele pode
fornecer o endereço IP desejado mesmo que não tenha a autoridade para esse
nome.
Esse armazenamento de endereços não é permanente, ele permanece após um
período de tempo que na maioria dos servidores DNS é de dois dias, após esse
período as informações que estão no cache são descartadas.
Download