• DNS je distribuovaná databáze, kterou používají TCP/IP ... - eAMOS
• DNS je distribuovaná databáze, kterou používají TCP/IP ... - eAMOS
• DNS je distribuovaná databáze, kterou používají TCP/IP ... - eAMOS
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Počítačové sítě<br />
Aplikační vrstva – Domain Name System (<strong>DNS</strong>)<br />
<strong>•</strong> <strong>DNS</strong> <strong>je</strong> <strong>distribuovaná</strong> <strong>databáze</strong>, <strong>kterou</strong> <strong>používají</strong><br />
<strong>TCP</strong>/<strong>IP</strong> aplikace k mapování doménových jmen do <strong>IP</strong><br />
adres (a naopak)<br />
<strong>•</strong> <strong>DNS</strong> informace jsou rozprostřeny po množině <strong>DNS</strong><br />
serverů<br />
<strong>•</strong> Mapovací informace jsou přenášeny prostřednictvím<br />
aplikačního protokolu <strong>DNS</strong><br />
<strong>•</strong> <strong>DNS</strong> může používat transportní služby UDP<br />
(zpravidla) nebo <strong>TCP</strong> (o<strong>je</strong>diněle)<br />
<strong>•</strong> <strong>DNS</strong> protokol <strong>používají</strong> ke vzá<strong>je</strong>mné komunikace<br />
<strong>DNS</strong> servery (šíření <strong>DNS</strong> databází) nebo <strong>DNS</strong> klienti<br />
s <strong>DNS</strong> servery (požadavek – odpověď)<br />
1
I<br />
Počítačové sítě<br />
Aplikační vrstva – hierarchie <strong>DNS</strong> jmenného prostoru<br />
II<br />
III<br />
arpa<br />
edu<br />
com<br />
org ad cz zw<br />
in-addr<br />
sun<br />
mendelu<br />
195<br />
prod<br />
akela<br />
178<br />
www<br />
Doména nejvyšší<br />
úrovně TLD<br />
78<br />
10<br />
Doména druhé<br />
úrovně SLD<br />
2
Počítačové sítě<br />
Aplikační vrstva - <strong>DNS</strong><br />
Kořenová doména (bezejmenná)<br />
(Root Domain)<br />
TLD oblasti<br />
I arpa (Address and Routing Parameter Area) –<br />
Infrastructure Domain<br />
II<br />
III<br />
Generic Domain<br />
CC (Country Code) Domain<br />
3
Počítačové sítě<br />
Aplikační vrstva - <strong>DNS</strong><br />
<strong>•</strong> SLD – Second Level Domains in-addr.arpa (v TLD arpa)<br />
– inverzní doména <strong>IP</strong>v4<br />
– doménová jména „zón“ (v oblasti geografické CC a v<br />
oblasti obecné) – např. mendelu.cz<br />
<strong>•</strong> Informace (jmenné mapy) pro <strong>je</strong>dnotlivé zóny poskytují<br />
jmenné servery (Name Servers, <strong>DNS</strong> servers)<br />
<strong>•</strong> Databáze kořenových jmenných serverů jsou v Internetu<br />
centrálně distribuovány<br />
<strong>•</strong> Informace o doménách druhé úrovně (poskytují kořenové<br />
jmenné servery (Root Servers) - administrativně určené<br />
<strong>•</strong> Informace o doménách třetí úrovně jsou zajištěny na úrovni<br />
jmenných serverů 2. úrovně<br />
<strong>•</strong> Další úrovně: čtvrtá, pátá …(nižší <strong>je</strong>n o<strong>je</strong>diněle) jsou zajištěny<br />
4<br />
lokálně (jmennými servery 3. úrovně)
Počítačové sítě<br />
Aplikační vrstva - <strong>DNS</strong><br />
<strong>•</strong> Doménové jméno TLD oblastí II a III (např. pro uzel<br />
5.úrovně)<br />
– úplné - návěstí5.návěstí4.návěstí3.návěstí2.<br />
hribek.mech.les.cz.<br />
doména („zóna“)<br />
– relativní – hribek platí v doméně mech.les.cz.<br />
hribek.mech platí v doméně les.cz.<br />
<strong>•</strong> Doménová oblast I - TLD (arpa) – doména 2.úrovně<br />
in-addr – 6 úrovní – návěstí uzlů úrovní 3 – 6 <strong>je</strong><br />
dekadické vyjádření příslušného oktetu <strong>IP</strong> adresy uzlu<br />
5
Počítačové sítě<br />
Aplikační vrstva - <strong>DNS</strong><br />
<strong>•</strong> Funkce zóny in-addr.arpa – reverzní mapování (překlad<br />
<strong>IP</strong> adresy na doménové jméno)<br />
<strong>•</strong> Zóna in-addr.arpa – reverzní doména – <strong>je</strong> <strong>distribuovaná</strong> –<br />
zajišťují ji zpravidla name servery domén, které <strong>používají</strong><br />
příslušné <strong>IP</strong> sítě<br />
<strong>•</strong> Reverzní doménové jméno<br />
– úplné - 10.72.178.195.in-addr.arpa (<strong>je</strong> reverzní<br />
doméno jméno uzlu dahlia.mendelu.cz, kterému <strong>je</strong><br />
přiřazena <strong>IP</strong> adresa 195.178.72.10<br />
– relativní – 10 – platí v doméně<br />
72.178.195. in-addr.arpa<br />
6
Počítačové sítě<br />
Aplikační vrstva – <strong>DNS</strong><br />
<strong>•</strong> Protokol <strong>DNS</strong> – specifiku<strong>je</strong> výměnu <strong>DNS</strong> zpráv<br />
– mezi síťovou aplikací vyžadující <strong>IP</strong> adresu k<br />
doménovému jménu a <strong>DNS</strong> serverem zajišťujícím<br />
danou zónu<br />
– mezi dvěma <strong>DNS</strong> servery<br />
<strong>•</strong> <strong>DNS</strong> protokol <strong>je</strong> založen na principu klient – server (wellknown<br />
port 53)<br />
<strong>•</strong> Používá transportní služby UDP (pro výměnu<br />
<strong>je</strong>dnoduchých <strong>DNS</strong> zpráv) nebo <strong>TCP</strong> (pro transfer<br />
jmenných databází)<br />
<strong>•</strong> <strong>DNS</strong> zprávy jsou typu požadavek (query) a odpověď<br />
(response)<br />
7
Počítačové sítě<br />
Aplikační vrstva – <strong>DNS</strong><br />
<strong>•</strong> Formát <strong>DNS</strong> zprávy požadavek/odpověď<br />
<strong>DNS</strong> záhlaví<br />
12 B<br />
<strong>DNS</strong> zpráva (různý počet<br />
<strong>DNS</strong> zdrojových záznamů)<br />
<strong>•</strong> <strong>DNS</strong> zdrojové záznamy (Resource Records – RR) jsou<br />
uloženy v databázích <strong>DNS</strong> serverů<br />
<strong>•</strong> Pojmy:<br />
– Zóna<br />
– Autorita zóny – autoritativní odpověď<br />
– Primární a sekundární <strong>DNS</strong> server<br />
– Iterativní a rekurzivní požadavek/odpověď<br />
8
Počítačové sítě<br />
Aplikační vrstva – <strong>DNS</strong><br />
Formát <strong>DNS</strong> zprávy<br />
Sekce<br />
HEADER<br />
Sekce<br />
QUESTIONS<br />
request<br />
Sekce<br />
Sekce<br />
ANSWERS<br />
AUTHORITY<br />
response<br />
Sekce<br />
ADDITIONAL<br />
INFORMATION<br />
9
<strong>•</strong> Sekce „HEADER“ – 12 B<br />
Počítačové sítě<br />
Aplikační vrstva – <strong>DNS</strong><br />
Formát záhlaví<br />
0 15 16 31<br />
identifikátor<br />
příznaky (flags)<br />
Počet RR v sekci QUESTIONS<br />
Počet RR v sekci AUTHORITY<br />
QR Kód operace AA TC RD RA<br />
Počet RR v sekci ANSWERS<br />
Počet RR v sekci ADDITIONAL<br />
flags<br />
1 4 1 1 1 1 3 4<br />
nepoužito<br />
Kód odpovědi<br />
O – žádost<br />
1 - odpověď<br />
0 – stand. požadavek<br />
1 – inverzní požadavek<br />
2 – zašli status serveru<br />
Rekurze povolena<br />
Žádost o rekurzivní odpověď<br />
Zkrácená zpráva<br />
Autoritativní odpověď<br />
0 – bez chyby<br />
1,2,3,5 – chyby<br />
10
Počítačové sítě<br />
Aplikační vrstva – <strong>DNS</strong><br />
<strong>•</strong> Sekce „QUESTIONS“ – sekce požadavků<br />
(dotazů) obsahu<strong>je</strong> <strong>je</strong>den dotaz<br />
– „query name“ – vyhledávané doménové jméno<br />
– „query type“ (16 b) – typ záznamu (RR)<br />
– „query class“ (16 b) – obvykle IN=1 (internetové<br />
doménové jméno)<br />
<strong>•</strong> Sekce „ANSWERS“ - odpověď<br />
<strong>•</strong> Sekce „AUTHORITY“ – autoritativní<br />
odpověď<br />
<strong>•</strong> Sekce „ADDITIONAL INFORMATION“ –<br />
dodatečné informace<br />
11
<strong>•</strong> Formát sekce QUESTIONS – <strong>DNS</strong> query<br />
0 15 16 31<br />
query name<br />
query type<br />
query class (0x01)<br />
<strong>•</strong> Reprezentace doménového jména – query name<br />
<strong>•</strong> návěstí 4.úrovně návěstí 3.úrovně návěstí 2.úrovně<br />
6<br />
d<br />
a<br />
h<br />
l<br />
i<br />
a<br />
7<br />
m<br />
e<br />
n<br />
d<br />
e<br />
l<br />
u<br />
2<br />
c<br />
z<br />
čitače znaků<br />
12
<strong>•</strong> Hodnoty type/query type<br />
Name Hodnota Popis type query<br />
type<br />
A<br />
1<br />
<strong>IP</strong> adresa<br />
X<br />
X<br />
NS<br />
2<br />
Name server<br />
X<br />
X<br />
CNAME<br />
5<br />
Kanonické jméno<br />
X<br />
X<br />
PTR<br />
12<br />
Odkaz do inverzní domény<br />
X<br />
X<br />
HINFO<br />
13<br />
Informační záznam<br />
X<br />
X<br />
MX<br />
15<br />
Mail exchanger<br />
X<br />
X<br />
SOA<br />
6<br />
Záznam Start of Authority<br />
X<br />
X<br />
AXFR<br />
252<br />
požadavek na přesun zóny<br />
X<br />
ANY<br />
255<br />
požadavek na všechny záznamy<br />
X<br />
13
Počítačové sítě<br />
Aplikační vrstva – <strong>DNS</strong><br />
<strong>•</strong> Formát <strong>DNS</strong> záznamu RR<br />
0 15 16 31<br />
doménové jméno<br />
typ třída IN (1)<br />
ttl – platnost záznamu (sec)<br />
délka dat zdro<strong>je</strong> – např. 4<br />
pro <strong>IP</strong> adresu<br />
data zdro<strong>je</strong><br />
14
Počítačové sítě<br />
Aplikační vrstva – <strong>DNS</strong><br />
<strong>•</strong> <strong>DNS</strong> záznamy RR jsou uloženy v databázi zóny<br />
<strong>•</strong> Databázi zóny tvoří:<br />
– Základní zónový soubor – obsahu<strong>je</strong> standardní<br />
záznamy pro všechny <strong>IP</strong> uzly zóny<br />
– Reverzní zónové soubory – obsahují reverzní záznamy<br />
pro všechny <strong>IP</strong> uzly zóny<br />
– Zónový soubor specifické domény (pro uzel 127.0.0.1)<br />
– Zónový soubor specifické reverzní domény<br />
0.0.127.in-addr.arpa<br />
– Zónový soubor kořenové domény (inicializační soubor<br />
pro cache)<br />
15
Počítačové sítě<br />
<strong>DNS</strong> - typy záznamů<br />
Záznam začátku autority zony („Start of Authority<br />
Record“)<br />
zóna<br />
[ttl]<br />
v sec<br />
class<br />
IN<br />
SOA<br />
kontakt<br />
E-mail adresa.<br />
Charakteristika<br />
zóny (serial refresh<br />
retry expire minimum)<br />
mendelu.cz<br />
1<br />
6<br />
admin.dahlia.<br />
mendelu.cz.<br />
(2003041501<br />
86400<br />
3600<br />
3600000<br />
2419200)<br />
16
Počítačové sítě<br />
<strong>DNS</strong> - typy záznamů<br />
<strong>•</strong> Adresový záznam („Address Record“)<br />
host [ttl] class A <strong>IP</strong> adresa<br />
akela 1 1 195.178.78.10<br />
<strong>•</strong> Záznam pro zřetězené jméno („Canonical Name Record“)<br />
alias [ttl] class CNAME<br />
orig. doménové jméno<br />
www 1 5 dahlia.mendelu.cz.<br />
17
Počítačové sítě<br />
<strong>DNS</strong> - typy záznamů<br />
<strong>•</strong> Záznam uzlu doručujícího poštovní zprávy („Mail<br />
Exchanger Record“)<br />
doménové<br />
jméno zóny/uzlu<br />
[ttl]<br />
class MX<br />
preference<br />
doménové jméno<br />
mail serveru<br />
mendelu.cz<br />
1 15 0/5/10 ..<br />
dahlia.mendelu.cz.<br />
<strong>•</strong> Záznam pro <strong>DNS</strong> server zóny („Name Server Record“)<br />
doménové<br />
jméno zóny<br />
[ttl]<br />
class<br />
NS<br />
doménové jméno<br />
<strong>DNS</strong> serveru<br />
mendelu.cz<br />
1 2 dahlia.mendelu.cz.<br />
18
Počítačové sítě<br />
<strong>DNS</strong> - typy záznamů<br />
<strong>•</strong> Ukazatel na záznam v reverzní doméně (= inaddrr.arpa.)<br />
pro daný uzel („Domain Name Pointer<br />
Record“)<br />
reverzní DN<br />
[ttl]<br />
class PTR doménové jméno<br />
10.78.178.195.<br />
in-addr.arpa<br />
1 12 akela.mendelu.cz.<br />
19
<strong>•</strong> Iterační komunikace<br />
Počítačové sítě<br />
<strong>DNS</strong><br />
(2) A?<br />
(3) NS-1<br />
root<br />
server<br />
klient<br />
(1) A?<br />
(8) A<br />
server<br />
(4) A?<br />
(5) NS-2<br />
(6) A?<br />
(7) A<br />
server<br />
NS-1<br />
server<br />
NS-2<br />
20
<strong>•</strong> Rekurzivní komunikace<br />
Počítačové sítě<br />
<strong>DNS</strong><br />
(root server rekurze neposkytu<strong>je</strong>)<br />
(2) A?<br />
(3) NS-1<br />
root<br />
server<br />
klient<br />
(1) A?<br />
(8) A<br />
server<br />
(4) A?<br />
(7) A<br />
(5) A?<br />
server<br />
NS-1<br />
(6) A<br />
server<br />
NS-2<br />
21