Subdomæner og wildcards
Modul 3: Records til din hjemmeside · Læsetid: 7 minutter
Læringsmål: Efter denne lektion kan du oprette et subdomæne via DNS og forklare hvordan en wildcard fungerer, og hvor den ikke gælder.
Nøglebegreber: subdomæne, wildcard (*), "et eksisterende navn vinder", wildcard og dybere niveauer, subdomæne i hostingpanelet versus kun et DNS-record
Hvad er et subdomæne?
Et subdomæne er et navn foran dit domænenavn: shop.example.com, blog.example.com, mail.example.com. Også www.example.com er teknisk set bare et subdomæne. Du behøver ikke registrere eller betale for det: den der ejer domænet example.com, kan selv oprette lige så mange navne, som han vil, under det. Et subdomæne opstår ved at lave et record for det.
Et subdomæne kan også have flere niveauer: test.shop.example.com er helt fint. Hver del mellem punktummerne må maks være 63 tegn, og hele navnet maks 253 tegn.
To slags subdomæner
I praksis betyder "at oprette et subdomæne" to forskellige ting, og det forvirrer mange mennesker.
1. Kun et DNS-record. Du opretter i DNS et A-, AAAA- eller CNAME-record for shop. Dermed ved verden hvor shop.example.com ligger. Peger det på en ekstern tjeneste, som en webshopplatform, så er du færdig: den tjeneste styrer selve hjemmesiden.
shop.example.com. 3600 IN CNAME shops.platform.example.2. Et subdomæne i dit hostingpanel. I et hostingpanel kan du også oprette et subdomæne. Så sker der to ting: panelet opretter (hvis DNS administreres der) et record i DNS, og det sætter webserveren op med en egen mappe til filerne for det subdomæne. Det har du brug for, hvis hjemmesiden for subdomænet skal ligge på din egen hosting, for eksempel en anden WordPress på blog.example.com.
To faldgruber:
- Administreres din DNS et andet sted end hos din hosting (andre navneservere, se lektion 2.1), så sætter panelet recordet et sted som ingen slår op. Opret i stedet recordet selv hos den part der administrerer DNS'en.
- Vil du have at et subdomæne skal pege på en ekstern tjeneste, så opret det ikke i hostingpanelet, men kun som DNS-record. Ellers får du to records for samme navn, som kommer i vejen for hinanden.
Wildcarden: ét record for alle navne
En wildcard er et record med en stjerne som navn:
*.example.com. 3600 IN A 192.0.2.10Det betyder: "ethvert navn under example.com, som ellers ikke findes i zonen, peger på 192.0.2.10". Spørger nogen efter blog.example.com, test.example.com eller wat-dan-ook.example.com, og findes det navn ikke separat, så giver DNS'en svaret fra wildcarden.
Mange hostingpakker opretter som standard en wildcard. Derfor virker et nyt subdomæne i hostingpanelet med det samme, uden at der skal et separat record til for hvert navn. Også www virker så automatisk.
Hvor en wildcard ikke gælder
Reglerne for wildcards står i RFC 4592. Tre ting er gode at vide.
Et eksisterende navn vinder. Findes der et eget record for shop.example.com, bruges wildcarden ikke for det navn. Heller ikke for andre recordtyper: har shop kun en CNAME, giver wildcarden heller ikke et A-record for shop længere. En wildcard er altså et sikkerhedsnet for navne der slet ikke findes.
*.example.com. A 192.0.2.10
www.example.com. CNAME shops.platform.example.Her går blog.example.com til 192.0.2.10, men www.example.com til platformen.
En wildcard gælder ikke for det rene domænenavn (apex). *.example.com fanger ikke example.com selv op. Det kræver sit eget record.
En wildcard gælder ikke under et navn der findes. Findes shop.example.com, fanger *.example.com ikke navnet test.shop.example.com. Wildcarden virker kun for navne hvor hele "stien" ikke findes. Findes shop ikke, falder test.shop.example.com derimod ind under wildcarden. Vil du have en wildcard under shop, opretter du *.shop.example.com.
En wildcard, certifikater og tastefejl
En wildcard i DNS siger kun hvor et navn peger hen. Vær opmærksom på to ting:
- Et certifikat. For https på hvert subdomæne har du brug for et certifikat der dækker de navne. Et wildcardcertifikat (
*.example.com) er noget andet end et wildcardrecord, og bestilles separat. Let's Encrypt udsteder kun wildcardcertifikater via en kontrol i DNS'en. - Tastefejl. Med en wildcard virker også
ww.example.comellerwwww.example.com. Det kan være praktisk, men det betyder også at ethvert tænkeligt navn giver et svar. Nogle administratorer ønsker netop ikke det.
I praksis: sådan ser det ud i et panel
Som eksempel bruger vi DirectAdmin. Andre paneler (cPanel, Plesk) har en lignende skærm for subdomæner.
- Åbn Administration af underdomæner og klik på Tilføj subdomæne.
- Skriv kun den første del, for eksempel
shop. - Vælg mappen til filerne, eller behold standarden.
- Gem.
Vil du have at subdomænet skal pege på en ekstern tjeneste, så spring denne skærm over og opret kun et record i DNS-administration (lektion 3.1 eller 3.2).
Opsummering
- Et subdomæne opstår ved at lave et record for det; registrering er ikke nødvendig.
- Kun et DNS-record er nok, hvis en ekstern tjeneste leverer hjemmesiden. Et subdomæne i hostingpanelet har du brug for, hvis siden ligger på din egen hosting.
- En wildcard
*.example.combesvarer alle navne der ellers ikke findes. - Et eksisterende navn vinder altid over wildcarden; wildcarden gælder ikke for det rene domænenavn og ikke under et navn der findes.
- Et wildcardrecord er ikke et wildcardcertifikat.
Quiz
Opgave
Opgave Z3.3: Find en wildcard. Undersøg om github.io bruger en wildcard. Slå A-recordet op for et navn der med stor sikkerhed ikke findes separat, for eksempel dnscursus- efterfulgt af nogle tilfældige bogstaver .github.io. Får du en IP-adresse tilbage, så angiv ja og den adresse du fik.
Opgave O3.3: Opsæt det selv i din øvelseszone. Opret i din øvelseszone:
- et wildcard-record
*(type A) med værdien192.0.2.20 - et A-record
vastmed værdien192.0.2.21
Programmet kontrollerer derefter tre navne: et tilfældigt navn (det skal give wildcarden), vast (det skal give sin egen adresse) og den rene øvelseszone (apex).
Opgave O3.3
Denne opgave laver du i din egen øvelseszone: en rigtig DNS-zone på WebOkés navneservere, kun til dig. Tilmeld dig med din e-mailadresse. Du får et login-link på mail og kommer derefter tilbage til denne lektion. Vi bruger kun din adresse til kurset.
Læs mere
Disse artikler beskriver trinnene i WebOkés paneler; i andre paneler fungerer det på lignende vis.
