8.2 Domain Name System (DNS)



Documentos relacionados
Fernando M. V. Ramos, RC (LEI), TP03. DNS. Redes de Computadores

Breve introdução ao DNS Uma abordagem prática (aka crash course on DNS :))

Capítulo 5. nome. DNS ( Domain Name System ). O serviço BIND. Um dos serviços mais importantes numa rede TCP/IP é o serviço DNS.

Arquitectura de Redes

Arquitectura de Redes

Configuração de Servidores. 1. Introdução. 1. Introdução. Por Rubens Queiroz de Almeida. Data de Publicação: 14 de Março de 2007

Um dos serviços mais importantes numa rede TCP/IP é o serviço DNS. Porquê? Porque é muito mais fácil lembrar nomes do que números IP!

DNS Parte 2 - Configuração

DNS - Domain Name System

Arquitectura de Redes

UM dos protocolos de aplicação mais importantes é o DNS. Para o usuário leigo,

Servidor DNS. João Medeiros Fatern / 15

Gestão de Sistemas e Redes

Redes de Computadores II

Sistema de Distribuição de Nomes de Domínios (DNS)

Introdução às Redes e Protocolos TCP/IP Sessão nº7. Jorge Gomes jorge@lip.pt

Rafael Dantas Justo. Engenheiro de Software

Redes de Computadores e a Internet

DNS - Domain Name System

Resolução de nomes. Professor Leonardo Larback

DNS. Parte 2 - Configuração. Tópicos em Sistemas de Computação Prof. Dr. Adriano Mauro Cansian adriano@acmesecurity.org

FormaçãoIPv6-Maputo. DNS Maputo 27 de Agosto de 2008 Carlos Friaças e Pedro Lorga

DNS Ubuntu Server 14.04

Redes de Computadores


Configuração de um servidor DNS. Campus Cachoeiro Curso Técnico em Informática

Aula Prática 1. Utilitários de Rede. O utilitário ping

Curso de extensão em Administração de Serviços GNU/Linux

Redes de Computadores

Introdução ao DNS. Volnys Borges Bernal Laboratório de Sistemas Integráveis

Sistemas de Nomes Hierarquicos: DNS

Relatório do Trabalho Prático nº 1. DNS e DHCP. Documento elaborado pela equipa: Jorge Miguel Morgado Henriques Ricardo Nuno Mendão da Silva

INTRODUÇÃO ÀS REDES DE COMPUTADORES

DNS Linux. Rodrigo Gentini

Serviços de Redes. Servidor DNS (Bind) Professor: Alexssandro Cardoso Antunes

edu com org pt ibm sapo cs iscap

Configurando servidor de DNS no CentOS O Domain Name System Sistema de Nomes de Domínio é de fundamental importância em uma rede.

DNS - Domain Name System

Prof. Samuel Henrique Bucke Brito

GESTÃO DE SISTEMAS E REDES DOMAIN NAME SYSTEM

LAB06 Configuração de um servidor de DNS Aplicação nslookup. Servidor BIND.

Rafael Goulart - rafaelgou@gmail.com Curso ASLinux v.3

Universidade Católica de Brasília Pró-reitoria de Graduação Curso de Ciência da Computação

Formação IPv6 Maputo Moçambique 26 Agosto 29 Agosto 08

Agenda. Introdução ao DNS. O que é DNS? O que é DNS?

BIND Um DNS Server Completo

Redes de Computadores. Funcionamento do Protocolo DNS. Consulta DNS. Consulta DNS. Introdução. Introdução DNS. DNS Domain Name System Módulo 9

Redes de Computadores

Firewalls e DNS. Como e por que configurar corretamente. Hugo Koji Kobayashi. Registro.br. 30 de Junho de /24

GESTÃO DE SISTEMAS E REDES YNAMIC HOST CONFIGURATION PROTOCOL

Redes de Computadores

Curso de Pós Graduação em Redes de Computadores. Módulo Laboratório de Linux Apostila 2. Serviço DNS

Orientador de Curso: Rodrigo Caetano Filgueira

DNS: Domain Name System

LPI nível 2: Aula 11

Agenda. Introdução ao DNS. O que é DNS? O que é DNS? O que é DNS? Funcionamento básico

INTRODUÇÃO ÀS REDES DE COMPUTADORES

Serviço DNS no PoP-SC

Aula 3 Servidor DNS BIND

DNS: Domain Name System

Configurando DNS Server. Prof. Armando Martins de Souza

Administração de Redes 2014/15. Domain Name System (DNS)


Artigo adaptado do link:

Professor: Macêdo Firmino Disciplina: Sistemas Operacionais de Rede

Trabalho de laboratório sobre DNS

Configuração de DNS em Windows Servidor 2008

Arquitetura TCP/IP. Parte V Inicialização e auto-configuração (RARP, BOOTP e DHCP) Fabrízzio Alphonsus A. M. N. Soares

Aula-28 Camada Aplicação - DNS. Prof. Dr. S. Motoyama

Laboratório 3. Configurando o Serviço DNS

Redes - Internet. Sumário Aula 3,4 e 5 9º C } Estrutura baseada em camadas. } Endereços IP. } DNS -Domain Name System

Domain Name System. Domain Name System DNS

DNS: Domain Name System. Edgard Jamhour

Instalação e Configuração Servidor DNS

Projeto e Instalação de Servidores Servidores Linux Aula 3 - DNS

FormaçãoIPv6-RCTS. Componente Prática Parte I

Instalando e Configurando o DNS Server

Resolução de Nomes e o protocolo DNS

Linux Network Servers

SMTP, POP, IMAP, DHCP e SNMP. Professor Leonardo Larback

DNS: Domain Name System DHCP: Dynamic Host Configuration Protocol. Edgard Jamhour

