DNS
Sistema de Nomes de Domínios
O DNS
(Domain
Name
System
- Sistema de Nomes de Domínios) é um sistema de gerenciamento de nomes hierárquico e distribuído operando segundo duas definições:
- Examinar e atualizar seu banco de dados.
- Resolver nomes de domínios em endereços de rede (IP).
O sistema de distribuição de nomes de domínio foi introduzido em 1984, e com ele, os nomes de hosts residentes em um banco de dados
pode ser distribuído entre servidores múltiplos, diminuindo assim a
carga em qualquer servidor que provê administração no sistema de
nomeação de domínios. Ele baseia-se em nomes hierárquicos e permite a inscrição de vários dados digitados além do nome do host e seu IP.
Em virtude do banco de dados de DNS ser distribuído, seu tamanho é
ilimitado e o desempenho não degrada tanto quando se adiciona mais
servidores nele. Este tipo de servidor usa como porta padrão a 53. A implementação do DNS-Berkeley, foi desenvolvido originalmente para o sistema operacional
BSD UNIX 4.3.
A implementação do Servidor de DNS
Microsoft se tornou parte do sistema operacional
Windows NT
na versão Server 4.0. O DNS passou a ser o serviço de resolução de
nomes padrão a partir do Windows 2000 Server como a maioria das
implementações de DNS teve suas raízes nas
RFCs 882 e 883, e foi atualizado nas
RFCs 1034 e 1035.
O servidor DNS traduz nomes para os endereços IP e endereços IP para
nomes respectivos, e permitindo a localização de hosts em um domínio
determinado. Num sistema livre o serviço é implementado pelo software
BIND. Esse serviço geralmente se encontra localizado no servidor DNS primário.
O servidor DNS secundário é uma espécie de cópia de segurança do servidor DNS primário.
Um recurso da internet, por exemplo um site da Web, pode ser identificado de duas maneiras: pelo seu nome de
domínio[1], por exemplo, “www.wikipedia.org” ou pelo
endereço de IP[2]dos equipamento que o hospedam (por exemplo, 208.80.152.130 é o IP associado ao domínio www.wikipedia.org
[3]). Endereços de IP são usados pela camada de
rede para determinar a localização física e virtual do equipamento. Nomes de domínio, porém, são mais
mnemônicos
para o usuário e empresas. É então necessário um mecanismo para
traduzir um nome de domínio em um endereço IP. Esta é a principal função
do DNS
Hierarquia
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:
- Confiabilidade: 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.
- 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.
A solução encontrada é fazer do DNS uma
base de dados distribuída e
hierárquica . Os servidores DNS se dividem nas seguintes categorias:
Servidores raiz
No topo da hierarquia estão os 13 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 porque eles são o primeiro passo em traduzir nomes para
endereços IP e são usados para comunicação entre hosts.
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,
.inf 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.
Servidores autoritativos
O servidor autoritativo de um domínio possui os registros originais
que associam aquele domínio a seu endereço de IP. Toda vez que um
domínio adquire um novo endereço, essas informações devem ser
adicionadas a pelo menos dois servidores autoritativos
[4].
Um deles será o servidor autoritativo principal e o outro, o
secundário. Isso é feito para minimizar o risco de, em caso de erros em
um servidor DNS, perder todas as informações originais do endereço
daquele domínio.
Com essas três classes de servidores, já é possível resolver qualquer
requisição DNS. Basta fazer uma requisição a um servidor raiz, que
retornará o endereço do servidor de topo responsável. Então repete-se a
requisição para o servidor de topo, que retornará o endereço do servidor
autoritativo ou algum intermediário. Repete-se a requisição aos
servidores intermediários (se houver) até obter o endereço do servidor
autoritativo, que finalmente retornará o endereço IP do domínio
desejado.
Repare que essa solução não resolve um dos problemas de
escalabilidade completamente: os servidores raiz tem que ser acessados
uma vez para cada requisição que for feita em toda a internet. Esses
servidores também podem estar muito longe do cliente que faz a consulta.
Além disso, para resolver cada requisição, são precisas várias
consultas, uma para cada servidor na hierarquia entre o raiz e o
autoritativo.
Esta forma de resolver consultas é chamada não-
recursividade:
cada servidor retorna ao cliente (ou ao servidor local requisitante,
como explicado adiante) o endereço do próximo servidor no caminho para o
autoritativo, e o cliente ou servidor local fica encarregado de fazer
as próximas requisições.
Há também o método recursivo: o servidor pode se responsabilizar por
fazer a requisição ao próximo servidor, que fará a requisição ao
próximo, até chegar ao autoritativo, que retornará o endereço desejado, e
esse endereço será retornado para cada servidor no caminho até chegar
ao cliente. Esse método faz com que o cliente realize apenas uma
consulta e receba diretamente o endereço desejado, porém aumenta a carga
dos servidores no caminho. Por isso, servidores podem se recusar a
resolver requisições recursivas.
Melhorias de Performance
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
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. 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.
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.
DNS Reverso
Normalmente o DNS atua resolvendo o nome do domínio de um
host qualquer para seu endereço
IP correspondente. O
DNS Reverso
resolve o endereço IP, buscando o nome de domínio associado ao host. Ou
seja, quando temos disponível o endereço IP de um host e não sabemos o
endereço do domínio(nome dado à máquina ou outro equipamento que acesse
uma rede), tentamos resolver o endereço IP através do DNS reverso que
procura qual nome de domínio está associado aquele endereço. Os
servidores que utilizam o DNS Reverso conseguem verificar a
autenticidade de endereços, verificando se o endereço IP atual
corresponde ao endereço IP informado pelo servidor DNS. Isto evita que
alguém utilize um domínio que não lhe pertence para enviar spam, por
exemplo.
(conteudo de http://pt.wikipedia.org/wiki/Domain_Name_System )
SEGUE ABAIXO A LISTA DE ALGUNS DNS
Brasil Telecom
Dns Primário Dns Secundário
DF (BrT) 201.10.128.2 201.10.120.2
GO (BrT) 201.10.128.3 201.10.120.3
MT (BrT) 201.10.128.2 201.10.120.3
MS (BrT) 201.10.128.3 201.10.1.2
PR (BrT) 201.10.120.2 201.10.128.3
RO/AC 201.10.128.2 201.10.1.2
RS (BrT) 201.10.1.2 201.10.120.3
SC (BrT) 201.10.120.3 201.10.1.2
Speedy
Dns Primário Dns Secundário
SP 200.205.125.58 200.205.125.57
SP 200.204.0.10 200.204.0.138
Velox
Dns Primário Dns Secundário
AL 200.149.55.104 200.202.193.171
BA 200.149.55.140 200.202.193.171
CE 200.223.0.83 200.223.0.84
MA 200.202.193.71 200.149.55.141
MG/ES 200.202.93.75 200.202.0.34
PA 200.149.55.140 200.202.193.74
PB 200.223.0.84 200.222.0.34
PE 200.202.193.75 200.202.193.76
RJ 200.149.55.142 200.165.132.148
RN 200.149.55.142 200.222.0.38
SE 200.149.55.142 200.222.0.38
GVT
Dns Primário Dns Secundário
Região Centro-Sul (Curitiba e demais)
200.175.5.139 200.175.89.139
Região Sul (Porto Alegre e demais)
200.175.89.139 200.175.182.139
Região Norte (Brasília e demais)
200.175.182.139 200.175.5.139
VIRTUA
Dns Primário Dns Secundário
200.250.77.87 200.250.77.85
Provedores
Dns Primário Dns Secundário
BrTurbo 200.199.201.23 200.199.201.24
Uol 200.221.11.100 200.221.11.101
Uol (2) 200.221.11.98 200.147.255.105
Matrix 200.202.7.1 200.202.17.1
Net Bank 200.203.199.2 200.203.199.3
Netpar 200.255.244.1 200.255.244.3
Onda 200.195.192.130 200.195.192.10
Sul BBS 200.219.150.4 200.219.150.5
Terra 200.177.2.10 200.176.254.10
PortoWeb 200.169.22.100 200.169.22.108
Redemeta 200.248.155.11 200.248.155.12
SpeedRS 200.180.201.226 200.180.201.227
SAN 201.15.146.3 201.15.146.4
Tagline.net 200.180.128.170 200.180.128.171
Correioweb 200.188.191.60 200.188.191.59
Getecnet 200.96.113.3 200.96.113.4
MKSNet 200.180.239.1 200.180.239.3
Net11 200.203.100.1 200.203.98.3
Redesul 201.25.31.1 201.25.31.2
TCA 200.102.161.231 201.10.50.2
PS5 200.199.251.131 200.199.251.132
Provedores por Estado
Provedores Nacionais
Dns Primário Dns Secundário
BrTurbo 200.199.201.23 200.199.201.24
UOL 200.221.11.100 200.221.11.101
UOL 200.221.11.98 200.147.255.105
Matrix 200.202.17.1 200.202.7.3
Terra 200.176.2.75 200.176.3.130
Acre
Dns Primário Dns Secundário
Contilnet 200.101.70.1 200.101.70.2
Distrito Federal
Dns Primário Dns Secundário
Abordo 200.199.236.1 200.199.236.10
Apis 200.181.19.5 200.181.19.8
Bratelcom 200.163.16.208 200.140.8.149
Cabonet 200.162.126.195 200.162.126.197
CristalNet 200.199.232.130 200.199.232.131
G8Net 200.199.229.200 200.199.229.201
Open Internet 200.181.71.14 200.181.71.11
Persocom 200.199.215.1 200.199.215.2
Solar 200.199.212.35 200.199.212.36
Tecnolink 200.99.40.140 200.99.40.132
Yawl 200.175.230.1 200.175.230.3
Goiás
Dns Primário Dns Secundário
Accon 200.181.105.69 200.181.105.67
KFSSystem 200.103.99.35 200.103.99.36
NetGo 200.181.54.2 200.181.54.3
UGA 207.36.201.88 72.4.162.137
Mato Grosso
Dns Primário Dns Secundário
Arinosnet 216.32.84.4 216.32.84.5
Cepromat 200.241.45.1 200.241.45.5
Micnet 200.252.204.9 200.252.204.10
VSP 66.98.190.97 66.98.190.117
Mato Grosso do Sul
Dns Primário Dns Secundário
Chapnet 200.199.220.187 200.199.220.132
Douranet 200.163.38.1 200.163.38.2
Econet 200.103.81.98 SEM SECUNDÁRIO
Fibranet 200.181.112.133 200.181.112.130
Netms 200.181.119.6 200.181.119.5
Rede Pura 201.14.68.227 201.14.68.228
Star5 201.40.17.226 SEM SECUNDÁRIO
Minas Gerais
Dns Primário Dns Secundário
Correioweb 200.188.191.60 200.188.191.59
Paraná
Dns Primário Dns Secundário
Axios 200.250.83.129 200.250.83.130
Calnet 200.203.183.62 200.203.183.63
Compwire 200.203.189.71 200.203.189.70
Convoy 200.192.100.11 200.192.100.12
Curitiba Online 200.203.189.130 SEM SECUNDÁRIO
InTime 67.18.218.194 67.18.218.195
JSol 216.75.2.103 216.75.2.58
Milenio 200.181.134.11 200.181.134.12
MPS 200.160.16.11 200.160.16.13
Net Bank 200.203.199.2 200.203.199.3
Netpar 200.103.225.1 200.103.225.3
Onda 200.195.192.10 200.195.199.2
Qualityware 200.203.181.38 201.15.23.246
SoftAll 201.40.242.82 201.40.242.83
SpeedNet 200.103.154.141 SEM SECUNDÁRIO
Sul BBS 200.219.150.4 200.219.150.5
Vega IT 200.175.10.70 200.175.10.66
Vr Systems 200.203.210.4 200.203.210.2
W3OL 209.59.136.93 209.59.136.94
WoPM 200.163.243.133 200.163.243.136
Zooom 201.14.36.250 201.14.36.251
Rio Grande do Sul
Dns Primário Dns Secundário
Getecnet 200.96.113.3 SEM SECUNDÁRIO
GPSNet 200.143.66.10 201.40.161.30
Italnet 200.143.76.1 200.143.76.2
Megaway 200.163.168.162 200.163.168.163
MKSNet 200.180.239.1 200.180.239.3
MSBNet 201.3.187.2 201.3.187.6
Net11 200.203.100.1 SEM SECUNDÁRIO
OEDA 200.203.120.205 200.203.120.209
PortoWeb 200.169.22.100 200.169.22.108
Plug-in 200.192.140.36 200.157.211.143
Redemeta 200.248.155.11 200.248.155.12
Redesul 201.25.31.1 201.25.31.2
SAN 201.15.146.4 200.96.112.133
SimTelecom 200.143.64.10 200.143.64.162
SpeedRS 200.180.201.226 200.180.201.227
Sitesul 200.143.84.3 200.143.84.2
Tagline.net 200.180.128.170 200.180.128.171
TCA 200.102.161.231 201.10.50.2
Zipline 201.10.44.131 201.10.44.151
VIA-RS 200.198l.128.2 200.198l.128.3
Santa Catarina
Dns Primário Dns Secundário
CSM Telecom 200.194.232.2 200.194.232.3
Floripa 200.193.65.1 64.246.36.36
Intergate 200.215.26.1 200.215.26.3
Netco 200.195.161.32 SEM SECUNDÁRIO
Netlm 216.32.72.195 216.32.72.196
Netuno 200.215.118.1 200.215.118.6
Tecnohelp 201.24.77.195 66.98.228.83
Yadata 200.247.123.137 SEM SECUNDÁRIO
Rondônia
Dns Primário Dns Secundário
RO-Net 200.101.71.2 200.101.71.3
Enternet 200.103.23.130 200.103.23.133
Tocantins
Dns Primário Dns Secundário
BlzNet 200.181.105.141 200.181.105.132
Estrondo 200.101.43.98 200.101.43.99
Universidades
Dns Primário Dns Secundário
PUC-RS 200.17.89.41 200.17.89.42
PUC-PR 200.192.112.2 200.192.112.3
PUC-SP 200.144.145.9 200.144.145.10
PUC-RIO 139.82.1.2 139.82.16.3
Unisinos 200.188.161.3 200.188.175.243
Ulbra 200.196.73.3 200.196.73.5
Unisc 200.17.83.33 200.17.83.43
UPF 200.248.36.131 SEM SECUNDÁRIO
Unisul 200.18.12.30 200.18.12.8
Feevale 200.19.250.3 200.19.250.2