DNS (Sistema de nomes de domínio)

Julho 2015

O que é o DNS?


Cada computador directamente ligado à Internet possui pelo menos um endereço IP próprio. Contudo, os utilizadores não querem trabalhar com endereços numéricos do tipo 194.153.205.26 mas com um nome de domínio ou endereços mais explícitos (chamados endereços FQDN) do tipo [pt.kioskea.net].

Assim, é possível associar nomes em linguagem corrente aos endereços numéricos graças a um sistema chamado DNS (Domain Name System).

Chama-se resolução de nomes de domínios (ou resolução de endereços) à correlação entre os endereços IP e o nome de domínio associado.

Nomes de hóspedes


No início do TCP/IP, como as redes eram muito pouco vastas ou, dito de outra forma, como o número de computadores ligados a uma mesma rede era reduzido, os administradores de rede criavam ficheiros chamados tabelas de conversão manual. Estas tabelas de conversão manual eram ficheiros sequenciais, geralmente chamados hosts ou hosts.txt, associando em cada linha o endereço IP da máquina e o nome literal associado, chamados nome de hóspede.

Introdução ao Domain Name System


O sistema precedente de tabelas de conversão necessitava, no entanto, da actualização manual das tabelas dos computadores no caso de adição ou modificação de um nome de máquina. Assim, com a explosão da dimensão das redes, e da sua interconexão, foi necessário instalar um sistema de gestão dos nomes hierarquizado e fácil de administrar. O sistema apelidado de Domain Name System (DNS), que se pode traduzir por Sistema de nome de domínio, foi criado em Novembro de 1983 por Paul Mockapetris (RFC 882 e RFC 883), e seguidamente revisto em 1987 no RFCs 1034 e 1035. O DNS foi objecto de numeroso RFCs.

Este sistema propõe:

  • um espaço de nomes hierárquico que permite garantir a unicidade de um nome numa estrutura arborescente, como os /contents/692-unix-os-arquivos-br-ficheiros-ptsistemas de ficheiros de Unix.
  • um sistema de servidores distribuídos que permite tornar disponível o espaço de nomes.
  • um sistema de clientes que permite "resolver" os nomes de domínios, isto é, interrogar os servidores para conhecer o endereço IP que corresponde a um nome.

O espaço de nomes


A estruturação do sistema DNS baseia-se numa estrutura arborescente na qual são definidos domínios de nível superiores (chamados TLD, para Top Level Domains), ligados a um nó raíz representado por um ponto.

Arborescence du Domain Name System



Chama-se "nome de domínio" a cada nó da árvore. Cada nó possui uma etiqueta (em inglês "label") de um comprimento máximo de 63 caracteres.

O conjunto dos nomes de domínio constitui assim uma árvore invertida onde cada nó está separado do seguinte por um ponto (".").

A extremidade de um ramo chama-se hóspede, e corresponde a uma máquina ou a uma entidade da rede. O nome de hóspede que lhe é atribuído deve ser único no domínio considerado ou, se for caso disso, no subdomínio. Por exemplo, o servidor web de um domínio tem geralmente o nome www.

A palavra "domínio" corresponde formalmente ao sufixo de um nome de domínio, isto é, o conjunto das etiquetas de nós de uma arborescência, com excepção do hóspede.

O nome absoluto correspondente ao conjunto das etiquetas dos nós de uma arborescência, separados por pontos, e terminado por um ponto final, é chamado de endereço FQDN (Fully Qualified Domain Name, ou seja, Nome de Domínio totalmente Qualificado). A profundidade máxima da arborescência é de 127 níveis e o comprimento máximo de um nome FQDN é de 255 caracteres. O endereço FQDN permite localizar de maneira única uma máquina na rede das redes. Assim, pt.kioskea.net. representa um endereço FQDN.

Os servidores de nomes


As máquinas chamadas servidores de nome de domínio permitem estabelecer a correspondência entre o nome de domínio e o endereço IP das máquinas de uma rede.

Cada domínio possui um servidor de nomes de domínios, chamado "servidor de nomes primário" (Primary domain name server), bem como um servidor de nomes secundário (secondary domaine name server), permitindo substituir o servidor de nomes primário no caso de indisponibilidade.

Cada servidor de nome está declarado num servidor de nome de domínio de nível imediatamente superior, o que permite implicitamente uma delegação de autoridade sobre os domínios. O sistema de nome é uma arquitectura distribuída, onde cada entidade é responsável pela gestão do seu nome de domínio. Não existe por conseguinte um organismo encarregue da gestão do conjunto dos nomes de domínios.

Os servidores que correspondem aos domínios de mais alto nível (TLD) são chamados "servidores de nomes raiz". Existem treze, espalhados pelo planeta, possuindo os nomes "a.root-servers.net" a "m.root-servers.net".

