Entendendo TCP/IP (Parte 3) - Resolução de nomes

Neste terceiro artigo sobre TCP/IP, vou descrever o processo de resolução de nomes. Mostrarei como configurar
o cliente DNS, bem como a diferença entre nomes Netbios e DNS. Após entendidos os conceitos, passarei a falar
sobre o DNS Server, desde o registro um domínio na Fapesp até a configurações do Bind9, passando pelas
zonas de transferência e questões de segurança.

[ Hits: 39.118 ]

Por: Ricardo Lino Olonca em 07/05/2011


Introdução ao conceito de resolução de nomes



Como vimos em meu segundo artigo, a comunicação através de uma rede TCP/IP, como a Internet, é feita através dos endereços IP.

No começo da Internet, no início dos anos 70, era relativamente fácil decorar a dúzia de endereços IP usados na rede. Mas a medida que esta foi crescendo, isso se tornou impraticável. Foi necessário criar uma forma de associar os IP a algo mais fácil de decorar. A idéia inicial foi criar um arquivo que tivesse todos os ips usados na rede associados a um nome. Este arquivo era então replicado entre as máquinas da Internet. É mais fácil decorar um nome, como por exemplo www.vivaolinux.com.br, do que o seu IP, 174.123.53.162. Este arquivo é o /etc/hosts.

O arquivo /etc/hosts contém uma estrutura bem simples. Do lado esquerdo estão os IPs, e do lado direito os nomes, como no exemplo abaixo.

# cat /etc/hosts

172.20.16.60 olonca
127.0.0.1 localhost.localdomain localhost
127.0.1.1 olonca
172.20.1.14 intranet.minhaempresa.com.br

Você pode editar esse arquivo como quiser. Por exemplo, adicionando-se no arquivo /etc/hosts a linha abaixo:

174.123.53.162 vivaolinux www.olinuxeomaximo.com.br

Fará com que o IP do site www.vivaolinux.com.br responda pelo nomes vivaolinux e www.olinuxeomaximo.com.br.

# ping -c 1 vivaolinux

Resposta:

PING vivaolinux (174.123.53.162) 56(84) bytes of data.
64 bytes from vivaolinux (174.123.53.162): icmp_req=1 ttl=49 time=151 ms

--- vivaolinux ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 151.889/151.889/151.889/0.000 ms

# ping -c 1 www.olinuxeomaximo.com.br

Resposta:

PING www.olinuxeomaximo.com.br (174.123.53.162) 56(84) bytes of data.
64 bytes from vivaolinux (174.123.53.162): icmp_req=1 ttl=49 time=151 ms

--- www.olinuxeomaximo.com.br ping statistics ---
rtt min/avg/max/mdev = 151.976/151.976/151.976/0.000 ms

Com o passar o tempo, o arquivo hosts ficou grande demais. Ficou inviável replicá-lo para todas as máquinas a todo instante. Se esse esquema tivesse permanecido, em 2008 o arquivo hosts teria mais de 150.000.00 de linhas, segundo o Netcrafft.

Foi necessário criar um novo mecanismo de resolução de nomes e em novembro de 1987 foram criadas as especificações do Domain Name System (DNS) através da RFC 1035.

Vamos ver como o DNS funciona.
    Próxima página

Páginas do artigo
   1. Introdução ao conceito de resolução de nomes
   2. Funcionamento do DNS
   3. Comandos úteis
   4. Nomes Netbios X nomes DNS
   5. Considerações finais
Outros artigos deste autor

Entendendo o TCP/IP

Deduplicação com LessFS

MooseFS - Sistema de arquivos distribuído

Problemas encontrados na adoção do IPv6

Entendendo TCP/IP (parte 4) - DHCP

Leitura recomendada

Flash 9 com som OSS

FreeBSD + Asterisk

Interoperabilidade monitorando servidores e estações Windows com servidor Linux usando MRTG

Estudo comparativo de alguns gerenciadores e aceleradores de download

Ligando, conectando e desligando automaticamente com o Kurumin

  
Comentários
[1] Comentário enviado por julio_hoffimann em 07/05/2011 - 18:51h

Oi Ricardo, parabéns!

É muita informação! Obrigado por explicar de maneira didática todos esses conceitos. A série como um todo já está nos meus favoritos. ;-)

Abraço!

[2] Comentário enviado por embura em 28/02/2012 - 13:38h

para usar esses comandos no fedora precisa do pacote bind-utils.

[3] Comentário enviado por sk4d1nh4 em 04/06/2013 - 11:07h

Só uma observação...
Configuramos dois ou mais servidores DNS para consulta para o caso de indisponibilidade de um o outro ser consultado.
O texto informa que se o primeiro nao conseguir resolver o nome ele passa para o segundo e nao funciona bem assim. O segundo servidor só é consultado se o primeiro não estiver disponível. Mas se o primeiro já responder que não conseguiu resolver o nome o erro já é retornado para o sistema operacional.

[4] Comentário enviado por ricardoolonca em 06/06/2013 - 10:17h

Você está correto, sk4d1nh4. É isso mesmo. Um segundo dns só será usado se o primeiro não responder. Se o primeiro responder mas não conseguir resolver o nome, o segundo dns não será usado e uma mensagem de erro será exibida.

Obrigado pela correção.


[5] Comentário enviado por eabreu em 20/02/2017 - 00:17h

Olá Ricardo.

Apenas uma informação para somar com o conteúdo. você escreveu no artigo que o Linux só consegue fazer até o passo 4 descrito na paǵina 4. Mas se for configurado, ele pode sim fazer os outros passos até a resolução de nomes NetBIOS utilizando o servidor Wins.

Basta configurar o arquivo /etc/nsswitch.conf e incluir uma nova base de dados que será consultada para resolução de nomes, nesse caso o WINS. é lógico que deve existir um servidor wins e o servidor linux deve ter o samba configurado e instalado, além do winbind instalado.

[6] Comentário enviado por ricardoolonca em 20/02/2017 - 10:00h


[5] Comentário enviado por eabreu em 20/02/2017 - 00:17h

Olá Ricardo.

Apenas uma informação para somar com o conteúdo. você escreveu no artigo que o Linux só consegue fazer até o passo 4 descrito na paǵina 4. Mas se for configurado, ele pode sim fazer os outros passos até a resolução de nomes NetBIOS utilizando o servidor Wins.

Basta configurar o arquivo /etc/nsswitch.conf e incluir uma nova base de dados que será consultada para resolução de nomes, nesse caso o WINS. é lógico que deve existir um servidor wins e o servidor linux deve ter o samba configurado e instalado, além do winbind instalado.


Correto. Obrigado pela informação, eabreu. É que geralmente isso não vem configurado por padrão.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts