A solução foi adoptar nomes para os computadores dado que como são alfabéticos são pronunciáveis, e mais fáceis de memorizar. Dessa forma, em vez de se utilizar o endereço 192.105.232.4 para estabelecer uma ligação com um determinado computador, passava-se a utilizar o correspondente nome, por exemplo, mars.nasa.gov. Estes nomes lógicos também permitem que não seja necessário saber a localização física de um computador. Quando um computador é transferido para uma rede diferente, os utilizadores continuam a utilizar o mesmo nome lógico. Com as aplicações que suportam os protocolos TCP/IP é possível utilizar indiferentemente nomes de computadores ou endereços numéricos (inclusivé nos browsers).
Mas foi então necessário estabelecer um sistema de mapeamento entre os nomes dos computadores e os respectivos endereços numéricos. O sistema de mapeamento que veio a vingar chama-se DNS (Domain Name System (ou Service)). É este sistema que traduz nomes de computadores no respectivo endereço numérico IP.
A história do DNS
O sistema antigo de mapeamento entre nomes e endereços consistia num único ficheiro, conhecido como tabela de hosts (host table), que era mantido pelo Stanford Research Institute's Network Information Center (SRI-NIC). À medida que novos computadores se ligavam à Internet, o SRI-NIC adicionava-os à tabela, tarefa que efectuava poucas vezes por semana. Os administradores dos computadores ligados à Internet tinham periodicamente de actualizar os respectivos servidores de nomes de domínios através da cópia, via FTP, do ficheiro de hosts localizado no computador central do SRI-NIC.
Mas à medida que a Internet foi crescendo, a gestão da tabela de hosts tornou-se complicada. Embora funciona-se bem para o mapeamento entre nomes e endereços, não era a forma mais prática e efectiva de actualizar e distribuir informação para os nós da rede.
Uma vez que a estabilidade da Internet estava em jogo, Paul Mockapetris e outras pessoas decidiram criar, em 1984, o DNS para resolver os problemas de crescimento. A grande vantagem deste novo sistema é que nenhuma entidade é a única responsável pela sua actualização. O DNS baseia-se no conceito de base de dados distribuída, existindo em muitos servidores de nomes diferentes em todo o mundo, mas nenhum desses servidores possui toda a informação. Isto permite assim um crescimento praticamente ilimitado do DNS.
A base de dados do DNS é então utilizada pelas aplicações baseadas nos protocolos TCP/IP para realizar o mapeamento entre os hostnames e os endereços IP, e para fornecer informação de encaminhamento para o correio electrónico. Cada site (departamento universitário, campus universitário, empresa ou departamento dentro de uma empresa, por exemplo) mantém a sua própria base de dados de informação e executa um programa servidor que outros sistemas ligados à Internet podem questionar. O DNS fornece o protocolo que permite aos clientes e servidores comunicarem entre si.
O DNS marcou a transição da Internet de um modelo de administração centralizado (hosts.txt - flat namespace) para um modelo de administração distribuído (DNS - hierarchical namespace). Tal como a generalidade dos serviços da Internet, o DNS é um serviço cliente-servidor.
A diferença entre o filesystem do UNIX e a árvore do DNS é que no DNS começa-se nas folhas em direcção à raíz, enquanto no UNIX é o inverso. Escrever os identificadores desta forma permite que sejam utilizadas técnicas de compressão em mensagens que contenham múltiplos nomes de domínios.
Por exemplo, o nome de domínio
Podemos ver que os nomes de domínios são construídos hierarquicamente, sendo o nível mais alto da hierarquia o último identificador.
Cada nó na árvore tem de possuir um nome de domínio único, mas o mesmo identificador pode ser utilizado em pontos diferentes da árvore. Os domínios de topo (top-level domains) estão divididos em três áreas:
Como o DNS foi introduzido originalmente nos Estados Unidos e o componente final de um endereço destinava-se a indicar o tipo de organização onde estava localizado o computador. Dessa forma, alguns dos domínios de topo (.edu, .gov e .mil) ainda só são utilizados por organizações baseadas nos Estados Unidos.
Os códigos de duas letras que indicam o país de origem estão definidos no ISO 3166 com a excepção do
Em alguns países existem sub-domínios que indicam o tipo de organização como por exemplo,
O esquema da Internet pode acomodar uma grande variedade de organizações, e permite que cada grupo escolha entre hierarquias geográficas ou organizacionais. A maior parte dos sites segue esta filosofia de modo a poderem ligar as suas redes à Internet sem alterar os nomes dos computadores.
O nome de cada nó/identificador (excepto o do nó root) tem de ter, no máximo, 63 caracteres, e é indiferente a utilização de maiúsculas ou minúsculas. Os identificadores têm de começar por uma letra e podem consistir apenas de letras, algarismos e traços (-). No conjunto, um nome de domínio completo não pode exceder os 255 caracteres.
Os nomes de domínios podem ser relativos (relative) ou fully qualified. Neste último caso, são incluídos todos os identificadores e em toda a rede internet não existirá outro idêntico. Por exemplo,
Dentro de uma zona o serviço DNS para zonas subsidiárias pode ser delegado conjuntamente com um domínio subsidiário. Desta forma, embora exista uma entidade responsável pela administração do domínio
A administração dos sub-domínios e das zonas é então realizada de uma forma independente. O computador que mantém a base de dados para uma zona é a autoridade dessa zona e representa o servidor de nomes primário dessa zona, embora possam existir servidores secundários para a zona. Isso significa que a lista correcta e actualizada de nomes DNS e endereços IP correspondentes relativa à zona em causa apenas se encontra nesse computador. Então, a zona também pode ser considerada como o grupo de computadores incluídos nessa lista ou como a unidade administrativa básica do DNS. Tenha em atenção que um servidor de nomes pode ter autoridade sobre uma ou mais zonas.
Quando um novo computador é adicionado à zona, o administrador adiciona a informação apropriada (nome e endereço IP) a um ficheiro em disco existente no servidor primário (que constitui a base de dados DNS local). O servidor de nomes primário é então notificado que tem de reler os ficheiros de configuração. Os servidores secundários contactam o primário de uma forma regular (normalmente cada 3 horas), e se o primário possuir novos dados, os secundários obtêm esses dados através do mecanismo de zone transfer.
Se um processo servidor de nomes não poder dar resposta ao pedido, remove o componente menos significativo (da esquerda para a direita) do endereço e tenta identificar um servidor de nomes (DNS) para o domínio resultante, ao qual solicita a informação em causa. Este processo é repetido até que seja identificado um servidor de nomes ou até que não sobre mais nada do nome. Neste caso o servidor de nomes terá chegado à raíz do espaço de nomes do DNS (DNS name space) e entrará então em contacto com um root server. É normal existirem vários servidores para um determinado domínio. Neste caso, o servidor que efectua o inquérito tentará identificar o servidor authoritative.
A maior parte das vezes, os servidores não sabem como pode contactar os outros servidores. Mas têm obrigatoriamente de saber como contactar os root name servers. Estes por sua vez sabem o nome e a localização (isto é, o endereço IP) de todos os servidores de nomes com autoridade (authoritative name servers) para todos os domínios de segundo nível. Cada servidor de nomes primário tem de saber o endereço IP de pelo menos um dos root name servers para que o serviço DNS possa ser oferecido mesmo que não existam endereços em cache ou não existam servidores locais no ficheiro
Existem actualmente (1998) 13 servidores que podem processar pedidos na raíz do DNS name space. Os root servers são administrados pela InterNIC e a lista actual inclui:
Todos os servidores estão localizados nos Estados Unidos, excepto o
Uma lista de root servers num formato compreensível por um servidor DNS está disponível por FTP anónimo em
Como pode ver pelos endereços DNS antigos, a Network Solutions, Inc. (InterNIC) apenas opera o primeiro dos root servers, sendo os outros mirror sites administrados por diversas organizações como a PSINet, a University of Southern California, Vixie Enterprises (fundada pelo Internet Software Consortium), várias bases militares americanas e a Comedia Information AB na Suécia.
Os servidores relativos aos domínios genéricos de topo (.com, .edu, .net, etc.) também possuem mirrors nos root servers para evitar comunicações adicionais. Contudo, inquéritos relativos a domínios nacionais (ex: .pt, .uk, .nl) têm de ser enviados aos servidores dos respectivos países, adicionando alguns milisegundos ao tempo de resposta.
A árvore do DNS mostra como é que um determinado servidor só pode contactar outros servidores. Porém, esta árvore não indica uma ligação física de rede. Os servidores podem estar localizados em localizações arbitrárias na rede. Por isso, a árvore de servidores é uma ligação lógica entre servidores, que utiliza a Internet para estabelecer comunicação.
Como pode ver pela figura, o resolver devolve o endereço IP antes de pedir ao TCP para abrir uma ligação ou enviar um datagrama utilizando o UDP.
Um computador envia o nome do domínio para o qual pretende um endereço IP para o respectivo servidor primário DNS. Esse servidor DNS verifica na base de dados local se o nome de domínio existe; se encontrar o full domain name respectivo endereço IP é devolvido à workstation.
Se o servidor DNS primário não possuir autoridade sobre o nome de domínio solicitado, passa o inquérito para o root server para o qual está configurado que deve utilizar para tias inquéritos.
O root server por sua vez passa o inquérito para um servidor de domínios do topo (Top-Level Domain), por exemplo, o servidor .com. O servidor TLD possui uma lista de sub-domínios (por exemplo
Eventualmente, se tudo correr bem, o inquérito chegará a um servidor DNS que contém informação authoritative sobre o computador em causa identificado pelo nome de domínio, por exemplo,
Na prática, o inquérito pode ser empurrado de servidor DNS em servidor DNS até que o cliente ultrapasse o limite de tempo de timeout, assumindo que não existe entrada DNS para o nome de domínio em causa. Isto acontece frequentemente, devido ao facto dos administradores de sistema moverem servidores DNS entre computadores, delegarem responsabilidade DNS a novos servidores, ou não actualizarem os servidores DNS na hierarquia superior quando fazem essas alterações. Por isso, alguns nomes de domínios podem nunca ser encontrados.
Cada servidor possui uma cache com os nomes recentemente utilizados bem como um registo do local a partir do qual a informação de mapeamento foi obtida. Quando um cliente pergunta a um servidor o nome ou endereço IP de um determinado computador o servidor executa as seguintes operações:
Algumas recomendações existentes nesse ficheiro são:
Os aliases têm tipicamente endereços do tipo:
Isto funciona porque os protocolos TCP/IP definem portas de software para os vários serviços disponíveis. O software cliente que efectua o pedido também especifica um número de porta. O software que estiver à escuta dessa porta é que responde ao pedido. Por exemplo, o standard aceite para servidores e browsers WWW é a porta 80.
Tenha em atenção que o serviço de nome domínio para os servidores de correio electrónico necessita de um passo extra, que corresponde ao registo MX.
Eis um exemplo de utilização:
Aqui demonstra-se como o computador
Um simples inquérito solicitando o endereço IP correspondente ao computador
Um dado computador pode possuir diversos nomes DNS. Um destes é o nome canónico (canonical name) ou de referência. Este inquérito revelou que
Um inquérito relativo ao mail exchanger, desta vez relativo ao domínio
Um inquérito HINFO, que só é útil se o administrador de domínios DNS tem o trabalho de criar os registos relevantes e de os manter actualizados.
Um inquérito PTR, que demonstra a resolução inversa (inverse ou reverse). Repare na forma algo esquisita de introdução do inquérito, o que acontece parcialmente devido ao facto dos endereços IP possuirem a parte mais significativa no lado esquerdo enquanto os endereços DNS possuem-na no lado direito do endereço.
Repare que no exemplo que se segue o utilizador foi cuidadoso na inclusão do ponto no fim do nome do domínio, impedindo assim o
O inquérito NS também pode ser útil para identificar o servidor para uma reverse zone como pode ser visto no exemplo que se segue, que é uma tentativa para identificar a os servidores de nomes da reverse zone para as suas redes da Classe C com endereços
Existiram várias tentativas para criar hierarquias alternativas, mas a mais bem sucedida é a Alternic.
Para utilizar o serviço DNS da Alternic necessita de saber o endereço dos respectivos servidores root, um dos quais é o
Um servidor normal de nomes apenas pode lidar com endereços Alternic se eles já se encontrarem na respectiva cache. A maior parte das implementações DNS que possuem uma lista de root servers consultam-nas em ordem aleatória ou consultam de uma forma consistente a primeira da lista. Incluir um dos servidores Alternic na lista de root servers não permite uma resolução consistente de endereços em ambas as hierarquias.
/etc/svc.conf
/etc/resolv.conf
Nome do domínio
Endereço IP de pelo menos um servidor de nomes
O TLD (Top-Level Domain) é o mais popular com mais de 58% de todos os nomes de domínios no mundo. Por isso pode demorar algum tempo a encontrar um domínio livre no TLD .com. A base de dados whois localizada no site da InterNIC pode fornecer-lhe a informação se um determinado domínio já foi registado, e a quem é que pertence.
Poderá então querer telefonar ao "proprietário"e comprar o direito de utilizar o seu nome de domínio favorito. Ou talvez seja melhor tomar uma atitude mais sensata e escolher um nome disponível. Ou ainda processar o "proprietário" actual, dado que está a violar a sua marca registada. Como esse proprietário não possuirá muito dinheiro, pode processar a NSI por permitir a utilização de uma marca registada. Nos Estados Unidos este problema tem o nome de "contributory (trademark) infringement" e é o medo a este tipo de acções em tribunal que levou a NSI a implementar a Domain Name Dispute Policy.
Basicamente, pode registar qualquer nome de domínio. Ao fazê-lo garante que tem o direito legal de utilizar o nome em causa. Mas se alguém apresentar à NSI o registo de marca (em qualquer nação do mundo), terá um grande problema. Poderá perder o seu nome de domínio e a identidade de empresa que construiu na Internet.
Mas manterá o domínio se poder provar que registou o nome antes de:18:40 10/05/1998
b) da data efectiva do registo da marca pelo queixoso;
Se não conseguir fornecer esta prova, a NSI oferece-lhe 90 dias para alterar o seu nome de domínio. Fazemlhe a atribuição de um novo nome e mantêm ambos os nomes de domínios durante 90 dias para facilitar a transferência.
Tem 30 dias para libertar o nome de domínio ou para aceitar a oferta de um novo nome. Se recusar a oferta, ou não fizer nada, a NSI coloca o nome de domínio em disputa no estado de hold em que ninguém o pode utilizar. Este procedimento tem irritado os possuidores de nomes de domínios porque pensam que a NSI não deveria fazer nada até que recebesse uma ordem de um tribunal.
Contudo, se qualquer uma das partes envolvidas intenta uma acção contra a outra parte num tribunal competente dos Estados Unidos, a NSI não coloca o domínio em causa em hold, ou não reactiva um domínio que já esteja em hold. A NSI depositará então nas mãos do tribunal o controlo do nome de domínio, lavando assim as suas próprias mãos. O tribunal pode decidir colocar imediatamente o nome em hold, deixá-lo activo até o caso ser resolvido, ou tomar qualquer outra decisão em relação ao nome de domínio. A NSI apenas obedecerá às ordens do tribunal.
Os 239 TLDs nacionais (.pt, .ge, .uk, .fr,...) permanecerão tal como estão nas mãos das entidades dos respectivos países. O mesmo acontecerá com os domínios
Serão licenciados pela IANA novas entidades para o registo e administração dos novos iTLDs. Estas entidades terão um funcionamento semelhante ao da NSI, sendo responsáveis pela criação de nomes de domínios de segundo nível dentro dos TLD que terão disponíveis, e poderão cobrar a quantia que bem lhes apetecer. Cada entidade só poderá gerir no máximo 3 novos TLDs. A intenção deste sistema é semelhante ao licenciamento de estações de rádio em alguns países. Cada entidade recebe uma licença de 5 anos que poderá ser renovada pela IANA segundo determinados critérios.
Os servidores de registros DNS aprovados passariam a ser os servidores DNS autoritários de topo para os TLDs que essas entidades administram. Os nomes desse servidores TLD e respectivos endereços IP seriam adicionados às bases de dados DNS dos root servers. Isso permitiria que os nomes dos domínios destas novas entidades ficassem disponíveis para todos os servidores DNS do mundo.
Por exemplo, a entidade americana é o The US Domain Registry localizado no Information Sciences Institute da University of Southern California (USC-ISI) em Marina del Rey, California, e está debaixo da autoridade da IANA.
Qualquer computador fisicamente localizado nos Estados Unidos pode ser registado no domínio
O domínio
A organização do DNS
O Domain Name System utiliza um esquema de nomes hierárquico conhecido como nomes de domínios (domain names), que é semelhante à árvore do filesystem do UNIX. A raíz (root) da árvore do DNS é um nó especial com uma identificação nula (null label). O nome de domínio de qualquer nó na árvore é a lista de identificadores (labels), começando nesse nó, em direcção à raíz, utilizando um sinal '.' para separar os identificadores. Secções individuais de um nome podem representar sites ou um grupo, mas o sistema de domínios chama a cada secção um identificador.fe.up.pt
contém três identificadores: fe
, up
, e pt
. Qualquer sufixo de um identificador num nome de domínio também se chama domínio. No exemplo acima, o identificador de domínio de mais baixo nível é fe.up.pt
(o nome de domínio para a Faculdade de Engenharia da Universidade do Porto em Portugal), o domínio de segundo nível é up.pt
(o nome de domínio para a Universidade do Porto em Portugal), e o domínio de topo é pt
(o nome de domínio para Portugal). O nó pt
é um nó de segundo nível, já que está imediatamente abaixo da raíz.
Os 7 domínios genéricos são:arpa
é um domínio especial utilizado para mapeamento inverso, isto é, tendo o endereço numérico, obter o nome de domínio;
Nome de domínio
Significado
COM
Organizações comerciais
EDU
Instituições educacionais
GOV
Instituições governamentais
MIL
Grupos/instituições militares
NET
Centros de suporte das redes principais. Relacionadas com redes??
ORG
Outras organizações
INT
Organizações internacionais
uk
utilizado pelo Reino Unido (United Kingdom) em vez de gb
, embora existam alguns sites .gb
. Isto aconteceu aparentemente devido ao facto do comité ISO não ter a percepção de que a Irlanda do Norte fazia parte do Reino Unido mas não da Grã-Bretanha. O código us
é utilizado por alguns sites nos Estados Unidos.ac.uk
, co.uk
e sch.uk
no Reino Unido e edu.au
e com.au
na Austrália. A maior parte dos países Europeus não adoptou esta prática. Informação sobre os domínios DNS do Reino Unido encontra-se no UK Network Information Centre.riff.fe.up.pt
é o FQDN (Fully Qualified Domain Name) para o computador riff
no domínio fe.up.pt
. Correctamente, deveria existir um sinal '.' no fim de um FQDN mas isso é ignorado a maior parte das vezes. Um endereço relativo contém apenas o nome do computador e pode ser convertido num FQDN acrescentando a informação local de domínio.Zonas
Os computadores e organizações que estejam pendurados no mesmo nó da árvore do DNS partilham uma parte do nome dos respectivos domínios. Por exemplo, todos os computadores e Faculdades existentes na Universidade do Porto utilizam o domínio up.pt
. Pode-se então definir uma zona para essa subárvore do DNS que pode ser um domínio nacional de topo (TLND - Top Level National Domain) ou o departamento de uma universidade.pt
, que é a FCCN, a responsabilidade da administração do domínio up.pt
foi delegada à Universidade do Porto.Servidores primários e secundários
A pessoa responsável pela zona tem de disponibilizar um servidor primário para essa zona e um ou mais servidores secundários. A grande diferença entre estes dois tipos de servidores é que um servidor primário carrega toda a informação da zona em causa a partir de ficheiros (base de dados) existentes em disco, enquanto os servidores secundários obtêm toda a informação a partir do servidor primário. Quando um servidor secundário obtém a informação do primário respectivo, essa operação tem o nome de zone transfer.Como funciona o DNS
Os root servers
Quando qualquer processo (aplicação) necessita de determinar um endereço IP a partir de um nome de um endereço DNS solicita esse serviço ao host local, o que pode ser feito de várias formas:
Para um processo de utilizador ou de uma aplicação o serviço de tradução de endereços é fornecido pelo computador local ou por um computador remoto através da Internet. O servidor DNS (ou resolver) pode comunicar com outros servidores DNS se não conseguir efectuar a tradução do endereço. O sistema de nomes de domínios e o intercâmbio de mensagens entre servidores está definido nos RFCs 1034 e 1035./etc/hosts
. Este procedimento só é utilizado quando não existe configurado na rede um servidor DNS.named
, que inicialmente obtém informação do ficheiro /etc/hosts
mas também mantém uma cache de pedidos recentes./etc/resolv.conf
./etc/resolv.conf
.
Endereço DNS
Endereço IP
Endereço DNS antigo
a.root-servers.net
198.41.0.4
ns.internic.net
b.root-servers.net
128.9.0.107
ns1.isi.edu
c.root-servers.net
192.33.4.12
c.psi.net
d.root-servers.net
128.8.10.90
terp.umd.edu
e.root-servers.net
192.203.230.10
ns.nasa.gov
f.root-servers.net
192.5.5.241
ns.isc.org
g.root-servers.net
192.112.36.4
ns.nic.ddn.mil
h.root-servers.net
128.63.2.53
aos.arl.army.mil
i.root-servers.net
192.36.148.17
nic.nordu.net
j.root-servers.net
198.41.0.10
k.root-servers.net
193.0.14.129
l.root-servers.net
198.32.64.12
m.root-servers.net
202.12.27.33
m.root-servers.net
que está no Japão e o k.root-servers.net
que está em Inglaterra no LINX (London Internet Exchange).
Os root servers sabem o endereço IP dos servidores de todas as zonas nacionais de DNS e das zonas de três letras (domínios genéricos).rs.internic.net
no directório /domain/named.root
.Como é processado um inquérito
O sistema acede ao DNS através de um resolver. O resolver recebe o nome de um computador e devolve o endereço IP, ou recebe um endereço IP e devolve o nome do computador:up.pt
) e os endereços IP dos respectivos servidores de DNS. Passa então o inquérito para o endereço IP do servidor DNS de sub-domínio que deverá conter dados DNS authoritative para esse sub-domínio. O inquérito pode percorrer a hierarquia DNS através de vários sub-domínios e correspondentes servidores DNS.www.fe.up.pt
. Devolve então o endereço IP solicitado ao cliente.Caching do DNS
Uma característica fundamental do DNS é o caching. Isto é, quando um servidor de nomes recebe informação ácerca de um mapeamento de um computador, faz o caching dessa informação. Então, um inquérito posterior relativo a esse mapeamento pode utilizar o resultado cached, evitando assim inquéritos adicionais a outros servidores. O DNS utiliza o caching para optimizar o custo da pesquisa.
Dado que a informação àcerca de um determinado nome pode ser alterada, um servidor pode possuir informação incorrecta na sua tabela de caching. Utiliza-se então o valor Time to Live (TTL) para decidir quando é que a informação não pode ser mais considerada como válida. Quando um servidor com autoridade responde a um pedido, inclui na resposta um valor TTL que especifica quanto tempo é que garante que o binding permanecerá.Diferença entre nomes de domínios e nomes de computadores
O nome de domínio é o nome que regista para a sua organização. Tem uma função semelhante ao apelido do nome de uma pessoa. Exemplo de nomes de domínios são:
telepac.pt
apple.com
columbia.lib.mo.us
fe.up.pt
centroatl.pt
green.apple.com
emerald.columbia.lib.mo.us
riff.fe.up.pt
Normas para a criação de nomes de computadores
Os nomes dos computadores estão sujeitos a regras de decência e correcção. Por isso é recomendada a leitura do RFC 1178 (Choosing a Name for Your Computer).
rosa
. A combinação com o seu nome de domínio cria um nome de computador único no mundo;
Tahiti
senão se encontrar no Tahiti;
Aliases
Os nomes dos computadores que fornecem serviços aos utilizadores da Internet utilizam frequentemente nomes alternativos (alias). Por exemplo, suponha que pretende criar um servidor World Wide Web num computador com o nome aqua.wcr3.k12.mo.us
. Embora não seja necessário, é vulgar identificar um servidor Web com a designação www
. Seria então criado um alias no servidor de nomes de domínios respectivo de forma a redireccionar para o endereço aqua.wcr3.k12.mo.us
todos os pedidos efectuados ao endereço www.wcr3.k12.mo.us
. Poderia então publicitar o seu endereço Web como
http://www.wcr3.k12.mo.us/
. Tenha em atenção que ainda poderia utilizar o endereço aqua.wcr3.k12.mo.us
para aceder ao servidor Web.
irc.telepac.pt
gopher.apple.com
ftp.wcr3.k12.mo.us
mail.columbia.lib.mo.us
www.fe.up.pt
www.wcr3.k12.mo.us
, ftp.wcr3.k12.mo.us
e mail.wcr3.k12.mo.us
apontariam todos para o computador aqua.wcr3.k12.mo.us
.Interface com o utilizador - nslookup
Em sistemas UNIX a interface do utilizador com o DNS é o programa nslookup
(localizado normalmente em /usr/sbin
) que permite questionar servidores de nomes. Este programa pode ser utilizado para executar praticamente qualquer função do DNS e apresentar os resultados ao utilizador.
$ nslookup
Default Server: scitsc.wlv.ac.uk
Address: 134.220.4.1
> set q=A
> ccub.wlv.ac.uk.
Server: scitsc.wlv.ac.uk
Address: 134.220.4.1
Name: ccub.wlv.ac.uk
Address: 134.220.1.20
> set q=CNAME
> www.wlv.ac.uk.
Server: scitsc.wlv.ac.uk
Address: 134.220.4.1
www.wlv.ac.uk canonical name = ccuf.wlv.ac.uk
> set q=MX
> wlv.ac.uk.
Server: scitsc.wlv.ac.uk
Address: 134.220.4.1
wlv.ac.uk preference = 1, mail exchanger = wlv.ac.uk
wlv.ac.uk inet address = 134.220.1.12
> set q=HINFO
> ccub.wlv.ac.uk.
Server: scitsc.wlv.ac.uk
Address: 134.220.4.1
ccub.wlv.ac.uk CPU=SUN 690MP OS=Solaris 2.4
> set q=PTR
> 12.1.220.134.in-addr.arpa
Server: scitsc.wlv.ac.uk
Address: 134.220.4.1
12.1.220.134.in-addr.arpa host name = ccug.wlv.ac.uk
scitsc
fornece serviços de DNS, tendo sido executados diversos inquéritos. O tipo de inquérito pretendido é definido pelo comando set q=
:
ccub.wlv.ac.uk
.www.wlv.ac.uk
é na realidade o computador ccuf.wlv.ac.uk
.wlv.ac.uk
que revela que o correio enviado para os endereços do tipo [email protected]
, são na realidade enviados para o endereço 134.220.1.12
ou seja ccug.wlv.ac.uk
(ver abaixo).Explorar uma zona
O programa nslookup
pode ser utilizado para obter uma lista de todos os computadores existentes numa zona. Para o fazer é em primeiro lugar necessário identificar o servidor de nomes (name server) da zona, o que é feito através de um inquérito NS. Configura-se o parâmetro servidor para um dos servidores de nomes identificados e depois utiliza-se o comando ls
.nslookup
de acrescentar por omissão o nome de domínio local. ( scit.wlv.ac.uk
). Para domínios muito grandes (com um grande número de computadores) o comando ls
possui uma opção para escrever os resultados num ficheiro.
$ /usr/sbin/nslookup
Default Server: sunc.scit.wlv.ac.uk
Address: 134.220.4.1
> set q=NS
> bilston.ac.uk.
Server: sunc.scit.wlv.ac.uk
Address: 134.220.4.1
Non-authoritative answer:
bilston.ac.uk nameserver = unad1.wlv.ac.uk
bilston.ac.uk nameserver = ccua.wlv.ac.uk
bilston.ac.uk nameserver = ccub.wlv.ac.uk
Authoritative answers can be found from:
unad1.wlv.ac.uk internet address = 134.220.192.26
ccua.wlv.ac.uk internet address = 134.220.1.39
ccub.wlv.ac.uk internet address = 134.220.1.20
> server ccub.wlv.ac.uk
Default Server: ccub.wlv.ac.uk
Address: 134.220.1.20
> ls bilston.ac.uk.
[ccub.wlv.ac.uk]
bilston.ac.uk. server = ccub.wlv.ac.uk
bilston.ac.uk. server = unad1.wlv.ac.uk
bilston.ac.uk. server = ccua.wlv.ac.uk
gw 194.62.148.1
novix1 195.188.205.2
www 194.62.148.4
fc 194.62.148.5
student1 195.18.205.3
bilston.ac.uk
. De uma forma surpreendente aparecem na listagem endereços pertencentes a 3 classes C diferentes. Isto aconteceu porque a empresa estava no processo de alterar os endereços para duas das redes, sendo a terceira (195.18.205
) aparentemente um erro tipográfico relativo ao endereço 195.188.205
.195.188.0.0
.
> 188.195.in-addr.arpa
Server: sunc.scit.wlv.ac.uk
Address: 134.220.4.1
Non-authoritative answer:
188.195.in-addr.arpa nameserver = ns2.cableinet.net
188.195.in-addr.arpa nameserver = ns.cableinet.net
Authoritative answers can be found from:
ns2.cableinet.net internet address = 194.117.157.4
ns.cableinet.net internet address = 193.38.113.3
Hierarquias DNS alternativas
Com a rápida comercialização da Internet, apareceram disputas relacionadas com nomes DNS e por isso foram feitas sugestões para a criação de mais domínios de topo (TLD - Top-Level Domains). A raíz (root) da actual hierarquia DNS é mantida pelo Network Information Center sob contracto do governo dos Estados Unidos da América.mx.alternic.net
. Vejamos um exemplo de como funciona para obter informação sobre o endereço www.alternic.nic
:
$ /usr/sbin/nslookup
Default Server: sunc.scit.wlv.ac.uk
Address: 134.220.4.1
> server mx.alternic.net
Default Server: mx.alternic.net
Address: 206.191.128.47
> www.alternic.nic.
Server: mx.alternic.net
Address: 206.191.128.47
Name: www.alternic.nic
Address: 206.191.128.47
jpn
para Japão e ger
para a Alemanha) e possui um grande número de domínios de topo orientados para as empresas comerciais. Nesta altura os únicos domínios com empresas em número significativo são porno
e xxx
.Configuração de servidores DNS
Vamos agora ver a configuração dos ficheiros relativos a um servidor DNS (BIND - Berkeley Internet Name Domain) num computador UNIX:
named.boot
startup
named.local
loopback
named.ca
cache
hosts.db
ficheiro de hosts
rev.193.136.38
reverse address
rev.193.136.29
reverse address
/etc/svc.conf
hosts=local,bind
/etc/resolv.conf
Exemplo de um ficheiro resolv.conf
.
;
domain fe.up.pt
nameserver 193.136.28.17
Named.boot
Tipo de servidor, Zona, dados
;
; BIND data file to boot a primary name server.
; directory where all the data files are stored
directory /var/dns
domain fe.up.pt
; type domain source host/file
primary fe.up.pt hosts.db
;
primary 0.0.127.in-addr.arpa named.local
primary 28.136.193.in-addr.arpa rev.193.136.38
primary 28.136.193.in-addr.arpa rev.193.136.29
Named.local
Local Host address, Start of Authority (SOA)
@ IN SOA obelix.fe.up.pt. cnet.obelix.fe.up.pt. (
19971101 ; Serial
28800 ; Refresh
7200 ; Retry
604800 ; Expire
86400 ) ; Minimum
IN NS obelix.fe.up.pt.
IN NS korky.fe.up.pt.
1 IN PTR localhost.
localhost. IN A 127.0.0.1
Named.ca
Top domain name servers
999999 IN NS ciup1.ncc.up.pt.; closest
999999 IN NS terp.umd.edu.
999999 IN NS ns.nic.ddn.mil.
; Prep the cache (hotwire the addresses). Order does not matter
;
ciup1.ncc.up.pt. 999999 IN A 193.136.51.52
terp.umd.edu. 999999 IN A 128.8.10.90
ns.nic.ddn.mil. 999999 IN A 192.112.36.4
Hosts.db
$ORIGIN fe.up.pt.
@ IN SOA obelix.fe.up.pt. cnet.obelix.fe.up.pt. (
19971106; Serial
28800 ; Refresh depois de 8 horas
7200 ; Retry depois de 2 horas
604800 ; Expire depois de 1 semana
86400 ) ; Minimum TTL de 1 dia
; Name servers
fe.up.pt. IN NS obelix.fe.up.pt. ; Mail exchangers
; Mail Exchangers
fe.up.pt. IN MX 10 garfield.fe.up.pt.
spirou IN A 193.136.38.38
IN HINFO Pentium W95
Hosts.rev
; Data file for reverse address to hostname.
;
38.136.193.in-addr.arpa. IN SOA obelix.fe.up.pt. cnet.obelix.fe.up.pt. (
19971106; Serial
28800 ; Refresh
7200 ; Retry
604800 ; Expires
86400 ) ; Minimum
38.136.193.in-addr.arpa. IN NS obelix.fe.up.pt.
38.38.136.193.in-addr.arpa. IN PTR spirou.fe.up.pt.
RFCs
(882, 883, 1101, 1183)
O sistema actual de registos de nomes de domínios
Cerca de 69% dos registos dos nomes de domínios são realizados através da Network Solutions, Inc de Herndon, Virginia. Isto pode ser uma surpresa para muita gente que pensava que a NSI possuía o monopólio do registo de nomes de domínios. Na realidade, a NSI apenas é responsável de cinco domínios de topo: .com, .net, .org, .edu e .gov.sonae.com
o acusado teria de provar que era o detentor da marca sonae
. O registo da marca tem de ser anterior à acção em tribunal do queixoso.O novo sistema
O novo sistema prevê a criação de até 150 novos iTLD (International Top-Level Domains) ao longo dos próximos 5 anos. Actualmente existem três iTLDs (.com, .net e .org) delegados pela IANA ao InterNIC..mil
e .gov
pertencentes ao governo americano e com os domínios .edu
e .int
.Entidades registadoras nacionais
Tal como foi mencionado anteriormente, existem 239 entidades registadoras nacionais. A cada uma é atribuído um TLD baseado nos códigos de países de dois caracteres definidos pelo documento ISO-3166 da International Standards Organization. Estes registos são completamente diferentes dos da InterNIC, não sendo administrados pelo NSI mas pelas organizações certificadas por cada país. Cada uma dessas entidades tem as suas próprias políticas de registo de nomes de domínios. A maior parte delas requer que a entidade que se candidata a um nome de domínio esteja baseada no país em causa ou que pelo menos lá tenha alguma presença física..us
. Alguns computadores localizados no estrangeiro podem ser registados nesse domínio se estiverem a ser utilizados em conjunto com projectos americanos. Não é cobrada nenhuma quantia pelo registo de domínios..us
utiliza uma arquitectura hierárquica domínio/sub-domínio baseada na localização geográfica, e que incorpora a cidade e o estado. Um exemplo é boardwatch.newark.ny.us
.
© Maio 1998, Pedro Remoaldo.