Um servidor de nomes define uma zona, ou seja, um conjunto de domínios sobre o qual o servidor tem autoridade. O sistema de nomes de domínio é transparente para o utilizador, no entanto é necessário não esquecer os seguintes pontos:

  • Cada computador deve ser configurado com o endereço de uma máquina capaz de transformar qualquer nome num endereço IP. Esta máquina chama-se Domain Name Server. Não desespere : assim que se ligar à Internet, o fornecedor de acesso vai automaticamente alterar os seus parâmetros de rede para colocar à sua disposição estes servidores de nomes.
  • O endereço IP de um segundo Domain Name Server (secondary Domain Name Server) deve igualmente ser definido: o servidor de nomes secundário pode substituir o servidor de nomes primário no caso de disfuncionamento.



O servidor mais comum chama-se BIND (Berkeley Internet Name Domain). Trata-se de um software livre disponível nos sistemas UNIX, desenvolvido inicialmente pela universidade de Berkeley, na Califórnia, e doravante mantido pelo ISC (Internet Systems Consortium).

Resolução de nomes de domínio


O mecanismo que consiste em encontrar o endereço IP que corresponde ao nome de um hóspede é chamado "resolução de nome de domínio". A aplicação que permite realizar esta operação (geralmente integrada no sistema de exploração) chama-se "resolutor" (em inglês "resolver").

Quando uma aplicação deseja conectar-se a um hóspede conhecido pelo seu nome de domínio (por exemplo "pt.kioskea.net"), esta vai interrogar um servidor de nomes definido na sua configuração de rede. Cada máquina conectada à rede possui na sua configuração os endereços IP de dois servidores de nomes do seu fornecedor de acesso.

Um pedido é então enviado ao primeiro servidor de nomes (chamado "servidor de nome primário"). Se este possuir o registo no seu esconderijo, envia-o à aplicação, caso contrário interroga um servidor raíz (no nosso caso, um servidor raíz que corresponde ao TLD ".net"). O servidor de nome raíz reenvia uma lista de servidores de nomes que têm autoridade sobre o domínio (no caso presente, os endereços IP dos servidores de nomes primário e secundário de kioskea.net).

O servidor de nomes primário que tendo autoridade sobre o domínio vai então ser interrogado e enviar o registo que corresponde ao hóspede no domínio (no nosso caso www).

Processus de résolution de nom de domaine

Tipos de registos


Um DNS é uma base de dados repartida que contém registos, chamados RR (Resource Records), relativos aos nomes de domínios. As únicas pessoas a quem dizem respeito as leituras das informações abaixo são os responsáveis pela administração de um domínio, dado
que o funcionamento dos servidores de nomes é totalmente transparente para os utilizadores.

Devido ao sistema esconderijo que permite ao sistema DNS ser repartido, o registo de cada domínio possui uma duração, chamada TTL (Time To Live, ou esperança de vida), permitindo ao servidor intermédio conhecer a data da informação e assim saber se é necessário ou não reverificar.

Geralmente, um registo DNS comporta as seguintes informações:

Nome de domínio (FQDN)TTLTipoClasseRData
pt.kioskea.net. 3600 A IN 163.5.255.85



  • Nome de domínio: o nome de domínio deve ser um nome FQDN, ou seja , deve terminar por um ponto. Se o ponto for omitido, o nome de domínio é relativo, o que quer dizer que o nome de domínio principal será acrescido ao domínio digitado;
  • Tipo : um valor em 16 bits que especifica o tipo de recurso descrevido pelo registo. O tipo de recurso pode ser um dos seguinte:
    • A : trata-se do tipo básico que estabelece a correspondência entre um nome canónico e um endereço IP. Além disso, podem existir vários registos A, correspondendo às diferentes máquinas da rede (servidores).
    • CNAME (Canonical Name): permite fazer corresponder um pseudónimo ao nome canónico. É particularmente útil para fornecer nomes alternativos que correspondem aos diferentes serviços de uma mesma máquina.
    • HINFO : trata-se de um campo unicamente descritivo que permite descrever o material (CPU) e o sistema de exploração (OS) de um hóspede. É aconselhável geralmente não o informar para não fornecer elementos que possam ser úteis para piratas informáticos.
    • MX (Mail eXchange): corresponde ao servidor de gestão do correio. Quando um utilizador envia um correio electrónico para um endereço (utilisateur@domaine), o servidor de correio de saída interroga o servidor de nome que tem autoridade sobre o domínio a fim de obter o registo MX. Podem existir vários MX por domínio, para fornecer uma redundância no caso de avaria do servidor de serviço de mensagens principal. Assim, o registo MX permite definir uma prioridade com um valor que pode ir de 0 a 65.535:
      pt.kioskea.net.   IN MX 10 mail.kioskea.net.
    • NS corresponde ao servidor de nomes que tem autoridade sobre o domínio.
    • PTR : um ponteiro para outra parte do espaço de nomes de domínios.
    • SOA (Start Of Authority): o campo SOA permite descrever o servidor de nome que tem autoridade sobre a zona, bem como o endereço eletrónico do contato técnico (cujo carácter "@" é substituído por um ponto).
  • Classe : a classe pode ser quer IN (que corresponde aos protocolos de Internet, trata-se por conseguinte do sistema utilizado no nosso caso), quer CH (para o sistema caótico);
  • RDATA : trata-se dos dados que correspondem ao registo. Eis as informações esperadas de acordo com o tipo de registo:
    • A: um endereço IP em 32 bits;
    • CNAME: um nome de domínio;
    • MX: um valor de prioridade de 16 bits, seguido de um nome de hóspede;
    • NS: um nome de hóspede;
    • PTR: um nome de domínio;
    • SOA: vários campos.

