Navigacija

BIND9 DNS streznik


Za zacetek je treba razjasnit pojme kaj je DNS, kaj je IP naslov, HOSTNAME, DOMENA in podobno...

IP naslov (govorim o IPv4 protokolu) je naslov nekega racunalnika v omrežju, ki uporablja internetni protokol.
IP naslovi so recimo:
- 127.0.0.1
- 192.168.0.1
- 193.2.1.66
- 193.189.160.11
- 255.255.255.255
- 0.0.0.0
Torej ce povzamem... IP naslov je sestavljen iz štirih osembitnih vrednosti - a.b.c.d - vsak 'oktet' (osem bitov) lahko naslovi 256 razlicnih vrednosti.

HOSTNAME je pa po drugi strani ime racunalnika - namesto, da bi si morali zapomniti ip številko, recimo 82.192.47.133, si zapomnimo unix-slo.siuug.org, kar je morda malo bolj preprosto.
Primeri:
- unix-slo.siuug.org
- www.google.com
- gnilo.jabolko.si
- taurus-1.siol.net
Torej je hostname sestavljen iz nekih logicnih besed, locenih s piko. Besede so lahko sestavljene iz angleških crk, številk, pomišljaja, podcrtaja, ... brez presledkov, šumnikov ter podobnih traparij

DOMENA je pa tisti desni del, imena racunalnika, recimo
- siuug.org
- google.com
- t-2.net
- arnes.si
...
Cisto desni del domene je TLD (top level domain), recimo org, net, si, com, uk, mil, gov, tw, ...

Domene so drevesno in hierarhicno razporejene. Cisto zgornja domena je . (pika). Za njo skrbijo korenski strežniki v domeni root-servers.net.
;; ANSWER SECTION:

. 518400 IN NS I.ROOT-SERVERS.NET.

. 518400 IN NS E.ROOT-SERVERS.NET.

. 518400 IN NS D.ROOT-SERVERS.NET.

. 518400 IN NS A.ROOT-SERVERS.NET.

. 518400 IN NS H.ROOT-SERVERS.NET.

. 518400 IN NS C.ROOT-SERVERS.NET.

. 518400 IN NS G.ROOT-SERVERS.NET.

. 518400 IN NS F.ROOT-SERVERS.NET.

. 518400 IN NS B.ROOT-SERVERS.NET.

. 518400 IN NS J.ROOT-SERVERS.NET.

. 518400 IN NS K.ROOT-SERVERS.NET.

. 518400 IN NS L.ROOT-SERVERS.NET.

. 518400 IN NS M.ROOT-SERVERS.NET.



;; ADDITIONAL SECTION:

I.ROOT-SERVERS.NET. 3600000 IN A 192.36.148.17

E.ROOT-SERVERS.NET. 3600000 IN A 192.203.230.10

D.ROOT-SERVERS.NET. 3600000 IN A 128.8.10.90

A.ROOT-SERVERS.NET. 3600000 IN A 198.41.0.4

H.ROOT-SERVERS.NET. 3600000 IN A 128.63.2.53

C.ROOT-SERVERS.NET. 3600000 IN A 192.33.4.12

G.ROOT-SERVERS.NET. 3600000 IN A 192.112.36.4

F.ROOT-SERVERS.NET. 3600000 IN A 192.5.5.241

B.ROOT-SERVERS.NET. 3600000 IN A 192.228.79.201

J.ROOT-SERVERS.NET. 3600000 IN A 192.58.128.30

K.ROOT-SERVERS.NET. 3600000 IN A 193.0.14.129

L.ROOT-SERVERS.NET. 3600000 IN A 198.32.64.12

M.ROOT-SERVERS.NET. 3600000 IN A 202.12.27.33

le-ti so odgovorni za vse TLD domene ter dodeljujejo pravico recimo sloveniji za upravljanje z domeno si.

;; ANSWER SECTION:

si. 172800 IN NS NS2.NIC.FR.

si. 172800 IN NS SCSNMS.SWITCH.CH.