Sistemas Distribuídos Aula 9

Prática DNS. Edgard Jamhour

Configuração de DNS Reverso

FUNDAÇÃO DE ESTUDOS SOCIAIS DO PARANÁ INSTITUTO DE CIÊNCIAS SOCIAIS DO PARANÁ CURSO DE BACHARELADO EM SISTEMAS DE INFORMAÇÃO DNS (DOMAIN NAME SYSTEM)

Tutorial de TCP/IP Parte 26 Criando Registros

Endereço de Rede. Comumente conhecido como endereço IP Composto de 32 bits comumente divididos em 4 bytes e exibidos em formato decimal

3º Exercício Prático: DNS

Redes de Computadores I Licenciatura em Eng. Informática e de Computadores 1 o Semestre, 26 de Outubro de o Teste A

Transcrição:

DNS 8.2 Domain Name System (DNS) 53 53 TCP UDP ICMP IP ARP Acesso à rede Instituto Superior de Engenharia de Lisboa Departamento de Engenharia, Electrónica, Telecomunicações e Computadores Redes de Computadores

Domain Name System (DNS) Objectivo Resolução de Nomes (Ex.: Conversão do nome da máquina no endereço IP) Características Base de Dados distribuída Nenhum servidor contém a informação toda Uso extensivo de Caching Diferentes tipos de Nomes (informação) Usa protocolo UDP e pode usar TCP Serviço fornecido a aplicações DNS definido nos RFC 1034 e 1035 [Mockapetris 1987] 2007/02/26 DNS 2

DNS (Domain Name System) Este sistema define : Espaço de nomes hierárquico (chaves da BD) Diferentes tipos de dados armazenados Formato do armazenamento dos dados (Resource Records) Organização da distribuição de informação (zonas) Diferentes tipos de servidores Mecanismos de replicação de informação Protocolo de comunicação (sobre UDP ou TCP) 2007/02/26 DNS 3

Espaço de nomes hierárquico DNS Representado por uma árvore cujos nós são labels Raiz da árvore é a uma label vazia Um nome completo é uma sequência de labels separadas por pontos começa com a label de um nó de último nível e percorre um ramo da árvore até chegar à raiz Características das labels máximo de 63 caracteres Case Insensitive 2007/02/26 DNS 4

Espaço de nomes unnamed root domínio de 1º nível arpa com edu gov int mil net org ae pt zw domínio de 2º nível inaddr nao United Arab Emirates ipl Zimbabwe 192 tuc net 104 sun sun.tuc.nao.edu www 48 domínios genéricos domínios de países 201 201.48.104.192.in-addr.arpa. 2007/02/26 DNS 5

Domínios de 1º nível (Top Level Domains) Domínio com edu gov mil net org arpa au, uk, ca Atribuição Comercial Educacional Governo (US) Militar (US) Internet Network Outras organizações Advanced Research Project Agency Código do país 2007/02/26 DNS 6

Estrutura de nomes do DNS Estrutura geral dos nomes Label-N Label-2 Label-1 (nome completo) Label-M Label-2 (nome incompleto) Estrutura dos nomes de máquinas Nome-Máquina Domínio-N Domínio-2 Domínio-1 Ex.: servidor1.srcd.deetc.isel.ipl.pt Estrutura dos nomes de domínios ou sub-domínios Domínio-N Domínio-2 Domínio-1 Ex.: srcd.deetc.isel.ipl.pt 2007/02/26 DNS 7

Hierarquia (árvore) de Nomes Um domínio de 1º nível único é atribuído pela Internet Authority é uma entidade que por sua vez pode atribuir sub-domínios também únicos O administrador tem controlo absoluto sobre o domínio Não há limite ao número de sub-domínios ou níveis Não tem que ser uniforme no número de sub-domínios ou níveis Os nomes não têm que estar relacionados com a localização física Em alguns casos estão (domínios dos países) 2007/02/26 DNS 8

Espaço de nomes Divisão em Zonas com xpto ypto soap dog candy peanut almond walnut cat bugs sick tiger 2007/02/26 DNS 9

Espaço de nomes Divisão em Zonas Zona - Conjunto contíguo de nós do espaço de nomes que residem num servidor (Principal) e geridos por uma entidade Características Uma Zona pode ser desmembrada em sub-zonas Uma Zona tem um servidor Principal e pode ter 0 ou mais Secundários Uma máquina pode ser servidor de várias zonas (ou sub-zonas) Principal para algumas zonas (informação persistente) Secundário para outras (informação volátil aprendida do Principal) 2007/02/26 DNS 10

Informação de uma Zona Informação do nó de topo da zona (Authoritative) [SOA] - Descrição dos parâmetros de gestão [NS] - Nomes dos servidores de nomes da zona Informação dos nós da zona (Authoritative) [A], [AAAA] ou A6 - Endereços das máquinas da zona [PTR] - Nomes das máquinas da zona (Chave: w.x.y.z.in-addr.arpa) [LOC, WKS, TXT, MX,...] - Informação auxiliar das máquinas da zona Informação dos nós de inicio de sub-zona delegadas [NS] - Nomes dos servidores de nomes primários da sub-zona Informação auxiliar dos nós de inicio de sub-zona delegadas (glue) [A] Endereços IPv4 dos servidores de nomes primários da sub-zona [AAA] - Endereços IPv6 dos servidores de nomes primários da sub-zona 2007/02/26 DNS 11

Resolução de nomes Cada computador tem uma rotina de resolução de nomes (Cliente) (e.g., gethostbyname & gethostbyaddr in UNIX) Cada rotina de resolução sabe o endereço IP do servidor de DNS local A rotina de resolução envia um pedido DNS ao servidor O servidor DNS devolve A resposta ao pedido Envia o pedido a outro servidor Devolve uma referência Referência = Próximo servidor a quem o pedido deve ser efectuado. Pedido recursivo: Dá-me uma resposta (Não me envies uma referência) 2007/02/26 DNS 12