Domínios de elevado nível


Existe duas categorias de TLD (Top Level Domain, ou seja, domínios de nível mais elevado):
Os domínios ditos "genéricos", chamados gTLD (generic TLD). Os gTLD são nomes de domínios genéricos de nível superior que propõem uma classificação de acordo com o sector de atividade. Assim, cada gTLD possui as suas próprias regras de acesso :
o gTLD historico :



*


*
    • ..arpa corresponde às máquinas procedentes da rede original;
    • .com correspondia inicialmente às empresas de vocação comercial. Doravante, este TLD tornou-se o " TLD por defeito" e a aquisição de domínios que possuem esta extensão é possível, incluindo por particulares.
    • .edu corresponde aos organismos educativos;
    • .gov corresponde aos organismos governamentais;
    • .int corresponde às organizações internacionais;
    • .mil corresponde aos organismos militares;
    • .net correspondia inicialmente aos organismos associados às redes. Este TLD tornou-se desde alguns anos um TLD corrente. A aquisição de domínios que possuem esta extensão é possível, incluindo por particulares.
    • .org corresponde habitualmente às empresas com fins não lucrativos.
    • novos gTLD introduzidos em Novembro de 2000 pelo ICANN :
      • .aero corresponde à indústria aeronáutica;
      • .biz (negócio) correspondendo às empresas comerciais;
      • .museum corresponde aos museus;
      • .name corresponde aos nomes de pessoas ou os nomes de personagens imaginários;
      • .info corresponde às organizações ligadas à informação;
      • .coop correspondendo às cooperativas;
      • .pro correspondendo às profissões liberais.
    • gTLD especiais :
      • .arpa corresponde às infra-estruturas de gestão da rede. O gTLD arpa serve para resolução oposta das máquinas da rede, permitindo encontrar o nome que corresponde a um endereço IP.
  • Os domínios ditos "nacionais", chamados ccTLD (country code TLD). Os ccTLD correspondem aos diferentes países e os seus nomes correspondem às abreviaturas dos nomes de países definidas pela norma ISO 3166. O quadro abaixo recapitula a lista dos ccT




