Ifølge Den In­ter­na­tio­na­le Tele­kom­mu­ni­ka­tions­u­ni­on (ITU) bruger mere end tre mil­li­ar­der mennesker in­ter­net­tet, og det sker i stigende grad på deres modersmål. Denne udvikling skyldes blandt andet ind­fø­rel­sen af in­ter­na­tio­na­le do­mæ­ne­nav­ne i 2003. Vi vil her forklare, hvordan IDN-domæner fungerer.

Hvad er et in­ter­na­tio­na­li­se­ret do­mæ­ne­navn (IDN)?

IETF (Internet En­gi­ne­e­ring Task Force) definerer IDN’er som do­mæ­ne­nav­ne, der in­de­hol­der spe­ci­al­tegn, som ikke indgår i det latinske alfabet, f.eks. umlauter eller tegn fra andre alfabeter. DNS (Domain Name System), som har til opgave at oversætte URL’er til IP-adresser, kan imid­ler­tid ikke fortolke disse do­mæ­ne­nav­ne. DNS er baseret på det be­græn­se­de stan­dard­tegn­sæt ASCII.

For at gøre IDN’er for­stå­e­li­ge for både DNS og andre in­ter­net­pro­tokol­ler blev in­ter­net­stan­dar­den »In­ter­na­tio­na­li­sing Domain Names in Ap­pli­ca­tions« (IDNA) indført i 2003. Denne standard definerer en stan­dar­di­se­ret over­sæt­tel­se fra Unicode til ASCII, hvilket gør det muligt at anvende ikke-ASCII-tegn i do­mæ­ne­nav­ne.

Hvordan fungerer IDNA?

En stor del af in­ter­net­tets in­fra­struk­tur un­der­støt­ter kun ASCII-tegn­sæt­tet. For at sikre, at in­ter­na­tio­na­le do­mæ­ne­nav­ne kan behandles, over­sæt­tes hvert IDN, der findes i Unicode, til en ASCII-kom­pa­ti­bel streng. Herefter vises URL-adresser, der in­de­hol­der tegn med accenter eller umlauter. Serveren fort­sæt­ter derimod med at behandle adres­ser­ne som ASCII-kom­pa­tib­le. Denne procedure er spe­ci­fi­ce­ret i in­ter­net­stan­dar­den IDNA2003 og i re­vi­sio­nen IDNA2008, som blev godkendt i 2010. Over­sæt­tel­sen fra Unicode til ASCII foregår på kli­ent­si­den (i browseren, e-mail­pro­gram­met osv.) og er baseret på en stan­dar­di­se­ret kod­nings­pro­ces kaldet Punycode.

Punycode

Punycode, der er stan­dar­di­se­ret i RFC 3492, blev udviklet til at vise Unicode-tegn­stren­ger tydeligt som ASCII-tegn uden tab af kvalitet. Alle ikke-ASCII-tegn fjernes fra do­mæ­ne­nav­net, kodes og adskilles med en bin­de­streg. Denne ko­de­streng in­de­hol­der op­lys­nin­ger om det på­gæl­den­de Unicode-tegn samt dets placering i do­mæ­ne­nav­net. Derudover mærkes hver ACE-streng, der oprettes på denne måde, med præfikset xn–. Dette gør det klart for læseren, at tegn­se­kven­sen er et IDN, der er kodet i henhold til IDNA- og Punycode-stan­dar­der­ne. Se vores artikel om Punycode for en de­tal­je­ret for­kla­ring af kod­nings­pro­ces­sen samt nogle eksempler.

Tip

Med en online IDN-do­mæ­ne­kon­ver­ter kan du kon­ver­te­re IDN’er til de til­hø­ren­de ACE-strenge ved hjælp af Punycode.

Forskelle mellem IDNA2003 og IDNA2008

