ICANN, DNS og IP
Disse sidene er en del av dokumentasjonen som Ola Lie utarbeidet da han foreleste faget IP- og webteknologi ved Høgskolen i Østfold i 2005.Websidene ble revidert i 2007.
Domenenavn er et kjennetegn for IP-adresser. IP-adresser er unike adresser som har til hensikt å identifisere hver enkelt datamaskin som er tilkoblet Internett. På samme måte som telefonsystemet bruker nummer til å identifisere brukere, brukes domenenavn for å identifiserte vertsmaskiner på Internett.
ICANN, Norid og registrarer
Det er Internet Corporation for Assigned Names and Numbers (ICANN) som har ansvaret for tildeling av domenenavn og IP adresser. Før var det Internet Assigned Numbers Authority (IANA) som utførte denne oppgaven. InterNIC, som drives av ICANN, offentliggjør informasjon om registrering av domenenavn. ICANN tar seg av toppnivået, eksempelvis "generic (gTLD) and country code (ccTLD) Top-Level Domain name", mens ansvaret for domener under TLD er delegert til forskjellige organisasjoner.
I Norge er det Norid som har ansvaret for regelverket og driften av .no domenet. Norid er et datterselkap til UNINETT AS som eies av eies av Kunnskapsdepartementet. Når vi skal registrere domenenavn, gjør vi ikke dette direkte med Norid, men går gjennom en registrar. Ordningen med registrarer skal sikre konkurranse med hensyn til pris og kvalitet.
Rapporten .no eller aldri fra 2002 danner grunnlaget for hvordan .no domenet forvaltes i Norge. Lov om elektronisk kommunikasjon (ekomloven) gir Samferdselsdepartementet og Post- og teletilsynets myndighet over domenenavn. Ekomloven erstattet teleloven. Forholdet mellom myndighetene og Norid er fastsatt i domeneforskriften som blant annet inneholder regler for klageordninger.
Alle verdens domeneregistreringer ligger lagret i forskjellige databaser. Skal vi vite mer om et domene, må vi enten søke i riktig database (for eksempel RIPE) eller vi kan benytte tjenester som søker i flere databaser samtidig (for eksempel Allwhois).
Domain Name System (DNS)
Som nevnt tidligere kan DNS sammenlignes med en telefonkatalog og blir brukt til å oversette domenenavn til IP adresser. DNS har en trestruktur, og når vi oppgir domenenavnet, må vi ha med vertsnavn, underdomen(r) og toppdomenet. I eksempelsvis www.tip.no et www vertsnavnet, tip underdomenet og no toppdomenet.
Hierarki
På toppen av DNS hierarkiet finner vi rot domenet (root domain) som består av en gruppe navnetjenere (root servers). Under rot domenet finner vi Top Level Domain (TLD) som består av organisatoriske og geografiske domener. De opprinnelige organisatoriske domenene var
.com | kommersiell | |
.edu | utdanning | |
.gov | offentlig | |
.mil | militær | |
.net | nettverkssupport | |
.org | non-profit organisasjoner | |
.int | internasjonal er lite brukt da land koder brukes i stedet |
men i ettertid har det kommet til flere:
.info | generell informasjon | |
.name | private nettsider | |
.pro | profesjonelle organisasjoner | |
.biz | kommersielle selskap (som .com) | |
.coop | kooperative selskap | |
.aero | flyindustrien | |
.museum | museer |
I dag er det i alt 258 Top Level Domains. Noen eksempler på geografiske domener er:
.no | Norge | |
.se | Sverige | |
.dk | Danmark | |
.uk | Storbritannia | |
.de | Tyskland |
Klienter og tjenere
Når vi skriver inn et domenenavn i en nettleser, starter først prosessen med å finne IP adressen til domenenavnet. I eksempelet nedenfor skal vi se hvordan IP adressen til www.vg.no blir funnet ved å bruke Wireshark (som før het Ethereal)til å avlytte trafikken på en lokal DNS tjener:

(1) Først kontakter vår PC, 192.168.1.2, den lokale DNS tjeneren, 192.168.1.3, og spør om IP adressen til www.vg.no. Såfremt adressen ikke finnes i hurtiglageret (cache), (2) sender den lokale navnetjeneren en forespøsel om www.vg.no til en rot tjener. M.ROOT-SERVERS.NET svarer at y.nic.no tjeneren har overikt over .no domenet. (3) Den lokale DNS tjeneren sender så en ny forespøsel om www.vg.no til y.nic.no som svarer at dns1.eunet.no tjeneren har overikt over vg.no domenet. (4) Den lokale DNS tjeneren sender så en ny forespøsel om www.vg.no til dns1.eunet.no som svarer at adressen til www.vg.no er 193.69.165.21. (5) Til slutt sender den lokale DNS tjeneren denne informasjonen tilbake til DNS klienten på vår PC, (6) og nettleseren kan kontakte VGs web-tjener.