Código País
ACIlha da Ascensão
AD Andorra
AE Emirads Árabes Unidos
AF Afeganistão
AG Antígua e Barbuda
AI Anguila
ALAlbânia
AMArménia
AN Antilhas Holandesas
AOAngola
AQAntártica
AR Argentina
ASSamoa Americana
ATÁustria
AUAustrália
AWAruba
AZAzerbaijão
BA Bósnia-Herzegovina
BBBarbados
BDBangladeche
BEBélgica
BFBurquina Faso
BGBulgária
BHBahreïn
BIBurundi
BJBenim
BMBermudas
BNBrunei
BOBolívia
BRBrasil
BSBaamas
BTButão
BVIlha Bouvet
BWBotsuana
BYBielorússia
BZBelize
CACanadá
CCIlhas Cocos
CDRepública Democrática do Congo
CFRepública Centro Africana
CGCongo
CHSuíça
CICosta de Marfim
CKIlhas Cook
CLChile
CMCamarões
CNChina
COColômbia
COMOrganismo com objectivos comerciais
CRCosta Rica
CUCuba
CVCabo Verde
CXIlha Christmas
CYChipre
CZRepública Checa
DEAlemanha
DJDjibuti
DKDinamarca
DMDomínica
DO República Dominicana
DZArgélia
EC Equador
EDUOrganismo relacionado com a educação
EE Estónia
EGEgipto
EHSara Ocidental
ER Eritreia
ES Espanha
ET Etiópia
EUEuropa
FIFinlândia
FJFiji
FKIlhas Falkland (Malvinas)
FMMicronésia
FOIlhas Faroé
FR França
FXFrança (Território Europeu)
GA Gabão
GB Grã-Bretanha
GDGranada
GE Geórgia
GFGuiana Francesa
GG Guernesey
GHGana
GIGibraltar
GLGronelândia
GMGâmbia
GNGuiné
GOVOrganismo governamental
GPGuadalupe
GQGuiné Equatorial
GRGrécia
GSGeórgia do Sul
GTGuatemala
GUGuam (EUA)
GWGuiné-Bissau
GYGuyana
HKHong Kong
HMIles Heard and McDonald
HNHonduras
HRCroácia
HTHaiti
HUHungria
IDIndonésia
IEIrlanda
ILIsrael
IMIlha de Man
INÍndia
IOTerritórios Britânicos do Oceano Índico
IQIraque
IRIrão
IS Islândia
ITItália
JMJamaica
JOJordânia
JPJapão
KEQuénia
KGQuirguizistão
KH Camboja
KIQuiribati
KMComores
KNSanto Kitts e Nevis
KPCoreia do Norte
KRCoreia do Sul
KWKuwait
KYIlhas Caimão
KZCazaquistão
LALaos
LBLíbano
LCSanta Lúcia
LILiechtenstein
LKSri Lanka
LRLibéria
LSLesoto
LTLituânia
LULuxemburgo
LV Letónia
LYLíbia
MAMarrocos
MCMónaco
MDMoldávia
MGMadagáscar
MHIlhas Marshall
MKMacedónia
MLMali
MILOrganismo militar
MMMyanmar
MNMongólia
MOMacau
MPIlhas Marianne do Norte
MQMartinica
MRMauritânia
MSMontserrat
MUMaurícia
MVMaldivas
MWMalawi
MXMéxico
MYMalásia
MZ Moçambique
NANamíbia
NCNova Caledónia
NENíger
NETOrganismo relacionado com Internet
NFIlhas Norfolk
NGNigéria
NINicarágua
NLPaíses Baixos
NONoruega
NPNepal
NRNauru
NTZona Neutra
NUNiue
NZNova Zelândia
OMOmã
ORGOrganismo não referenciado
PAPanamá
PEPeru
PFPolinésia francesa
PGPapuásia-Nova Guiné
PHFilipinas
PKPaquistão
PLPolónia
PMSaint-Pierre e Miquelon
PNPitcairn
PRPorto Rico (EUA)
PSTerritórios palestinianos
PTPortugal
PYParaguai
PWPalau
QACatar
REReunião
RORoménia
RUFederação Russa
RWRuanda
SAArábia Saudita
SBIlhas Salomão
SCSeicheles
SDSudão
SESuécia
SGSingapura
SHSanta Helena
SIEslovénia
SJIles Svalbard et Jan Mayen
SKRepública Eslovaca
SLSerra Leoa
SMSan Marino
SNSenegal
SOSomália
SRSuriname
STSão Tomé e Princípe
SUUnião Soviética
SVSalvador
SYSíria
SZSuazilândia
TCIlhas Turks e Caicos
TDChade
TFTerritório Austral francês
TGTogo
THTailândia
TJTajiquistão
TKTokelau
TMTurquemenistão
TNTunísia
TOTonga
TPTimor-Leste
TRTurquia
TTTrindade e Tobago
TVTuvalu
TWTaiwan
TZTanzânia
UAUcrânia
UGUganda
UKReino Unido
UMUS Minor Outlying Islands
USEstados Unidos
UYUruguai
UZUzbequistão
VACidade do Vaticano
VCSão Vicente e Granadinas
VE Venezuela
VGIlhas Virgens Britânicas
VIIlhas Virgens Americanas
VNVietname
VUVanuatu
WFWallis e Futuna
WSSamoa do Oeste
YEIémen
YTMayotte
YUJugoslávia
ZA África do Sul
ZMZâmbia
ZRZaire
ZWZimbabwe

Ver também...


Para uma leitura offline, é possível baixar gratuitamente este artigo no formato PDF:
Dns-sistema-de-nomes-de-dominio .pdf

Veja também


DNS (Domain Name System)
DNS (Domain Name System)
DNS (Sistema de nombre de dominio)
DNS (Sistema de nombre de dominio)
DNS (Domänen Namen System)
DNS (Domänen Namen System)
DNS (Système de noms de domaine)
DNS (Système de noms de domaine)
DNS (Sistema dei nomi di dominio)
DNS (Sistema dei nomi di dominio)
Este documento, intitulado « DNS (Sistema de nomes de domínio) »a partir de CCM (br.ccm.net) está disponibilizado sob a licença Creative Commons. Você pode copiar, modificar cópias desta página, nas condições estipuladas pela licença, como esta nota aparece claramente.