23
DNS jml 2012 DNS Domain Name System Histórico V1.0, Paula Viana, 1999 V2.0, Paula Viana, 2004 v2.1, Paula Viana, 2005 v2.2, Paula Viana, 2006 v3.0, Miguel Leitão, 2007 v3.2, Miguel Leitão, 2010 V3.3, Miguel Leitão 2018 Endereços de máquinas Tal como os telefones, as estações de uma rede podem ser identificadas por um número.

DNS Domain Name System - Departamento de Engenharia ...ave.dee.isep.ipp.pt/~jml/ingre/priv/slides/DNS-v3.pdfO DNS pode ser usado para obter o nome canónico de uma máquina, dado o

  • Upload
    others

  • View
    6

  • Download
    1

Embed Size (px)

Citation preview

Page 1: DNS Domain Name System - Departamento de Engenharia ...ave.dee.isep.ipp.pt/~jml/ingre/priv/slides/DNS-v3.pdfO DNS pode ser usado para obter o nome canónico de uma máquina, dado o

DNS

jml 2012

DNS – Domain Name System

Histórico V1.0, Paula Viana, 1999

V2.0, Paula Viana, 2004 v2.1, Paula Viana, 2005 v2.2, Paula Viana, 2006 v3.0, Miguel Leitão, 2007 v3.2, Miguel Leitão, 2010 V3.3, Miguel Leitão 2018

Endereços de máquinas

Tal como os telefones, as estações de uma rede podem ser

identificadas por um número.

Page 2: DNS Domain Name System - Departamento de Engenharia ...ave.dee.isep.ipp.pt/~jml/ingre/priv/slides/DNS-v3.pdfO DNS pode ser usado para obter o nome canónico de uma máquina, dado o

DNS

jml 2012

Resolução de Nomes

Máquinas identificadas por um nome e não pelo endereço IP • mais simples de memorizar

Necessário fazer a conversão de nomes em endereços IP • Tabelas locais (hosts file)

• DNS

Hosts file • Ficheiros locais com equivalências (IP, nome, alias):

;host file do ave:/etc/hosts

; IP nome alias

;

127.0.0.1 localhost.localdomain localhost

193.136.63.3 damao.dee.isep.ipp.pt damao

193.136.63.5 ave.dee.isep.ipp.pt ave

Difícil Manutenção:

Novas máquinas: alteração de todos os ficheiros

Ficheiros de grandes dimensões

Procura nos ficheiros pode ser lenta

Domain Name System

Especificação RFC 1034: Conceitos

RFC 1035: Especificação e Implementação

Sistema distribuído Não existe 1 servidor único com toda a informação

Servidores de DNS colaboram entre si

Funcionalidades Tradução Nome IP

Tradução IP Nome

Informação para encaminhamento de emails (servidores de email)

Consulta ao DNS gethostbyname()

gethostbyaddress()

Organização hierárquica em domínios e sub-domínios Evita conflitos de nomes

Diminui tamanho das tabelas

Aumenta fiabilidade (se falhar 1, restantes domínios continuam a funcionar)

Aumenta eficiência (consultas mais próximas)

edu pt org uk

ipp inesc

... isep

acm ieee

dee dei

Page 3: DNS Domain Name System - Departamento de Engenharia ...ave.dee.isep.ipp.pt/~jml/ingre/priv/slides/DNS-v3.pdfO DNS pode ser usado para obter o nome canónico de uma máquina, dado o

DNS

jml 2012

DNS – Hierarquia de Domínios

TLD

Top Level Domain

DNS – Entidades gestoras

Exemplo de organização hierárquica:

ave.dee.isep.ipp.pt

• ave = nome da máquina

• dee.isep.ipp.pt = domínio

• pt = identifica país

Entidades responsáveis pela gestão de domínios

Global

• ICANN: Internet Corporation for Assigned Names and Numbers

• .com - comercial

• .edu - educação

• .gov - organizações governamentais dos EUA

• .mil – organizações militares dos EUA

• .net – rede

• .org – organizações

• .int – organizações internacionais

Em portugal (.pt)

• FCCN : Fundação para o Cálculo Científico Nacional

Page 4: DNS Domain Name System - Departamento de Engenharia ...ave.dee.isep.ipp.pt/~jml/ingre/priv/slides/DNS-v3.pdfO DNS pode ser usado para obter o nome canónico de uma máquina, dado o

DNS

jml 2012

DNS – Gestão de domínios de países

Gestão do domínio .pt

Hierarquias

• .pt – pessoas colectivas, profissionais liberais, entidades detentores de marca

• .net.pt – prestadores de serviços de telecomunicações

• .gov.pt – entidades que integram o governo

• .org.pt – organizações sem fins lucrativos

• .edu.pt – estabelecimentos de ensino

• .int.pt – organizações internacionais e representações diplomáticas

• .publ.pt – titulares de publicações periódicas

• .com.pt – qualquer pessoa ou entidade

• .nome.pt – qualquer pessoa com BI emitido

Códigos de países (TLD) • .es - espanha

• .ch – suiça

• .dk – dinamarca

• .fr – frança

• .jp – japão

• .nz – nova zelância

• .uk – reino unido • .ac.uk – ensino

• .co.uk - comercial

DNS - Domain Name System

Entidades

Name Server

• Servidor que contém as bases de dados com as traduções de endereços

Resolvers

• Software que contacta os name servers

Servidores de Nomes (Name Servers)

impossível construir uma tabelas com todos os nomes!

espaço dividido em zonas

• cada zona tem 1 servidor de nomes responsável por todos os nomes nessa zona

Ex:

isep.ipp.pt responsável por dmat.isep.ipp.pt

dem.isep.ipp.pt

mas não por dee,isep.ipp.pt

dei.isep.ipp.pt

• cada servidor possui uma lista de servidores hierarquicamente superiores

Tipos de respostas

authoritative - sempre correcto

non-authoritative - obtido de uma cache (pode ser incorrecto)

• clientes podem recusar resposta proveniente de cache

• cada entrada na tabela contém um parâmetro do tipo TTL

Page 5: DNS Domain Name System - Departamento de Engenharia ...ave.dee.isep.ipp.pt/~jml/ingre/priv/slides/DNS-v3.pdfO DNS pode ser usado para obter o nome canónico de uma máquina, dado o

DNS

jml 2012

DNS - Domain Name System

Tipos de Servidores de DNS

• Primário

• Contém a base de dados principal de tradução de nomes e endereços IP

• Secundário

• Contém uma cópia da base de dados principal

• Em intervalos regulares, o servidor secundário faz 1 backup da base de

dados principal

• Em caso de falha do Servidor Principal, o Servidor Secundário responde

aos pedidos

• Cache

• Não contém, na inicialização, uma base de dados com a tradução de

endereços

• Conhece os Servidores Primário e Secundário

• Resolve a tradução de nomes perguntando a estes servidores

• Utilizado para diminuir a carga nos servidores Primário e Secundário

• Cache completa pode ser criada no início ou construída por acesso

DNS – Sequência de Pesquisa

Máquina 1 quer comunicar com Máquina 2

1. Um programa chama o procedimento “resolver” passando o nome como parâmetro.

2. É verificada a cache local para verificar se não existe uma cópia do mapeamento

3. O “resolver” envia um pacote UDP (porto 53) para o servidor local de DNS.

4. O servidor local de DNS converte o nome num endereço IP. Ele pode fazê-lo

recorrendo a informação:

1. Guardada localmente, quer numa tabela ou em cache

2. Obtida de outros servidores

5. O servidor local de DNS devolve o endereço IP ao “resolver”.

6. O “resolver” devolve-o à aplicação que o chamou.

Máquina1 Pacote UDP

DNS server Pacote UDP

nome

Tabela

nr

Máquina1

Máquina2

Pacote TCP/UDP

3

4

5

Page 6: DNS Domain Name System - Departamento de Engenharia ...ave.dee.isep.ipp.pt/~jml/ingre/priv/slides/DNS-v3.pdfO DNS pode ser usado para obter o nome canónico de uma máquina, dado o

DNS

jml 2012

DNS – Métodos de Resolução

Métodos para resolução de nomes

método recursivo

não recursivo

ns.cs.vu.nl x.root-server.net ns.edu-server.net ns.yale.edu ns.cs.yale.edu 2 3 4 5

9 8 7 6

flits.cs.vu.nl

linda.cs.yale.edu?

ns.cs.vu.nl

x.root-server.net

1

3

2 (x.root-server.net)

flits.cs.vu.nl

linda.cs.yale.edu? 1

10

ns.edu-server.net

5

Root Nameservers

Letter IPv4 address IPv6 address Old name Operator Location Software

A 198.41.0.4 2001:503:ba3e::2:30 ns.internic.net VeriSign distributed by anycast BIND

B 192.228.79.201 2001:478:65::53 ns1.isi.edu USC-ISI Marina Del Rey, California BIND

C 192.33.4.12 c.psi.net Cogent distributed by anycast BIND

D 128.8.10.90 terp.umd.edu University of Maryland College Park, Maryland BIND

E 192.203.230.10 ns.nasa.gov NASA Mountain View, California BIND

F 192.5.5.241 2001:500:2f::f ns.isc.org ISC distributed by anycast BIND 9

G 192.112.36.4 ns.nic.ddn.mil Defense Information

Systems Agency distributed by anycast BIND

H 128.63.2.53 2001:500:1::803f:235 aos.arl.army.mil U.S. Army Research Aberdeen PG, Maryland NSD

I 192.36.148.17 2001:7fe::53 nic.nordu.net Autonomica distributed by anycast BIND

J 192.58.128.30 2001:503:c27::2:30 VeriSign distributed by anycast BIND

K 193.0.14.129 2001:7fd::1 RIPE NCC distributed by anycast NSD

L 199.7.83.42 2001:500:3::42 ICANN distributed by anycast NSD

M 202.12.27.33 2001:dc3::35 WIDE Project distributed by anycast BIND

Page 7: DNS Domain Name System - Departamento de Engenharia ...ave.dee.isep.ipp.pt/~jml/ingre/priv/slides/DNS-v3.pdfO DNS pode ser usado para obter o nome canónico de uma máquina, dado o

DNS

jml 2012

Root NameServers

DNS - Serviços Tradução de nomes em endereços IP

Nomes alternativos (Host aliasing)

Uma máquina pode ter mais que um nome

• (relay1.west-coast.enterprise.com ou www.enterprise.com)

O DNS pode ser usado para obter o nome canónico de uma máquina, dado o

nome alternativo

Aliases de mail

Endereço de mail deve ser uma menmónica simples:

[email protected] = cr7@dep_futebol.real_madrid.es)

Aplicação de mail usa DNS para obter o nome canónico da máquina que deve

receber e o seu IP

Distribuição de carga

• Réplicas de servidores Web:

• Servidor contém endereços das várias réplicas e responde de forma rotativa

Page 8: DNS Domain Name System - Departamento de Engenharia ...ave.dee.isep.ipp.pt/~jml/ingre/priv/slides/DNS-v3.pdfO DNS pode ser usado para obter o nome canónico de uma máquina, dado o

DNS

jml 2012

DNS – Load Balancing

www IN A 10.0.0.1

www IN A 10.0.0.2

www IN A 10.0.0.3

Load Balancing

$ host www.google.com www.google.com is an alias for www.l.google.com.

www.l.google.com has address 74.125.19.104

www.l.google.com has address 74.125.19.103

www.l.google.com has address 74.125.19.147

www.l.google.com has address 74.125.19.99

$ host www.google.com www.google.com is an alias for www.l.google.com.

www.l.google.com has address 74.125.19.99

www.l.google.com has address 74.125.19.104

www.l.google.com has address 74.125.19.103

www.l.google.com has address 74.125.19.147

Page 9: DNS Domain Name System - Departamento de Engenharia ...ave.dee.isep.ipp.pt/~jml/ingre/priv/slides/DNS-v3.pdfO DNS pode ser usado para obter o nome canónico de uma máquina, dado o

DNS

jml 2012

rDNS

Reverse DNS

Permite determinar um nome DNS associado a um endereço IP

Utiliza base de dados localizada sob o domínio de topo ARPA

Address and Routing Parameter Area

IPv4: in-addr.arpa.

IPv6: ipv6.arpa.

IPv4 in-addr.arpa tree

whois 202 203 210 211..

28.12.202.in-addr.arpa

Root DNS (.)

edu com arpa ph net

apnic in-addr

12

28

Page 10: DNS Domain Name System - Departamento de Engenharia ...ave.dee.isep.ipp.pt/~jml/ingre/priv/slides/DNS-v3.pdfO DNS pode ser usado para obter o nome canónico de uma máquina, dado o

DNS

jml 2012

DNS Messages

DNS Messages

Query Response

DNS Messages

Header

Question section

Answer section

Authoritative section

Additional section

Header

Question section

Query Response

Page 11: DNS Domain Name System - Departamento de Engenharia ...ave.dee.isep.ipp.pt/~jml/ingre/priv/slides/DNS-v3.pdfO DNS pode ser usado para obter o nome canónico de uma máquina, dado o

DNS

jml 2012

Figure 18-15

Header Format

Identification Flags & Codes

Number of question records Number of answer records

Number of authoritative records Number of additional records

32 bits

Header Flags and Codes

QR (0 – query, 1 - response)

Opcode

AA (authoritative answer)

TC (truncated)

RD (recursion desired)

RA (recursion available)

AD

CD

Rcode (return code) (error, name error)

15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0

RCode CD AD RA RD TC AA Opcode QR

Page 12: DNS Domain Name System - Departamento de Engenharia ...ave.dee.isep.ipp.pt/~jml/ingre/priv/slides/DNS-v3.pdfO DNS pode ser usado para obter o nome canónico de uma máquina, dado o

DNS

jml 2012

Question Section

QNAME

QTYPE

QCLASS

16 bits

Resource Record

16 bits

NAME

TYPE

CLASS

TTL

RDLENGTH

RDATA

Page 13: DNS Domain Name System - Departamento de Engenharia ...ave.dee.isep.ipp.pt/~jml/ingre/priv/slides/DNS-v3.pdfO DNS pode ser usado para obter o nome canónico de uma máquina, dado o

DNS

jml 2012

Resource Record Types

A Address. IPv4 address mapping.

Ex: ns IN A 192.168.0.1

AAAA Address. IPv6 address mapping.

Ex: ns IN AAAA (ipv6 address)

CNAME Canonical Name. Maps alias or nickname.

Ex: ftp IN CNAME www.sam.net.

MX Mail Exchange. Domain mail destination.

Ex: speedy MX 10 mail

MX 20 mail.sam.net.

NS NameServer. Name of DNS server.

Ex: peach NS ns.max.net.

PTR Pointer. Used for reverse name resolution.

Ex: 3 IN PTR grape

TXT Text. Character string associated with the domain name.

Ex: peach TXT "Refers to the peach subdomain"

2

4

DNS Flags

AA – Authoritative Answer

RA – Recursion Available

RD – Recursion Desired

QR – Query Recursive

Page 14: DNS Domain Name System - Departamento de Engenharia ...ave.dee.isep.ipp.pt/~jml/ingre/priv/slides/DNS-v3.pdfO DNS pode ser usado para obter o nome canónico de uma máquina, dado o

DNS

jml 2012

DNS - Registos (Resource Records)

Um RR é composto por 5 campos : (Name, TTL, Type, Class, Value)

TTL - determina quando é que um RR deve ser removido da cache

Class - sempre IN (Internet)

Tipo:

• A - Name é um nome e Value é o endereço IP correspondente

• NS - Name é um domínio e Value é o nome de um servidor DNS desse domínio

• CNAME - Value é o nome canónico para o alias no campo Name

• MX - Value é o nome do servidor de mail para o domínio no campo Name

• SOA - “Start of Authority” - marca o início de uma zona e define parâmetros gerais

para esse domínio

• HINFO - Informação genérica sobre uma máquina (hw,sw,...)

• PTR - Conversão de um número IP num nome

electrobrain.com 86400 IN MX 1 mailserver.cs.ucla.edu

cs.vu.nl 86400 IN SOA (952771,7200,7200,2419200,86400)

flits.cs.vu.nl 86400 IN HINFO Sun Unix

flits.cs.vu.nl 86400 IN A 130.37.16.112

www.cs.vu.nl 86400 IN CNAME star.cs.vu.nl

DNS - Registos - Exemplo

$ORIGIN isep.ipp.pt.

dee IN SOA postes.dee.isep.ipp.pt. root.postes.dee.isep.ipp.pt. (

65 ; Serial

300 ; Refresh - 5 minutes

60 ; Retry - 1 minute

1209600 ; Expire - 2 weeks

43200 ) ; ttl - 12 hours

dee.isep.ipp.pt. IN A 193.136.60.32

IN MX 2 robot.dee.isep.ipp.pt.

IN MX 4 damao.dee.isep.ipp.pt.

IN MX 10 postes.dee.isep.ipp.pt.

IN MX 50 riu.core.ipp.pt.

IN NS postes.dee.isep.ipp.pt.

IN NS galby.ipp.pt.

IN NS dns.fccn.pt.

hplaser5M IN A 193.136.63.4

telehub IN A 193.136.63.5

telepc01 IN A 193.136.63.11

Incrementado de cada vez que há alterações

Define de quanto em quanto tempo os servidores

secundários verificam o “serial nr” do primário.

Se o primário está incontactável no momento de

“refresh” define quando é que deve ser tentado de novo.

Se não conseguir contactar o primário, o secundário

deve apagar os dados ao fim de “expire”

Page 15: DNS Domain Name System - Departamento de Engenharia ...ave.dee.isep.ipp.pt/~jml/ingre/priv/slides/DNS-v3.pdfO DNS pode ser usado para obter o nome canónico de uma máquina, dado o

DNS

jml 2012

DNS - Registos - Exemplo

;Domain_name Time_to_live Class Type Value

cs.vu.nl. 86400 IN SOA star.star.cs.vu.nl. root.star.cs.vu.nl.(

952771, ;serial (version)

7200, ;refresh period

7200, ;retry refresh

2419200, ;expiration period

86400) ;minimum TTL

cs.vu.nl. 86400 IN TXT “Faculteit Wiskunde en Informatica.”

cs.vu.nl. 86400 IN TXT “Vrije Universiteit Amsterdam”

cs.vu.nl. 86400 IN MX 1 zephry.cs.vu.nl.

cs.vu.nl. 86400 IN MX 2 top.cs.vu.nl.

labs.cs.vu.nl. 86400 IN NS star

flits.cs.vu.nl. 86400 IN HINFO Sun Unix

flits.cs.vu.nl. 86400 IN A 130.37.16.112

flits.cs.vu.nl. 86400 IN A 192.31.231.165

flits.cs.vu.nl. 86400 IN MX 1 flits.cs.vu.nl.

flits.cs.vu.nl. 86400 IN MX 2 zephry.cs.vu.nl.

flits.cs.vu.nl. 86400 IN MX 3 top.cs.vu.nl.

www.cs.vu.nl. 86400 IN CNAME star.cs.vu.nl.

ftp.cs.vu.nl. 86400 IN CNAME zephry.cs.vu.nl.

rowboat IN A 130.37.56.201

IN MX 1 rowboat

IN HINFO Sun Unix

laserjet IN A 192.31.231.216

IN HINFO Mac MacOS

resolv.conf

/etc/resolv.conf

search dee.isep.ipp.pt

nameserver 193.136.63.3

nameserver 193.136.60.10

nameserver 193.136.60.2

Page 16: DNS Domain Name System - Departamento de Engenharia ...ave.dee.isep.ipp.pt/~jml/ingre/priv/slides/DNS-v3.pdfO DNS pode ser usado para obter o nome canónico de uma máquina, dado o

DNS

jml 2012

named.conf

options {

directory "/var/named";

};

zone "." {

type hint;

file "named.cache";

};

zone "dee.isep.ipp.pt"{

type master;

file "dee.isep.ipp.pt";

};

zone "0.0.127.IN-ADDR.ARPA"{

type master;

file "named.local";

};

zone "60.136.193.IN-ADDR.ARPA"{

type master;

file "60.rev";

};

zone "61.136.193.IN-ADDR.ARPA"{

type master;

file "61.rev";

};

zone "63.136.193.IN-ADDR.ARPA"{

type master;

file "63.rev";

};

zone "17.0.10.IN-ADDR.ARPA"{

type master;

file "17.rev";

};

63.rev $TTL 43200

@ IN SOA damao.dee.isep.ipp.pt. cari.dee.isep.ipp.pt. (

20070417111236 ; serial

300 ; refresh

60 ; retry

1209600 ; expire

43200 ; default_ttl

)

@ IN NS damao.dee.isep.ipp.pt.

@ IN NS galby.ipp.pt.

; Hosts for Class EqRede63

; Switch 3COM principal - Ed. F

1.63.136.193.in-addr.arpa. IN PTR bfswitch1.dee.isep.ipp.pt.

; Diu original

2.63.136.193.in-addr.arpa. IN PTR diuold.dee.isep.ipp.pt.

; Servidor principal da DEE.Net

3.63.136.193.in-addr.arpa. IN PTR damao.dee.isep.ipp.pt.

; HP LaserJet 5M

4.63.136.193.in-addr.arpa. IN PTR hplaser5M.dee.isep.ipp.pt.

; Servidor dos alunos do DEE

5.63.136.193.in-addr.arpa. IN PTR ave.dee.isep.ipp.pt.

; Canon IR2020i

6.63.136.193.in-addr.arpa. IN PTR Canon.dee.isep.ipp.pt.

; Servidor Goa

7.63.136.193.in-addr.arpa. IN PTR goa.dee.isep.ipp.pt.

; HP Laser Jet 5000 a

8.63.136.193.in-addr.arpa. IN PTR hp5000a.dee.isep.ipp.pt.

160.63.136.193.in-addr.arpa. IN PTR eBox06.dee.isep.ipp.pt.

162.63.136.193.in-addr.arpa. IN PTR eBox07.dee.isep.ipp.pt.

168.63.136.193.in-addr.arpa. IN PTR eBox08.dee.isep.ipp.pt.

Page 17: DNS Domain Name System - Departamento de Engenharia ...ave.dee.isep.ipp.pt/~jml/ingre/priv/slides/DNS-v3.pdfO DNS pode ser usado para obter o nome canónico de uma máquina, dado o

DNS

jml 2012

nsswitch.conf

passwd: files nisplus nis

shadow: files nisplus nis

group: files nisplus nis

hosts: files dns nisplus nis

bootparams: nisplus [NOTFOUND=return] files

ethers: files

netmasks: files

networks: files

protocols: files nisplus nis

rpc: files

services: files nisplus nis

netgroup: files nisplus nis

publickey: nisplus

automount: files nisplus nis

aliases: files nisplus

dig -t TXT ipp.pt ; <<>> DiG 8.3 <<>> -t ipp.pt

;; res options: init recurs defnam dnsrch

;; got answer: ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 4

;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 2

;; QUERY SECTION: ipp.pt, type = TXT, class = IN

;; ANSWER SECTION:

ipp.pt. 1D IN TXT "v=spf1 a mx ~all"

;; AUTHORITY SECTION:

ipp.pt. 1D IN NS dns1.ipp.pt.

ipp.pt. 1D IN NS dns2.ipp.pt.

;; ADDITIONAL SECTION:

dns1.ipp.pt. 1D IN A 193.136.56.10

dns2.ipp.pt. 1D IN A 193.136.56.9

;; Total query time: 31 msec

;; FROM: damao.dee.isep.ipp.pt to SERVER: default -- 193.136.63.3

;; WHEN: Tue Apr 17 21:25:19 2007

;; MSG SIZE sent: 24 rcvd: 123

Page 18: DNS Domain Name System - Departamento de Engenharia ...ave.dee.isep.ipp.pt/~jml/ingre/priv/slides/DNS-v3.pdfO DNS pode ser usado para obter o nome canónico de uma máquina, dado o

DNS

jml 2012

DNS spoofing

Client

Recursive NS

Coffee shops

Conferences

Airports

First Response wins

Recursive NS

Certain ISPs

Hotels

NXDOMAIN catcher

Client

Page 19: DNS Domain Name System - Departamento de Engenharia ...ave.dee.isep.ipp.pt/~jml/ingre/priv/slides/DNS-v3.pdfO DNS pode ser usado para obter o nome canónico de uma máquina, dado o

DNS

jml 2012

mDNS: multicast DNS

Resolução:

hostname Endereço_IP

Não necessita de servidor de nomes.

Mensagens baseadas no formato DNS unicast

UDP, porto 5353

Endereços: IPv4: 224.0.0.251, IPv6: ff02::fb

Endereço MAC: 01:00:5E:00:00:FB (IPv4), 33:33:00:00:00:FB (IPv6)

Printer 169.254.1.219

169.254.4.51

169.254.10.29

169.254.4.51

mDNS

PC_Bill

PC_Larry

lj21569478

Network

Mac_Steve

Page 20: DNS Domain Name System - Departamento de Engenharia ...ave.dee.isep.ipp.pt/~jml/ingre/priv/slides/DNS-v3.pdfO DNS pode ser usado para obter o nome canónico de uma máquina, dado o

DNS

jml 2012

DNSSEC

provides message authentication and integrity verification through

cryptographic signatures

You know who provided the signature

No modifications between signing and validation

It does not provide authorization

It does not provide confidentiality

It does not provide protection against DDOS

Metaphor

OK

Envelope sealed when data is published in the DNS system.

Does not provide confidentially.

The seal protects the delivery process.

No assertion about the message.

Page 21: DNS Domain Name System - Departamento de Engenharia ...ave.dee.isep.ipp.pt/~jml/ingre/priv/slides/DNS-v3.pdfO DNS pode ser usado para obter o nome canónico de uma máquina, dado o

DNS

jml 2012

Holy Trinity

Private Key: kept private and stored locally

Public Keys: Published in the DNS as a DNSKEY Resource Record

Signatures: Published in the DNS as a RRSIG Resource Record

RRs and RRSets

Resource Record: – name TTL class type rdata

• www.nlnetlabs.nl. 7200 IN A 192.168.10.3

RRset: RRs with same name, class and type: • www.nlnetlabs.nl. 7200 IN A 192.168.10.3

• A 10.0.0.3

• A 172.25.215.2

RRsets are the atomic data units in DNSSEC

RRsets are signed, not the individual RRs

Page 22: DNS Domain Name System - Departamento de Engenharia ...ave.dee.isep.ipp.pt/~jml/ingre/priv/slides/DNS-v3.pdfO DNS pode ser usado para obter o nome canónico de uma máquina, dado o

DNS

jml 2012

DNSKEY RDATA

16 bits: FLAGS

8 bits: protocol

8 bits: algorithm

N*32 bits: public key

mydomain.net. 3600 IN DNSKEY 256 3 5 (

AQOvhvXXU61Pr8sCwELcqqq1g4JJ

CALG4C9EtraBKVd+vGIF/unwigfLOA

O3nHp/cgGrG6gJYe8OWKYNgq3kDChN )

RRSIG RDATA

16 bits - type covered

8 bits - algorithm

8 bits - nr. labels covered

32 bits - original TTL

32 bit - signature expiration

32 bit - signature inception

16 bit - key tag

signer’s name

key

Mydomain.net. 3600 IN RRSIG A 5 2 3600 ( 20050611144523 20050511144523 3112 nlnetlabs.nl.

VJ+8ijXvbrTLeoAiEk/qMrdudRnYZM1VlqhN

vhYuAcYKe2X/jqYfMfjfSUrmhPo+0/GOZjW

66DJubZPmNSYXw== )

Page 23: DNS Domain Name System - Departamento de Engenharia ...ave.dee.isep.ipp.pt/~jml/ingre/priv/slides/DNS-v3.pdfO DNS pode ser usado para obter o nome canónico de uma máquina, dado o

DNS

jml 2012

Validate Public Keys

Make sure you get them from the appropriate entity and

configure them as trust-anchors.

If you validate against the wrong public key there is a

problem again.

For DNSSEC: key distribution through the DNS

Ideally only one key needed: that of the root of the

DNS hierarchy.

Bibliografia Recomendada

Andrew S. Tanembaum, Computer Networks, 3rd Edition, Prentice Hall,

Chapter 7.2