TCP/IP vektøyet nslookup inneholder en DNS klient som lar oss koble oss til DNS tjenere og slå opp IP adresser. Vi starter programmet med med kommandoen nslookup fra Ledetekst (Kjør cmd). I eksempelet til venstre tastet vi inn nslookup www.vg.no og fikk svaret 193.69.165.21. Vår primære DNS tjener har da gjort jobben med å slå opp i de ulike navnetjenerne for oss.
Men taster vi inn bare nslookup, får vi flere
muligheter. Skriv help eller ?
for informasjon om vanlige kommandoer. Skriver vi eksempelvis
root, kobler vi oss til en rot tjener. Skriver vi nå
www.vg.no, får vi beskjed om at .no betjenes blant annet Y.NIC.no, som
har IP adresse 193.71.199.51. Skriver vi nå server
193.71.199.51, kobler vi oss til Y.NIC.no. Prøver vi så med
www.vg.no, får vi beskjed om at vg.no betjenes av
blant annet dns1.eunet.no som har IP adresse 193.75.75.1. Vi kobler oss til dns1.eunet.no
med kommandoen server 193.75.75.1, og en ny
forespørsel om www.vg.no gir oss adressen
193.69.165.21. Avlutningsvis har vi testet ut IP
adressen i nettleseren Opera.

Programmer på en Windows PC som skal utføre DNS oppslag, benytter en DNS klient i form av kall til biblioteksfunkjsoner i DLL filer som vist til venstre.
På Windows plattformen kjøres også en DNS klient tjeneste som kan lagre IP adresser lokalt (DNS cache):


Innholdet i DNS bufferen kan tømmes, oppdateres og vises med ipconfig kommandoen som vist til høyre:
Før vi fikk disse tjenerne, lå alle domenenavnene og IP adressene i lokale filer som het hosts. På våre PCer ligger den i mappen C:\WINDOWS\system32\drivers\etc\. Vi kan åpne fila i notepad, og legge til adressen og navnet til tini under localhost:
127.0.0.1 | localhost | |
192.168.1.10 | tini |
Da går det an å skrive telnet tini eller ftp tini i stedet for å bruke IP adressen.
Lokalisering
WHOIS er en protokoll (RFC 3912) og tjenere som lar oss finne ut hvem som eier et domene navn eller en IP adresse på Internett:
RIPE | Europa, Midtøsten og deler av Sentral-Asia | |
ARIN | Nord-Amerika | |
APNIC | Asia og Stillehavet | |
LACNIC | Latin-Amerika og Karibien | |
AfriNIC | Afrika |
Denne informasjonen samt andre kilder kan brukes til å finne ut hvor i verden en IP adresse hører hjemme. Det finnes kommersielle produkter som lokaliserer IP adresser. Når vi vet hvor de som besøker våre hjemmesider kommer fra, kan vi skreddersy web sidene våre deretter. Noe av denne informasjonen er gratis hos
Nedfor vises html koden og skriptet til en slik skreddersøm:

