Domännamnsystemet - DNS

DNS är Internets nummerkatalog, grunden för översättningar mellan domännamn och ip-adresser, både fram- och baklänges. Standarden beskrivs detaljerat i rfc1034 och rfc1035.

DNS är en hierarkisk distribuerad databas med redundans på alla nivåer. På övergripande nivå koordineras systemet av IANA - Internet Assigned Numbers Authority

Namnstruktur

Namnrymden är indelad i toppdomäner, domäner och subdomäner med en . som skiljetecken.

 ....subsubdomän.subdomän.domän.toppdomän.
Toppnivådomänerna är bland andra landsdomänerna (tex .se), edu, gov, com, org, etc. En fullständig lista finns här. Beslutsprocessen för inrättande av nya toppdomäner manageras av ICANN.

AMPRNets adressägare ARDC har registrerat domänen ampr.org. AMPRNet Sverige förfoga över domänerna se.ampr.org och amprnet.se .

Bakåtuppslagningen från nummer till namn utgår från toppdomänen in-addr.arpa. 44.in-addr.arpa. pekar på 44.0.0.0/8, 5.44.in-addr.arpa. pekar på 44.5.0.0/16, etc.

Information om domänerna finns tillgänglig via whois-tjänsten. Testa gärna kommandona "whois se" "whois amprnet.se" och "whois ampr.org"

Servernätverk

Implementeringen av namnservrarna har också en trädstruktur med mycket redundans.

Roten består av 13 rotservrar (A-M) som manageras av utvalda organisationer koordinerade av IANA och har ett stort antal kopior spridda över världen.

Rotservrarnas uppgift är att hålla rätt på alla toppdomänservrar framlänges och .in-addr.arpa baklänges.

Nästa nivå under toppdomänservrarna är de auktoritativa servrarna för subdomäner under toppnivån, tex amprnet.se och in-addr.arpa, som i sin tur kan delas in i subdomäner, tex sk0bu.amprnet.se, med delegerat auktoritet till egna auktoritativa servrar.

Förfrågningar till dns-servrar kan vara iterativa eller rekursiva. Vid en iterativ fråga kommer svaret alltid tillbaka till den som ställer frågan som då själv få gå vidare för att få ett auktoritativt svar. En rekursiv fråga skickas vidare till ett auktoritativt svar erhålles, som sedan skickas tillbaka samma väg till frågeställaren.
Förfrågningar cachas normalt på alla nivåer. Det är därför sällan som förfrågningar når rotservrarna.

Kommandon som kan användas för att interaktivt ställa frågor till namnservrar är bland andra dig och nslookup.

Resursrecord och meddelandeformat

Innehållet i den distribuerade DNS-database består av resursrecords innehållande typ, parameter1, parameter2 och giltighetstid.
  Typ       parameter1   parameter 2
  SOA       anger början av auktoritativ zon
  NS        anger auktoritativ namnserver för aktuell domän
  MX        pekare till rfc974-epostserver för domänen
  HINFO     cpu/os-info för en värd
  A         domännamn    adress
  CNAME     domännamn    kanoniskt domännamn
  PTR       adress       domännamn
Meddelandeformatet är detsamma för fråga och svar. Det består av ett huvud om 12 oktetter följt av ett antal frågor, svar, auktoritet och annan information. Innehållet i dessa fält varierar beroende på frågornas/svarens art. För detaljerade exempel hänvisas till rfc1034.

DNS använder udp port 53 som transporttjänst.

DNS är en kritisk resurs

Hotbild: DDOS-attacker

Förebyggande åtgärder: Svara bara på frågor från den egna domänen.

Att sätta upp en namnserver

En ofta använd programvara för att sätta upp en namnserver är bind. En annan är PowerDNS.

Adressallokering

Givet en planerad nätutbyggnad med ett stort antal subnät av olika storlek och ett stort antal ännu oanvända ip-adresser är en inte självklar fråga hur man bäst allokerar adresser till subnät.

Så här kan man tänka:....

Ett ofta använt verktyg för att bokföra allokeringen så att det tydligt framgår vilka adresser som är allokerade och vilka som är lediga är ipam (pekare?).

Integrering av adressallokering och DNS

Det skulle underlätta avsevärt med ett verktyg som gör det möjligt att redan vid adressallokeringen definiera namn som direkt införs i berörda zonfiler i DNS. Finns sådana verktyg?