Resoluções DNS - Exemplos Através do: Saber o: Tipo Nome de Máquina Endereço IPv4 A Nome de Máquina Lista de serviços WKS Nome de Máquina Informação adicional TXT Endereço IP Nome de Máquina PTR Endereço de email Servidor de email MX Nome de Domínio Servidor de DNS NS 2007/02/26 DNS 13

DNS: Arquitectura dos Servidores Para receber pedidos de resolução da própria Zona Servidor Principal [Primary] Normalmente local às redes onde estão as máquinas da zona Servidor Secundário [Secundary] (0 ou mais) Locais - Repartir os pedidos de resolução das máquinas locais Não Locais para tolerância a faltas garantir a resolução de nomes da zona mesmo que a rede não esteja acessível Para encaminhar pedidos de resolução de outras Zonas Servidores Locais: Forwarders, Cache, Cache-Only Recebem pedidos das máquinas locais (clientes) e encaminham Para indicar os servidores de domínios de 1º nível Servidores Root Cerca de uma dúzia para toda a Internet 2007/02/26 DNS 14

Identificação dos Servidores Root 2007/02/26 DNS 15

Tipos de Servidores (Receber querys) Root Name Server Servidores especiais que conhecem os servidores de todos os domínios de 1º nível existentes na Internet Há servidores Root que também são servidores de outras zonas (tip. pequenas e de 1ª nível) Primary Name Server contém e é autoridade sobre toda a informação de nomes das máquinas da zona contém a identificação dos servidores primários das zonas delegadas [a informação está armazenada em disco] Secundary Name Server contém a mesma informação que o Primary Name Server [a informação está armazenada em memória (cache)] 2007/02/26 DNS 16

Tipos de Servidores (Encaminhar querys) Forwarders Servidor de nomes incumbido de encaminhar querys a nomes de fora da zona Cache Servidores que respondem a querys respeitantes à zona e canalizam para o Forwarder as querys respeitantes a outras zonas Cache-only Servidores que não são primários nem secundários de nenhuma zona. Apenas fazem resoluções externas e mantêm uma cache das respostas 2007/02/26 DNS 17

Informação num servidor Sobre os Root Servers (NS, A, AAA) Persistente ficheiro no disco rígido Sobre as Zonas de que é primário Persistente ficheiros no disco rígido Sobre as Zonas de que é secundário Volátil Carregada para memória a partir do primário Informação de outras zonas Resoluções efectuadas recentemente que são guardadas em cache (memória) temporariamente 2007/02/26 DNS 18

Tipos de querys e de respostas Campos Query Type (Q) e Type (RR) Name Query Type Type Descrição A Resolução Directa - Endereço IPv4 NS Nome de um servidor de nomes (SN) CNAME Canonical Name Alias de um nome SOA Start of Authoritive Parâmetros DNS da zona WKS Well Known Services PTR Resolução Inversa Nome de Máquina HINFO Host Info Informação adicional da Máquina MX Mail exchange Nome de Servidor de Mail AXFR Request Zone Transfer IXFR Request Incremental Zone Transfer ANY Request All Records 2007/02/26 DNS 19

Coerência entre Primário e Secundários Queries de informação de uma zona: AXFR (total) ou IXFR (incremental) Secundary NS Zona X Query de Zona Transferência de Zona Primary NS Zona X 2007/02/26 DNS 20

Coerência entre Primário e Secundários Inicialização Secundário carrega toda a informação da zona a partir do primário (query AXFR) Funcionamento normal Primário envia notificação (Notify) quando há alterações na informação da zona Secundário periodicamente (definido no SOA da zona) pede o SOA da zona e verifica se houve alteração do número de série. Se houve alterações... [método clássico] Carrega novamente a toda a informação da zona (query AXFR) [método novo] Carrega apenas a informação nova existente na zona (query IXFR) 2007/02/26 DNS 21

Coerência entre Primário e Secundários Incremental Zone Transfers (IXFR) O protocolo incremental zone transfer (IXFR) é uma forma dos servidores escravos transferirem apenas os dados que mudaram, em vez de terem de transferir toda a zona. Das zonas onde a necessária informação histórica sobre as alterações está disponível. O protocolo IXFR está documentado em RFC 1995 2007/02/26 DNS 22

Mecanismos de resolução (teóricos) Iterativo Cliente (C) pergunta ao seu Servidor de nomes (SA) Servidor (SA) responde ao Cliente (C) indicando um Servidor de nomes (SB) que poderá ter a informação pretendida Cliente pergunta ao Servidor de nomes (SB) Servidor (SN) responde ao Cliente a informação pretendida Recursivo Cliente (C) pergunta ao seu Servidor de nomes (SA) Servidor (SA) pergunta a um Servidor de nomes (SB) que poderá ter a informação pretendida Servidor (SB) responde ao Servidor de nomes (SA) a informação pretendida Servidor (SA) responde ao Cliente a informação pretendida C SA SB SN 2007/02/26 DNS 23

Mecanismos de resolução típico Mistura Recursivo e Iterativo Cliente (C) pergunta ao seu Servidor de nomes (S) Servidor (S) pergunta a um Servidor de nomes Root (SR) para resolver o domínio de 1º nível Servidor (SR) responde ao Servidor (S) indicando um Servidor de nomes (S1) do domínio de 1º nível que poderá ter a resolução pretendida Servidor (S) pergunta ao Servidor de nomes (S1) Servidor (S1) responde ao Servidor (S) indicando um Servidor (S2) do domínio de 2º nível Servidor (S) pergunta ao Servidor de nomes (S2) Servidor (S2) responde ao Servidor (S) com a resolução pretendida Servidor (S) responde ao Cliente (C) com a resolução final pretendida C S SR S1 S2 2007/02/26 DNS 24