Websiden vil se slik ut:
Internett adressering (IP)
Figuren
til venstre viser en IP pakke slik den er spesifisert i
RFC 791 -
Internet Protocol. Det er IP protokollen som ruter meldingene i nettverket og
den benytter seg av IP adresser som identifiserer datamaskiner eller andre
enheter (f. eks. rutere) i nettet (internett/ intranett/ekstranett). Formatet
til en IP adresse er en 32-bits adresse som vanligvis angis med fire tall
separert med punktum. Vi deler 32 bit opp i fire byte som hver konverteres til
et desimalt tall mellom 0 og 255. IP adressen deles opp i en nettverks ID og en
datamaskin (host) ID. Nettverksmasken (subnet mask) angir hvilke bit som hører
til nettverk IDen og hvilke bit som hører til host IDen. Den blir brukt til å
finne ut om mottakeren er på samme nett som senderen (dersom en logisk OG
operasjon mellom de to IP adressene og nettverksmasken gir samme resultat). Hvis
ikke, blir pakken sendt til ruteren (Gateway address). Eksempel på ugyldig
nettverksmaske:
Nettverksmasken må være sammenhengende 1’ere til venstre og 0’er til høyre.
IP adressene er delt inn i fem klasser:
Klasse A bruker 8 bit til nettverks ID og 24 bit til host ID. Standard Subnet mask er 255.0.0.0. Det gir 126 mulige nettverk med over 16 millioner vertsmaskineri hvert nett. Nettverks IDen kan være fra 1 til 126 (0xxx xxxx). 127 er reservert til loopback.
Klasse B bruker 16 bit til nettverks ID og 16 bit til host ID. Standard Subnet mask er 255.255.0.0. Det gir 16 384 mulige nettverk med over 65 tusen vertsmaskiner i hvert nett. Nettverk IDens første byte ligger i området 128 til 191 (10xx xxxx.)
Klasse C bruker 24 bit til nettverks ID og 8 bit til host ID. Standard Subnet mask er 255.255.255.0. Det gir over 2 millioner mulige nettverk med inntil 254 vertsmaskiner i hvert nett. Nettverk IDens første byte ligger i området 192 til 223 (110x xxxx).
Klasse D støtter mulitcasting. Datagrammene (pakkene) sendes til en gruppe som identifiseres av nettverks IDen (Host IDen eksisterer ikke). Nettverk IDens første byte ligger i området 224 til 239 (1110 xxxx)
Klasse E, som er reservert for fremtidig bruk, har IP adresser med 240 til 247 (11110xxx)
En bedrift som trenger mer enn 254 IP adresser (Klasse C), men færre enn 65 533 IP adresser (Klasse B), kan benytte seg av såkalt ”supernetting” eller Classless Inter-Domain Routing (CIDR). Det vil si å slå sammen flere inntilliggende Klasse C nettverk, se RFC 1518 - An Architecture for IP Address Allocation with CIDR. Eksempelvis 195.4.168/21, som benytter tjueen bit til Nettverk ID, slå sammen åtte Klasse C nett:
168: 10101000 | 170: 10101010 | 172: 10101100 | 174: 10101110 |
169: 10101001 | 171: 10101011 | 173: 10101101 | 175: 10101111 |
Det kan være verdt å merke seg at med nettverksmaske 255.255.248.0 (248 = 1111 1000) vil IP adressene 195.4.168.x og 195.4.175.x ha samme nettverk ID.
Følgende adresser er reservert for private nettverk i henhold til RFC 1918 - Address Allocation for Private Internets:
10.0.0.0 | - 10.255.255.255 | (10/8) | 32-8 = 24 bit til host ID |
172.16.0.0 | - 172.31.255.255 | (172.16/12) | 32-12 = 20 bit til host ID |
192.168.0.0 | - 192.168.255.255 | (192.168/16) | 32-16 = 16 bit til host ID |
Dersom en datamaskin har en IP adresse som begynner på 169.254, er det store sjanser for at DHCP tjeneren er nede og operativsystemet tildeler seg selv en IP adresse fra området spesifisert i RFC 3330 - Special-Use IPv4 Addresses. Microsoft kaller sin tjeneste Automatic Private IP Address Assignment
Noen eksempler på ugyldige IP adresser for en datamaskin:
IP adresse | Årsaken til at den er ugyldig: |
193.178.256.4 | Tredje oktett er større enn 255 |
127.0.0.1 | Loopback adresse |
245.255.123.49 | Reservert for fremtidig bruk |
162.34.0.0 | Host ID kan ikke bare være 0’er. Dette er en nettverksadresse (Klasse B) |
208.152.84.255 | Kringkasting i nettet 208.152.84.0 (Klasse C) |
255.255.255.255 | Kringkasting. Eksempelvis brukt ved oppstart for å få tildelt en IP adresse av en DHCP tjener |
Da man holdt på å gå tom for IP adresser, utviklet IETF en ny protokoll, RFC 1631- The IP Network Address Translator. Ved bruk av NAT kan flere private IP adresser dele (knyttes til) én offentlig IP adresse og selve prosessen foregår i ruteren. NAT gjør også nettverket sikrere, blant annet fordi det interne nettverket (IP adressene) blir skjult for de på utsiden. Men det er også ulemper forbundet med NAT. IPSec, for eksempel, godtar ikke at noen tukler med IP pakken, inklusiv hodet med sender og mottaker adresse.
En nyere versjon av Internett Protokollen, IPv6, bruker 128 bit i stedet for 32 bit til adressering for å sørge for tilstrekkelig antall IP adresser. Det også gjort noen andre endringer/forbedringer som er beskrevet i RFC 2460 - Internet Protocol, Version 6.