si. 172800 IN NS SUNIC.SUNET.SE.

si. 172800 IN NS NS.UU.NET.

si. 172800 IN NS NS-EXT.VIX.COM.

si. 172800 IN NS SREBRNJAK.ARNES.si.

si. 172800 IN NS SSS.ARNES.si.

si. 172800 IN NS NS1.ARNES.si.



;; ADDITIONAL SECTION:

NS2.NIC.FR. 172800 IN A 192.93.0.4

SCSNMS.SWITCH.CH. 172800 IN A 130.59.1.30

SCSNMS.SWITCH.CH. 172800 IN A 130.59.10.30

SUNIC.SUNET.SE. 172800 IN A 192.36.125.2

NS.UU.NET. 172800 IN A 137.39.1.3

NS-EXT.VIX.COM. 172800 IN A 204.152.184.64

SREBRNJAK.ARNES.si. 172800 IN A 193.2.1.91

SSS.ARNES.si. 172800 IN A 81.91.161.75

NS1.ARNES.si. 172800 IN A 193.2.1.86

torej.. kaj je pa DNS strežnik (domain name system server pa pomeni servis na inernetu, ki upravlja z domenami, skrbi za preslikavo ip naslovov v hostname, nadzoruje kam se pošilja elektronska pošta za domeno in podobno. V našem primeru je to BIND, vendar obstaja še en kup domenskih strežnikov, recimo dnsmaq, djbdns, ... kjer so eni caching only, drugi pa avtoritivni. Caching only pomeni dejansko medpomnilnik za dns zapise, kot naprimer squid (proxy strežnik za http), za optimiziranje prometa do svojega internetnega ponudnika, ce imate na lokalni mreži vecje število odjemalcev. djbdns ter recimo bind sta pa avtoritivna domenska strežnika, vendar se uporabljata tudi za medpomnilnik.

Kako sploh zgleda dns zapis... Zgoraj v citatih so primeri dns zapisov, natancneje NS ter A zapisi...

Kakšne dns zapise sploh poznamo?
SOA - Start Of Authority - zapis, ki mora obstajati za vsako domeno posebej. V njem piše kdo je primarni dns strežnik, na kater e-mail se lahko obrnete v primeru vprašanj za domeno ter številke, ki so potrebne za kontrolo domene ter opisujejo, katera zaporedna številka domene je, kakšen je cas osvežitve, cas ponovnega poskusa, cas poteka, ter število minimum sekund, kolikor naj bi zapisi v domeni obstajali.
Primeri SOA zapisov:
. 86400 IN SOA A.ROOT-SERVERS.NET. NSTLD.VERISIGN-GRS.COM. 2006042200 1800 900 604800 86400
si. 21600 IN SOA ns1.arnes.si. hostmaster.arnes.si. 2006042207 3600 1800 3600000 21600
siuug.org. 3600 IN SOA ns1.siuug.org. dns.siuug.org. 2006041901 3600 1800 1209600 86400

verjetno bi bilo dobro malo obrazložiti...

prvi del predstavlja domeno

drugi del - TTL (time to live - cas, ki predstavlja sekunde, ko je zapis lahko v medpomnilniku, preden ga je potrebno obnoviti)

tretji del - IN - pomeni razred; poznamo sicer vec razredov (IN - internet; HS - hesoid; CH - chaos), uporablja se pa povecini samo ta

cetrti del - SOA - predstavlja tip, torej zacetek avtorietete

od petega dela naprej pa je zapis takšen: primarni avtoritivni dns strežnik, e-mail naslov upravljalca domene s piko namesto afne, serial, refresh, retry, expire, minimum

NS - Name Server - pomeni domenski strežnik, ki je odgovoren za željeno domeno:
siuug.org. 3600 IN NS ns1.siuug.org.
siuug.org. 3600 IN NS ns2.siuug.org.
siuug.org. 3600 IN NS ns3.siuug.org.
...
razlika je le v petem delu, kjer je napisan hostname racunalnika