Resolução de Nomes Cada cliente obtém respostas (Resource Records) De um servidor que tem autoridade sobre a informação (sempre correctos) De um servidor que tem informação em cache (podem estar desactualizados) 2007/02/26 DNS 25

DNS: Protocolos de Transporte UDP Normalmente os pedidos e respostas DNS são transportados num datagrama UDP. No caso de a informação a transportar ser superior ao tamanho do datagrama UDP a resposta é enviada incompleta num datagrama e a flag Truncated é activada TCP Quando o volume de informação a transferir não cabe num datagrama UDP o cliente DNS estabelece uma ligação TCP com o servidor para realizar a transferência. quando é recebida uma resposta com a flag Truncated activada para transferência de informação de zonas do servidor primário para os secundários 2007/02/26 DNS 26

Funcionamento do Sistema (1) Queries dentro de uma zona Secundary NS Zona X Query de Zona Transferência de Zona Primary NS Zona X Query Auhoritive Answer Query Auhoritive Answer 2007/02/26 DNS 27

Funcionamento do Sistema (2) Query a um nome de uma zona de nível superior (Query recursiva) Zona: isel.pt Root NS 3 Zona: :.pt 5 Primary NS ns.dns.pt Secundary NS ns.dns.br Primary NS 7 Secundary NS 4 Sub-Zona Zona: cc.isel.pt 2 6 8 NS Server 1 NS Server 2007/02/26 DNS 28

Funcionamento do Sistema (3) Query a uma subzona de uma zona de primeiro nível diferente Zona: :.net Root NS Root NS 3 5 Primary NS ns.dns.net Secundary NS ns1.dns.us Zona: rccn.net 4 2 Zona: deec.isel.pt Secundary NS Primary NS 7 6 8 NS Server 1 NS Server 2007/02/26 DNS 29

Funcionamento do Sistema (4) Query a um nome de uma zona de nível inferior (Query recursiva) NS Server Zona: isel.pt 2 NS Server Sub-Zona Zona: cc.isel.pt 1 4 3 Secundary NS Primary NS 2007/02/26 DNS 30

Funcionamento do Sistema (5) Query a uma zona exterior usando forwarder Root NS Root NS 4 Zona: :.net 6 Primary NS ns.dns.net Secundary NS ns1.dns.us Zona: rccn.net 5 Zona: deec.isel.pt Secundary NS Primary NS 8 3 7 9 NS Forwarder 2 10 NS Cache 1 2007/02/26 DNS 31

Servidor Root Informação armazenada I. Nome e endereço dos servidores autoridade para as zonas do espaço DNS. Não devem ser usados para fazer recursão (normalmente não suportam) 2007/02/26 DNS 32

Servidor Primário Informação armazenada I. Atributos para os nomes referentes á zona (p.e endereços das máquinas pertencentes ao domínio), com a excepção da informação referente a zonas delegados a entidades inferiores na hierarquia. II. Nome e endereço dos servidores autoridade para as zonas delegadas (sub-zonas) e para a zona de nível superior ou para servidores root. III. Nomes e endereços de servidores autoridade para outras zonas do espaço DNS. (opcional) IV. Cache de dados referente a outros domínios. V. Dados referentes á manutenção e administração da zona (gestão da cache e replicação dos dados). 2007/02/26 DNS 33

Balanceamente de carga - Load Balancing Um balanceamento de carga simples pode ser conseguido no DNS utilizando múltiplos registos A, AAAA ou A6 (IPv6) para um nome. Por exemplo, se existirem três servidores WWW com os endereços 10.0.0.1, 10.0.0.2 e 10.0.0.3, um conjunto de registos tal como os que se seguem implica que os clientes se irão ligar um terço do tempo a cada máquina: Quando um resolver perguntar por estes registos, o BIND irá rodá-los e responder à pergunta com os registos em ordem diferente. No exemplo acima os clientes irão receber aleatoriamente os registos pela ordem 1, 2, 3; 2, 3, 1; e 3, 1, 2. Muitos clientes irão usar o primeiro registo e ignorar os restantes. 2007/02/26 DNS 34

Resolução de Endereços (PTR) Exemplo O nome DNS 84.220.137.193.in-addr.arpa (correspondente ao endereço IP 193.137.220.84) é a chave de um registo de PTR da base de dados DNS e faz a correspondência com o nome de máquina www.net.ipl.pt 2007/02/26 DNS 35

Mensagem DNS Formato das mensagens 0 15 16 31 ID Client Flags nº Questions nº Answer RR nº Authority RR nº Aditional RR Questions Answers RR Authority RR Aditional Information RR 2007/02/26 DNS 36

Mensagem DNS ID Client - Número único para fazer a correspondência entre perguntas (queries) e respostas Flags - ver adiante Questions - Perguntas de resolução de nomes (ver formato adiante) Answers RR - Respostas de resolução de nomes Authority RR - Indicação de Authoritative Name Servers que podem ter a resposta às perguntas Aditional Info RR - Outros RR com informação auxiliar Ex.: RR A com Endereços IP de RR NS do campo Authority 2007/02/26 DNS 37

Mensagem DNS (2) Campo Flags QR opcode AA TC RD RA (zero) rcode 1 4 1 1 1 1 3 4 QR - Query (0) / Response (1) OpCode - Operation Code 0 - Standard Query 1 - Inverse Query 2 - Server Status Request AA - Authorative Answer TC - Truncated RD - Recursion Desired (Query) RA - Recursion Available (Response) RCode - Return Code Ex.: 0 - Nenhum erro ; 3 - Nome não existe 2007/02/26 DNS 38

