1 / 24

Redes de Computadores III

Faculdade de Tecnologia SENAC Pelotas/RS Curso Superior de Tecnologia em Redes de Computadores. Redes de Computadores III. DNS ( Domain Naming System ) Professor Eduardo Maroñas Monks. SUMÁRIO. Histórico Objetivos Componentes Funcionalidades Protocolo Aplicações Segurança

zarek
Download Presentation

Redes de Computadores III

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Faculdade de Tecnologia SENAC Pelotas/RS Curso Superior de Tecnologia em Redes de Computadores Redes de Computadores III DNS (Domain Naming System) Professor Eduardo Maroñas Monks

  2. SUMÁRIO • Histórico • Objetivos • Componentes • Funcionalidades • Protocolo • Aplicações • Segurança • Referências Bibliográficas Prof. Eduardo M. Monks - Redes de Computadores III 2

  3. Histórico • No início da ARPANET, começou a ser necessária uma forma mais fácil de encontrar os hosts do que endereços numéricos • Foi criado um arquivo com o nome de HOSTS.TXT que continha o mapeamento entre endereços e nomes • Este arquivo era mantido pelo SRI’s NIC (Stanford-Research-Institute: Network-Information-Center) • Os administradores enviavam as mudanças de endereços e nomes para o SRI NIC • O SRI NIC atualiza periodicamente o arquivo HOSTS.TXT • Os administradores de rede faziam o download por FTP do arquivo HOSTS.TXT Prof. Eduardo M. Monks - Redes de Computadores III 3

  4. Histórico • Com o aumento no número de hosts, o arquivos HOSTS.TXT começou a apresentas problemas: • Escalabilidade (tráfego e carga no repositório) • Colisões de nomes • Inconsistência do arquivo • Em 1984, Paul Mockapetris disponibilizou as primeiras RFCs (882 e 883) do DNS • As RFCs 1034 e 1035 foram as sucessoras e as melhorias continuam… • A motivação inicial foi a organização do serviço de e-mail • Dificuldade para encontrar a caixa postal a qual entregar o e-mail • O primeiro domínio no DNS foi isi.edu (Information Sciences Institute) Entrevista com Paul Mockapetris - http://www.youtube.com/watch?v=VLahF1zwAog Prof. Eduardo M. Monks - Redes de Computadores III 4

  5. Objetivos • DNS (Domain Name System) • Sistema de gerenciamento de nomes hierárquico e distribuído • Protocolo de camada de aplicação • Baseado em cliente/servidor • Cliente solicita ao servidor de nomes a resolução de nome para endereço • Complexidade na “borda” da rede • Funcionalidades • Nomes canônicos e alias (apelidos) • Definição de servidor de e-mail por domínio • Distribuição de carga (WWW, DNS) Prof. Eduardo M. Monks - Redes de Computadores III 5

  6. Componentes • Servidores Raiz • São contatados pelos servidores de nomes locais que não podem resolver um nome • Servidores de nomes raiz: • Buscam servidores de nomes autorizados se o mapeamento do nome não for conhecido • Conseguem o mapeamento • Retornam o mapeamento para o servidor de nomes local Haviam 13 servidores de nomes raiz no mundo, mas devido a ataques de DDOS… Prof. Eduardo M. Monks - Redes de Computadores III 6

  7. Componentes • Servidores top-level domain (TLD): • Responsáveis pelos domínios com, org, net, edu etc. e todos os domínios top-level nacionais (ccTLD – Country Code TLD): br, ar, uk, fr, ca, jp... • Network Solutions mantém servidores para o TLD “com” TLD • Educause para o TLD “edu” • No Brasil, é Comitê Gestor da Internet no Brasil, a parte operacional é no Registro.br (http://registro.br) • Servidores DNS autorizados • Servidores DNS de organizações, provêem mapeamento de nomes para endereços de forma autorizada no domínio da organização (ex.: Web e mail). • Podem ser mantidos por uma organização ou provedor de serviços Lista de TLDs no Brasil -http://registro.br/dominio/dpn.html ccTLD (IANA) - http://www.iana.org/domains/root/db/ Prof. Eduardo M. Monks - Redes de Computadores III 7

  8. Componentes • Servidor de nomes local • Não pertence estritamente a uma hierarquia • Cada ISP (ISP residencial, companhia, universidade) possui um • Também chamado de “servidor de nomes default” • Quando um host faz uma pergunta a um DNS, a pergunta é enviada para seu servidor DNS local • Funciona como um proxy, encaminhando as perguntas para dentro da hierarquia de servidores Prof. Eduardo M. Monks - Redes de Computadores III 8

  9. Funcionalidades • Cliente quer o IP do domínio www.amazon.com: • Cliente consulta o servidor local de DNS; Se estiver no cache responde localmente; • Caso contrário, o Cliente ou o Servidor local, consulta os servidores raiz para encontrar o servidor DNS responsável pelos domínios .com • Cliente ou Servidor Local consulta o servidor DNS .com para obter o servidor de DNS autoritário para amazon.com • Cliente ou Servidor Local consulta o servidor de DNS amazon.com para obter o endereço IP de www.amazon.com • Cliente e Servidor Local armazenam em cache o resultado da consulta Prof. Eduardo M. Monks - Redes de Computadores III 9

  10. Funcionalidades • O hospedeiro em cis.poly.edu quer o endereço IP para gaia.cs.umass.edu Prof. Eduardo M. Monks - Redes de Computadores III 10

  11. Funcionalidades • Consulta recursiva: • Transfere a tarefa de resolução do nome para o servidor de nomes consultado • Carga pesada? • Consulta encadeada: • Servidor contatado responde com o nome de outro servidor de nomes para contato • “Eu não sei isto, mas pergunte a este servidor” Prof. Eduardo M. Monks - Redes de Computadores III 11

  12. Funcionalidades • Cache • Uma vez que um servidor de nomes apreende um mapeamento, ele armazena o mapeamento num registro do tipo cache • Registros do cache tornam-se obsoletos (desaparecem) depois de um certo tempo • Servidores TLD são tipicamente armazenados em cache nos servidores de nome locais • Mecanismos de atualização e notificação estão sendo projetados pelo IETF • RFC 2136 • http://www.ietf.org/html.charters/dnsind-charter.html Prof. Eduardo M. Monks - Redes de Computadores III 12

  13. Funcionalidades • Tipos de registros • base de dados distribuída que armazena registros de recursos (RR) • formato dos RR: (name, value, type, ttl)  Type = A  name é o nome do computador  value é o endereço IP  Type = CNAME  name é um “apelido” para algum nome “canônico” (o nome real) www.ibm.com é realmente servereast.backup2.ibm.com  value é o nome canônico  Type = NS  name é um domínio (ex.: foo.com)  value é o endereço IP do servidor de nomes autorizados para este domínio  Type = MX  value é o nome do servidor de correio associado com name Prof. Eduardo M. Monks - Redes de Computadores III 13

  14. Protocolo • Protocolo DNS: mensagem de consulta e resposta, ambas com o mesmo formato de mensagem • Cabeçalho da mensagem • Identificação: número de 16 bits para consulta, resposta usa o mesmo número • Flags: • Consulta ou resposta • Recursão desejada • Recursão disponível • Resposta é autorizada Prof. Eduardo M. Monks - Redes de Computadores III 14

  15. Protocolo • Exemplo: empresa recém-criada “Network Utopia” • Registrar o nome networkutopia.com num “registrar” (ex.: Network Solutions) • É necessário fornecer ao registrar os nomes e endereços IP do seu servidor nomes autorizados (primário e secundário) • Registrar insere dois RRs no servidor TLD do domínio com: • (networkutopia.com, dns1.networkutopia.com, NS) • (dns1.networkutopia.com, 212.212.212.1, A) • No servidor autorizado, inserir um registro Tipo A para www.networkutopia.com e um registro Tipo MX para networkutopia.com Prof. Eduardo M. Monks - Redes de Computadores III 15

  16. Protocolo • Programa do usuário solicita endereço IP para um nome de domínio; • Módulo tradutor (resolver) no host ou ISP local formula consulta para servidor de nomes local (mesmo domínio do tradutor); • Servidor de nomes local verifica banco de dados/cache local; • se encontrado, retorna endereço IP ao solicitante; • se não encontrado, consulta outros servidores de nomes disponíveis, começando pela raiz da árvore do DNS ou o mais alto possível na árvore; • Quando a resposta é recebida, o servidor de nomes local armazena o mapeamento nome/endereço no cache local; • Programa do usuário recebe endereço IP ou mensagem de erro. Prof. Eduardo M. Monks - Redes de Computadores III 16

  17. Protocolo • Consulta começa com tradutor de nomes localizado no sistema host do usuário • Se o nome solicitado não estiver no cache, é enviada uma consulta ao servidor de DNS local • retorna um endereço imediatamente, ou • retorna endereço após consultar outros servidores • Dois tipos de consultas possíveis • Recursiva • Iterativa Prof. Eduardo M. Monks - Redes de Computadores III 17

  18. Protocolo • Busca recursiva para obter a resolução do nome gaia.cs.umass.edu Servidor de Nome Raiz 3 2 4 5 Servidor de nomes autoritário (Authoritative) dns.umass.edu Servidor de nomes local dns.eurocom.fr 1 6 gaia.cs.umass.edu Host requisitante surf.eurecom.fr Prof. Eduardo M. Monks - Redes de Computadores III 18

  19. Protocolo • Busca recursiva com um servidor intermediário entre o servidor raiz e o servidor autoritário Servidor de Nome Raiz 3 2 Servidor de nomes intermediário dns.umass.edu 6 7 4 5 Servidor de nomes local dns.eurocom.fr Servidor de nomes autoritário (Authoritative) dns.umass.edu 1 8 Gaia.cs.umass.edu Host requisitante surf.eurecom.fr Prof. Eduardo M. Monks - Redes de Computadores III 19

  20. Protocolo • Busca recursiva com um servidor intermediário entre o servidor raiz e o servidor autoritário Servidor de Nome Raiz 3 2 Servidor de nomes intermediário dns.umass.edu 6 7 4 5 Servidor de nomes local dns.eurocom.fr Servidor de nomes autoritário (Authoritative) dns.umass.edu 1 8 Gaia.cs.umass.edu Host requisitante surf.eurecom.fr Prof. Eduardo M. Monks - Redes de Computadores III 20

  21. Exemplo de configuração • do ISC BIND Aplicações • Clientes e servidores de DNS existem para a maioria dos sistemas operacionais. • Nos sistemas operacionais, existe, pelo menos, um cliente (resolver) nativo • No Linux, a implementação mais comum é o ISC BIND para servidor • No Windows, o MS DNS Server é o mais utilizado • Atualmente, todos os modens/roteadores ADSL possuem uma implementação de servidor DNS para cache (DNS Relay) Prof. Eduardo M. Monks - Redes de Computadores III 21

  22. Aplicações • Cliente DNS (resolver) • Responsável por solicitar as consultas ao servidor • No Microsoft Windows e no Linux, o utilitário nslookup possui funcionalidades para diagnóstico do serviço de DNS • No Linux, o utilitário dig substituiu o nslookup na distribuições mais recentes Prof. Eduardo M. Monks - Redes de Computadores III 22

  23. Segurança • Problemas de segurança mais comuns ao serviço de DNS : • Ataques de negação de serviço (DOS – Denial of Service) • Clientes ficam impossibilitados de resolver nomes • Se o usuário souber o IP do host destino, poderá acessar sem problemas. Você sabe o IP do Terra de cabeça? • Envenenamento de DNS • Enganar o cache do DNS e forçar a resolução de nomes para um IP malicioso • Os usuários poderiam ser direcionados para qualquer endereço que o atacante desejasse, mesmo buscando de forma correta o domínio • Conhecida como Kaminsky Vulnerabilty (http://unixwiz.net/techtips/iguide-kaminsky-dns-vuln.html) Prof. Eduardo M. Monks - Redes de Computadores III 23

  24. Referências Bibliográficas • RFC 1034 - DOMAIN NAMES - CONCEPTS AND FACILITIES • RFC 1035 – DOMAIN NAMES - IMPLEMENTATION AND SPECIFICATION • Serviço WHOIS da ARIN - http://whois.arin.net/ui/ • Serviço WHOIS da RIPE - http://www.ripe.net/db/whois.html • Serviço WHOIS da APNIC - http://www.apnic.net/apnic-info/whois_search2 • Arquivos HOSTS.TXT antigos - http://pdp-10.trailing-edge.com/bb-ev83b-bm/01/new-system/hosts.txt.html • Servidores Raiz (IANA) - http://www.iana.org/domains/root/db/index.html • Informações e localização dos servidores raiz - http://www.root-servers.org/ • Os cinco piores incidentes de segurança no serviço DNS - http://www.securityweek.com/top-five-worst-dns-security-incidents • ALBITZ, Paul; LIU, Cricket. DNS and BIND. 4th edition, O’Reilly, 2001. Prof. Eduardo M. Monks - Redes de Computadores III 24

More Related