I den op­rin­de­li­ge procedure fra 2003 blev in­ter­na­tio­na­li­se­re­de URL-adresser nor­ma­li­se­ret inden Punycode-kodningen ved hjælp af nameprep-metoden. Denne metode omdannede store bogstaver til små bogstaver, fjernede kon­trol­tegn og omdannede ækvi­va­len­te tegn til en ensartet form. Nameprep blev fjernet fra denne proces, da IDNA2008 blev indført. I dag fo­re­skri­ver IDNA ikke nogen form for nor­ma­li­se­ring. I stedet anbefaler stan­dar­den en algoritme, der omdanner store bogstaver til små bogstaver.

Denne til­pas­ning imø­de­kom­mer også brugere i det tysk­ta­len­de område, da Unicode-tegnet »ß«, som er al­min­de­ligt i Tyskland, op­rin­de­ligt blev defineret som svarende til »ss« i henhold til IDNA2003. Domæner som f.eks. www.fußball-ergebnisse.de blev derfor au­to­ma­tisk nor­ma­li­se­ret til www.fussball-ergebnisse.de i nameprep-processen. Dette er ikke længere tilfældet, siden IDNA2008 trådte i kraft. Siden 2010 fortolkes ‘ß’ korrekt som ‘Latin small letter sharp s’ og kan re­gi­stre­res som en del af et IDN-domæne.

Derudover un­der­støt­tes omkring 8.000 tegn, som tidligere var tilladt i do­mæ­ne­nav­ne under IDNA2003, ikke længere under IDNA2008. Fire tegn, herunder »ß«, fortolkes an­der­le­des, efter at stan­dar­den blev revideret. For en de­tal­je­ret gen­nem­gang af for­skel­le­ne mellem IDNA2003 og IDNA2008 henvises til Unicode Technical Standard #46. Ne­den­stå­en­de tabel giver et overblik over de væ­sent­lig­ste forskelle:

IDNA2003 IDNA2008
Nameprep-procedure påkrævet Ingen nor­ma­li­se­ring angivet
Gælder for Unicode 3.2 Gælder for Unicode-versioner fra 5.2 og frem
Strenge regler for skrift­ty­per, der skrives fra højre mod venstre Ty­de­li­ge­re regler for skrift­ty­per, der skrives fra højre mod venstre
Store og små bogstaver betragtes som separate tegn Store bogstaver kon­ver­te­res til små bogstaver
Mange symboler er forbudt, f.eks. grafiske symboler, der ikke hører til noget alfabet, samt visse tegn­sæt­nings­tegn
“Remapping” fjernet fra nogle Unicode-tegn, da dette kunne føre til ur­e­gel­mæs­sig­he­der

Hvilke problemer er der med IDN’er?

I dag bør alle al­min­de­li­ge in­ter­net­pro­gram­mer kunne håndtere IDN. Der opstår dog stadig problemer med in­ter­na­tio­na­li­se­re­de do­mæ­ne­nav­ne, fordi over­gan­gen fra IDNA2003 til IDNA2008 endnu ikke er blevet im­ple­men­te­ret kon­se­kvent. Et eksempel, der er pro­ble­ma­tisk for tysk, er den for­skel­li­ge for­tolk­ning af »ß«. Da IDNA2003 ob­liga­to­risk kon­ver­te­rer ‘ß’ til ‘ss’, kan specielle ß-domæner, der kan re­gi­stre­res i henhold til IDNA2008, ofte ikke findes af systemer, der kon­ver­te­rer i henhold til den forældede standard. I stedet dirigeres brugerne til det til­sva­ren­de domæne, der in­de­hol­der ‘ss’. Dette problem kan omgås ved, at web­s­teds­o­pe­ra­tø­rer re­gi­stre­rer begge varianter og om­di­ri­ge­rer det andet domæne til den pri­o­ri­te­re­de stavemåde ved hjælp af en do­mæ­neom­di­ri­ge­ring.

Gå til ho­ved­me­nu­en