Mensagem DNS (3) Formato das Questions Query Name Chave de procura (Ex.: Nome de máquina) Query Type (ver tabela) Class Tip. 1 Internet Query Name (Question) query name query type query class 3 W W W 4 I S E L 2 P T 0 2007/02/26 DNS 39

Mensagem DNS (4) Formato dos Resource Records Domain Name Chave de procura type (Ex.: Nome de máquina) Type (ver tabela) Class Tip. 1 - Internet Time To Live Validade da informação (cache) Resource Data Domain Name Informação (Ex.: End. IP) domain name time to live (TTL) resource lenght resource data class 3 W W W 4 I S E L 2 P T 0 2007/02/26 DNS 40

Mensagem DNS (5) Campo Type (RR) 2007/02/26 DNS 41

Exemplo de mensagem DNS - Query 2007/02/26 DNS 42

Exemplo de mensagem DNS - Reply 2007/02/26 DNS 43

Exemplo de mensagem DNS Reply (cont.) 2007/02/26 DNS 44

Mensagem DNS - Compressão Mensagem com uma pergunta de um nome e duas respostas a essa pergunta com endereços IP (com compressão dos nomes - ptr =12 2 bytes = C0 0C hex) 2007/02/26 DNS 45

Configuração do cliente DNS (Win 2K) 2007/02/26 DNS 46

Formato SOA MNAME -O domain-name do servidor de nomes que foi a original ou a fonte primária dos dados deste RNAME - Um domain-name que especifica o endereço de email da pessoa responsável pela zona. SERIAL Número de versão (unsigned 32 bit) da cópia original da zona. A transferência de zona preserva este valor. Este valor deve ser comparado utilizando aritmética sequencial no espaço. Uma convenção útil é YYYYMMDD## REFRESH Intervalo de tempo a 32 bit antes da zona dever ser refrescada. RETRY Intervalo de tempo a 32 bit que deve passar antes de um refresh dever ser repetido. EXPIRE Valor de tempo a 32 bit que especifica o limite superior do intervalo de tempo que pode passar antes da zona perder a autoridade MINIMUM O valor (unsigned 32 bit) mínimo do campo TTL que pode ser exportado com qualquer RR exportado desta zona. @ IN SOA net.ipl.pt helpdesk.net.ipl.pt ( 2005031403 ; Serial 300 ; Refresh - 5 Minutes 60 ; Retry - 1 minute 1209600 ; Expire - 2 Weeks 43200) ; Minimum - 12 Hours 2007/02/26 DNS 47

Discussão dos registos MX Os registos MX são usados para controlar a entrega de emails. Os dados especificados nos registos são: Uma prioridade controla a ordem como a entrega do email é tentada, com o menor número primeiro. (Se duas prioridades são iguais, um servidor é escolhido aleatoriamente). Um nome de domínio é a máquina para a qual o email deve ser entregue. Deve ter associado um registo A não é suficiente um CNAME. Para um dado domínio, se existirem ambos os registos CNAME e MX, o registo MX está errado, e deve ser ignorado. Em alternativa o email deve ser entregue ao servidor especificado no servidor no registo MX apontado por CNAME. 2007/02/26 DNS 48

Aplicações de Administração DNS: NSLookup (4) I.ROOT-SERVERS.NET internet address = 192.36.148.17 E.ROOT-SERVERS.NET internet address = 192.203.230.10 D.ROOT-SERVERS.NET internet address = 128.8.10.90 A.ROOT-SERVERS.NET internet address = 198.41.0.4 H.ROOT-SERVERS.NET internet address = 128.63.2.53 C.ROOT-SERVERS.NET internet address = 192.33.4.12 G.ROOT-SERVERS.NET internet address = 192.112.36.4 F.ROOT-SERVERS.NET internet address = 192.5.5.241 B.ROOT-SERVERS.NET internet address = 128.9.0.107 J.ROOT-SERVERS.NET internet address = 198.41.0.10 K.ROOT-SERVERS.NET internet address = 193.0.14.129 L.ROOT-SERVERS.NET internet address = 198.32.64.12 M.ROOT-SERVERS.NET internet address = 202.12.27.33 2007/02/26 DNS 49

Sumário Espaço de nomes hierárquico DNS Tipos de servidores DNS Protocolo Informação de uma Zona Arquitectura dos Servidores Funcionamento de um sistema Resolução de endereços PTR Formato da mensagem DNS Exemplos Registos MX 2007/02/26 DNS 50

Ficheiros de configuração no UNIX - cliente /etc/resolv.conf ; ; /etc/resolv.conf ; ; Lista de servidores DNS ; domain isel.pt nameserver localhost 2007/02/26 DNS 51

Ficheiros de configuração no UNIX - servidor /etc/named.conf /* * A simple BIND 8 configuration */ options { directory "/var/named"; forwarders { 193.137.220.1; 193.137.220.33; }; allow-transfer { 193.137.220.1; // sagitario.isel.pt 193.137.220.2; // gemeos.isel.pt 193.137.220.4; // virgem.isel.pt 192.122.238.22; // ns.dns.pt none; }; }; zone "." in { type hint; file "named.root"; }; zone "isel.pt" in { type master; file "master/isel.pt"; }; zone "220.137.193.IN-ADDR.ARPA" in { type master; file "master/193.137.220 ; }; zone "redes.isel.pt" in { type master; file "master/redes.isel.pt"; }; 2007/02/26 DNS 52

Ficheiros com os Resource Records (1) /var/named/master/isel.pt $ORIGIN isel.pt. @ IN SOA sagitario.isel.pt. admin.isel.pt. ( 1998050418 ; serial number 2h ; refresh 1h ; retry 7d ; expire 1d ) ; minimum TTL ; Localizacao do ISEL no mundo!!! @ IN LOC 38 45 27.71 N 9 6 54.618 W 50m ; Zone NS records @ IN NS ns.dns.pt. @ IN NS sagitario @ IN NS gemeos @ IN NS virgem ; Zone Records @ IN MX 10 mail @ IN MX 100 mail-relay @ IN TXT "Q&A admin@isel.pt" @ IN TXT "Online http://www.isel.pt" @ IN TXT "DNS Mantido por Pedro Ribeiro e Luis Falcao" @ IN TXT "Instituto Superior de Engenharia de Lisboa sagitario IN A 193.137.220.1 gemeos IN LOC 38 45 27.71 N 9 6 54.618 W 50m gemeos IN A 193.137.220.2 capricornio IN A 193.137.220.3 virgem IN A 193.137.220.4 leao IN A 193.137.220.254 ; Zone records CNAME mail IN CNAME gemeos mail-relay IN CNAME virgem proxy IN CNAME capricornio ntp IN CNAME leao ntp1 IN CNAME virgem news IN CNAME virgem ; Delegated sub-zone: redes.isel.pt. redes IN NS sagitario ; End delegation 2007/02/26 DNS 53

Ficheiros com os Resource Records (2) /var/named/master/193.137.220 $ORIGIN 220.137.193.in-addr.arpa. @ IN SOA sagitario.isel.pt. admin.isel.pt. ( 1998020418 ; serial number 2h ; refresh 1h ; retry 7d ; expire 1d ) ; minimum TTL ; Zone NS records @ IN NS sagitario.isel.pt. @ IN NS gemeos.isel.pt. @ IN NS virgem.isel.pt. 0 IN PTR isel-vnet0.isel.pt. 1 IN PTR sagitario.isel.pt. 2 IN PTR gemeos.isel.pt. 3 IN PTR capricornio.isel.pt. 4 IN PTR virgem.isel.pt. 254 IN PTR leao.isel.pt. 2007/02/26 DNS 54

Ficheiros com os Resource Records (3) /var/named/named.root ; This file holds the information on root name servers needed to ; initialize cache of Internet domain name servers ; (e.g. reference this file in the "cache. <file>" ; configuration file of BIND domain name servers). ; ; This file is made available by InterNIC registration services ; under anonymous FTP as ; file /domain/named.root ; on server FTP.RS.INTERNIC.NET ; -OR- under Gopher atrs.internic.net ; under menuinternic Registration Services (NSI) ; submenuinternic Registration Archives ; file named.root ; last update:aug 22, 1997 ; related version of root zone:1997082200 ; formerly NS.INTERNIC.NET. 3600000 IN NS A.ROOT-SERVERS.NET. A.ROOT-SERVERS.NET. 3600000A 198.41.0.4 ; formerly NS1.ISI.EDU. 3600000 NS B.ROOT-SERVERS.NET. B.ROOT-SERVERS.NET. 3600000 A 128.9.0.107 ; formerly C.PSI.NET. 3600000 NS C.ROOT-SERVERS.NET. C.ROOT-SERVERS.NET. 3600000 A 192.33.4.12 ; formerly TERP.UMD.EDU. 3600000 NS D.ROOT-SERVERS.NET. D.ROOT-SERVERS.NET. 3600000 A 128.8.10.90 ; formerly NS.NASA.GOV. 3600000 NS E.ROOT-SERVERS.NET. E.ROOT-SERVERS.NET. 3600000 A 192.203.230.10 ; formerly NS.ISC.ORG. 3600000 NS F.ROOT-SERVERS.NET. F.ROOT-SERVERS.NET. 3600000 A 192.5.5.241 ; formerly NS.NIC.DDN.MIL. 3600000 NS G.ROOT-SERVERS.NET. G.ROOT-SERVERS.NET. 3600000 A 192.112.36.4 ; formerly AOS.ARL.ARMY.MIL. 3600000 NS H.ROOT-SERVERS.NET. H.ROOT-SERVERS.NET. 3600000 A 128.63.2.53 ; formerly NIC.NORDU.NET. 3600000 NS I.ROOT-SERVERS.NET. I.ROOT-SERVERS.NET. 3600000 A 192.36.148.17 ; temporarily housed at NSI (InterNIC). 3600000 NS J.ROOT-SERVERS.NET. J.ROOT-SERVERS.NET. 3600000 A 198.41.0.10 ; housed in LINX, operated by RIPE NCC. 3600000 NS K.ROOT-SERVERS.NET. K.ROOT-SERVERS.NET. 3600000 A 193.0.14.129 ; temporarily housed at ISI (IANA). 3600000 NS L.ROOT-SERVERS.NET. L.ROOT-SERVERS.NET. 3600000 A 198.32.64.12 ; housed in Japan, operated by WIDE. 3600000 NS M.ROOT-SERVERS.NET. M.ROOT-SERVERS.NET. 3600000 A 202.12.27.33 2007/02/26 DNS 55

Aplicações de Administração NSLookup: Aplicação de consulta a Servidores de Nomes 2007/02/26 DNS 56

Aplicações de Administração DNS: NSLookup (1) login@ns1:~ > nslookup Default Server: localhost Address: 127.0.0.1 > help $Id: nslookup.help,v 8.5 2000/03/30 23:25:35 vixie Exp $ Commands: (identifiers are shown in uppercase, [] means optional) NAME - print info about the host/domain NAME using default server NAME1 NAME2 - as above, but use NAME2 as server help or? - print info on common commands; see nslookup(1) for details set OPTION - set an option all - print options, current server and host [no]debug - print debugging information [no]d2 - print exhaustive debugging information [no]defname - append domain name to each query [no]recurse - ask for recursive answer to query [no]vc - always use a virtual circuit domain=name - set default domain name to NAME srchlist=n1[/n2/.../n6] - set domain to N1 and search list to N1,N2, etc. root=name - set root server to NAME 2007/02/26 DNS 57

Aplicações de Administração DNS: NSLookup (2) retry=x - set number of retries to X timeout=x - set initial time-out interval to X seconds querytype=x - set query type, e.g., A,ANY,CNAME,HINFO,MX,PX,NS,PTR,SOA,TXT,WKS, SRV,NAPTR port=x - set port number to send query on type=x - synonym for querytype class=x - set query class to one of IN (Internet), CHAOS, HESIOD or ANY server NAME - set default server to NAME, using current default server lserver NAME - set default server to NAME, using initial server finger [USER] - finger the optional USER at the current default host root - set current default server to the root ls [opt] DOMAIN [> FILE] - list addresses in DOMAIN (optional: output to FILE) -a - list canonical names and aliases -h - list HINFO (CPU type and operating system) -s - list well-known services -d - list all records -t TYPE - list records of the given type (e.g., A,CNAME,MX, etc.) exit - exit the program, ^D also exits 2007/02/26 DNS 58

Aplicações de Administração DNS: NSLookup (3) login@ns1:~ > nslookup > server m.root-servers.net Default Server: m.root-servers.net Address: 202.12.27.33 > set type=ns >. Server: m.root-servers.net Address: 202.12.27.33 (root) nameserver = I.ROOT-SERVERS.NET (root) nameserver = E.ROOT-SERVERS.NET (root) nameserver = D.ROOT-SERVERS.NET (root) nameserver = A.ROOT-SERVERS.NET (root) nameserver = H.ROOT-SERVERS.NET (root) nameserver = C.ROOT-SERVERS.NET (root) nameserver = G.ROOT-SERVERS.NET (root) nameserver = F.ROOT-SERVERS.NET (root) nameserver = B.ROOT-SERVERS.NET (root) nameserver = J.ROOT-SERVERS.NET (root) nameserver = K.ROOT-SERVERS.NET (root) nameserver = L.ROOT-SERVERS.NET (root) nameserver = M.ROOT-SERVERS.NET 2007/02/26 DNS 59

Aplicações de Administração DNS (UNIX): DIG login@ns1:~ > dig help usage: dig [@server] [domain] [q-type] [q-class] {q-opt} {d-opt} [%comment] where: server, domain are names in the Domain Name System q-class is one of (in,any,...) [default: in] q-type is one of (a,any,mx,ns,soa,hinfo,axfr,txt,...) [default: a] q-opt is one of: -x dot-notation-address (shortcut to in-addr.arpa lookups) -f file (batch mode input file name) -T time (batch mode time delay, per query) -p port (nameserver is on this port) [53] -b addr[:port] (bind to this tcp address) [*] -P[ping-string] (see man page) -t query-type (synonym for q-type) -c query-class (synonym for q-class) -k keydir:keyname (sign the query with this TSIG key) -envsav,-envset (see man page) -[no]stick (see man page) d-opt is of the form ``+keyword=value'' where keyword is one of: [no]debug [no]d2 [no]recurse retry=# time=# [no]ko [no]vc [no]defname [no]search domain=name [no]ignore [no]primary [no]aaonly [no]cmd [no]stats [no]header [no]header [no]trunc [no]ttlid [no]cl [no]qr [no]reply [no]ques [no]answer [no]author [no]addit [no]dnssec pfdef pfmin pfset=# pfand=# pfor=# notes: defname and search don't work; use fully-qualified names. this is DiG version 8.3 $Id: dig.c,v 8.51 2001/12/19 02:25:17 marka Exp $ 2007/02/26 DNS 60

Aplicações de Administração DNS: DIG login@ns1:~ > dig @C.ROOT-SERVERS.NET ns isel.ipl.pt ; <<>> DiG 8.3 <<>> @C.ROOT-SERVERS.NET ns isel.ipl.pt ; (1 server found) ;; res options: init recurs defnam dnsrch ;; got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 6 ;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 7, ADDITIONAL: 7 ;; QUERY SECTION: ;; isel.ipl.pt, type = NS, class = IN ;; AUTHORITY SECTION: pt. 2D IN NS NS.DNS.BR. pt. 2D IN NS NS2.NIC.FR. pt. 2D IN NS NS.DNS.pt. pt. 2D IN NS SUNIC.SUNET.SE. pt. 2D IN NS NS.UU.NET. pt. 2D IN NS NS-EXT.VIX.COM. pt. 2D IN NS NS2.DNS.pt. ;; ADDITIONAL SECTION: NS.DNS.BR. 2D IN A 200.160.0.5 NS2.NIC.FR. 2D IN A 192.93.0.4 NS.DNS.pt. 2D IN A 193.136.0.1 SUNIC.SUNET.SE. 2D IN A 192.36.125.2 NS.UU.NET. 2D IN A 137.39.1.3 NS-EXT.VIX.COM. 2D IN A 204.152.184.64 NS2.DNS.pt. 2D IN A 193.136.2.226 ;; Total query time: 450 msec ;; FROM: ns to SERVER: C.ROOT-SERVERS.NET 192.33.4.12 ;; WHEN: Tue Jul 2 18:02:41 2002 ;; MSG SIZE sent: 29 rcvd: 306 2007/02/26 DNS 61

Aplicações de Administração DNS: DIG login@ns1:~ > dig ; <<>> DiG 8.3 <<>> ;; res options: init recurs defnam dnsrch ;; got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 4 ;; flags: qr rd ra; QUERY: 1, ANSWER: 13, AUTHORITY: 0, ADDITIONAL: 13 ;; QUERY SECTION: ;;., type = NS, class = IN ;; ANSWER SECTION:. 1d6h18m7s IN NS M.ROOT-SERVERS.NET.. 1d6h18m7s IN NS I.ROOT-SERVERS.NET.. 1d6h18m7s IN NS E.ROOT-SERVERS.NET.. 1d6h18m7s IN NS D.ROOT-SERVERS.NET.. 1d6h18m7s IN NS A.ROOT-SERVERS.NET.. 1d6h18m7s IN NS H.ROOT-SERVERS.NET.. 1d6h18m7s IN NS C.ROOT-SERVERS.NET.. 1d6h18m7s IN NS G.ROOT-SERVERS.NET.. 1d6h18m7s IN NS F.ROOT-SERVERS.NET.. 1d6h18m7s IN NS B.ROOT-SERVERS.NET.. 1d6h18m7s IN NS J.ROOT-SERVERS.NET.. 1d6h18m7s IN NS K.ROOT-SERVERS.NET.. 1d6h18m7s IN NS L.ROOT-SERVERS.NET. ;; ADDITIONAL SECTION: M.ROOT-SERVERS.NET. 2d6h18m7s IN A 202.12.27.33 I.ROOT-SERVERS.NET. 2d6h18m7s IN A 192.36.148.17 E.ROOT-SERVERS.NET. 2d6h18m7s IN A 192.203.230.10 D.ROOT-SERVERS.NET. 2d6h18m7s IN A 128.8.10.90 A.ROOT-SERVERS.NET. 2d6h18m7s IN A 198.41.0.4 H.ROOT-SERVERS.NET. 2d6h18m7s IN A 128.63.2.53 C.ROOT-SERVERS.NET. 2d6h18m7s IN A 192.33.4.12 G.ROOT-SERVERS.NET. 2d6h18m7s IN A 192.112.36.4 F.ROOT-SERVERS.NET. 2d6h18m7s IN A 192.5.5.241 B.ROOT-SERVERS.NET. 2d6h18m7s IN A 128.9.0.107 J.ROOT-SERVERS.NET. 2d6h18m7s IN A 198.41.0.10 K.ROOT-SERVERS.NET. 2d6h18m7s IN A 193.0.14.129 L.ROOT-SERVERS.NET. 2d6h18m7s IN A 198.32.64.12 ;; Total query time: 4 msec ;; FROM: ns to SERVER: default -- 127.0.0.1 ;; WHEN: Tue Jul 2 17:52:53 2002 ;; MSG SIZE sent: 17 rcvd: 436 2007/02/26 DNS 62

Aplicações de Administração DNS: DIG login@ns1:~ > dig @C.ROOT-SERVERS.NET ns cisco.com ; <<>> DiG 8.3 <<>> @C.ROOT-SERVERS.NET ns cisco.com ; (1 server found) ;; res options: init recurs defnam dnsrch ;; got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 6 ;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 13, ADDITIONAL: 13 ;; QUERY SECTION: ;; cisco.com, type = NS, class = IN ;; AUTHORITY SECTION: com. 2D IN NS A.GTLD-SERVERS.NET. com. 2D IN NS G.GTLD-SERVERS.NET. com. 2D IN NS H.GTLD-SERVERS.NET. com. 2D IN NS C.GTLD-SERVERS.NET. com. 2D IN NS I.GTLD-SERVERS.NET. com. 2D IN NS B.GTLD-SERVERS.NET. com. 2D IN NS D.GTLD-SERVERS.NET. com. 2D IN NS L.GTLD-SERVERS.NET. com. 2D IN NS F.GTLD-SERVERS.NET. com. 2D IN NS J.GTLD-SERVERS.NET. com. 2D IN NS K.GTLD-SERVERS.NET. com. 2D IN NS M.GTLD-SERVERS.NET. ;; ADDITIONAL SECTION: A.GTLD-SERVERS.NET. 2D IN A 192.5.6.30 G.GTLD-SERVERS.NET. 2D IN A 192.42.93.30 H.GTLD-SERVERS.NET. 2D IN A 192.54.112.30 C.GTLD-SERVERS.NET. 2D IN A 192.26.92.30 I.GTLD-SERVERS.NET. 2D IN A 192.43.172.30 B.GTLD-SERVERS.NET. 2D IN A 192.33.14.30 D.GTLD-SERVERS.NET. 2D IN A 192.31.80.30 L.GTLD-SERVERS.NET. 2D IN A 192.41.162.30 F.GTLD-SERVERS.NET. 2D IN A 192.35.51.30 J.GTLD-SERVERS.NET. 2D IN A 210.132.100.101 K.GTLD-SERVERS.NET. 2D IN A 192.52.178.30 M.GTLD-SERVERS.NET. 2D IN A 192.55.83.30 ;; Total query time: 445 msec ;; FROM: ns to SERVER: C.ROOT-SERVERS.NET 192.33.4.12 ;; WHEN: Tue Jul 2 17:59:26 2002 ;; MSG SIZE sent: 27 rcvd: 459 2007/02/26 DNS 63

DHCP e nomes DNS Actualmente o DHCP não interage com o DNS. As associações entre os nomes das máquinas e o endereço IP atribuídos pelo DHCP, têm que ser tratados separadamente. Que nome deve um host receber do DHCP? Nenhum Possível para correr clientes (não necessitam de nome) Atribuição automática de nome consoante endereço IP Método popular actualmente (associações estáticas DNS) Host recebe um novo nome sempre que recebe um novo IP. Atribuição de um nome permanente. A máquina pode sempre ser acedida pelo mesmo nome É necessário mecanismo adicional de coordenação entre DHCP e DNS (em estudo) 2007/02/26 DNS 64