CNAME-records uitgelegd
Begrijp hoe CNAME-records werken, hun beperkingen en wanneer je ze moet gebruiken. Inclusief voorbeelden voor het DNScale-dashboard en de API.
Een CNAME (Canonical Name) record maakt een alias aan van de ene domeinnaam naar de andere. In plaats van naar een IP-adres te wijzen, wijst een CNAME naar een andere domeinnaam, die vervolgens wordt geresolved om het uiteindelijke IP-adres te verkrijgen.
Hoe CNAME-records werken
Wanneer een DNS-resolver een CNAME-record tegenkomt, volgt deze de alias om het daadwerkelijke IP-adres te vinden:
blog.example.com. 3600 CNAME example.com.
example.com. 3600 A 192.0.2.1Querystroom:
- Client vraagt om
blog.example.com - DNS retourneert CNAME die wijst naar
example.com - DNS resolvet vervolgens
example.comnaar192.0.2.1 - Client maakt verbinding met
192.0.2.1
Veelvoorkomende toepassingen
Subdomeinaliassen
Wijs meerdere subdomeinen naar dezelfde bestemming:
www.example.com. 3600 CNAME example.com.
blog.example.com. 3600 CNAME example.com.
shop.example.com. 3600 CNAME example.com.CDN-integratie
Wijs je domein naar een CDN-provider:
www.example.com. 3600 CNAME d1234.cloudfront.net.
static.example.com. 3600 CNAME example.b-cdn.net.Cloudservice-integratie
Wijs subdomeinen naar cloudplatforms:
app.example.com. 3600 CNAME myapp.herokuapp.com.
docs.example.com. 3600 CNAME example.gitbook.io.E-mailserviceverificatie
Veel e-maildiensten vereisen CNAME-records:
em1234.example.com. 3600 CNAME u1234.wl.sendgrid.net.Recordformaat
| Veld | Beschrijving | Voorbeeld |
|---|---|---|
| Naam | Subdomein om te aliasen | www, blog, api |
| Type | Recordtype | CNAME |
| Inhoud | Doeldomeinnaam | example.com. |
| TTL | Time to live (seconden) | 3600 |
Belangrijke beperkingen
1. Kan niet gebruikt worden op het apex-/rootdomein
CNAME-records kunnen niet worden gebruikt op het rootdomein (apex):
# NIET TOEGESTAAN
example.com. CNAME other.com.
# WEL TOEGESTAAN
www.example.com. CNAME other.com.Gebruik voor apex-domeinen in plaats daarvan ALIAS-records.
2. Moet het enige record op die naam zijn
Een CNAME kan niet naast andere recordtypen bestaan op dezelfde naam:
# NIET TOEGESTAAN - conflicteert met CNAME
www.example.com. CNAME example.com.
www.example.com. TXT "verification=abc123"
# WEL TOEGESTAAN - CNAME is het enige record
www.example.com. CNAME example.com.3. Voegt lookupvertraging toe
Elke CNAME introduceert een extra DNS-lookup, wat de latentie kan verhogen. Overweeg voor prestatiekritische toepassingen om rechtstreeks A/AAAA-records te gebruiken.
Een CNAME-record toevoegen
Via het dashboard
- Navigeer naar je zone in het DNScale-dashboard
- Klik op Add Record
- Configureer het record:
- Name: Voer het subdomein in (bijv.
www,blog) - Type: Selecteer
CNAME - Value: Voer de doeldomeinnaam in
- TTL: Stel de cacheduur in (standaard: 3600)
- Name: Voer het subdomein in (bijv.
- Klik op Create Record
Via de API
Een CNAME-record aanmaken:
curl -X POST "https://api.dnscale.eu/v1/zones/{zone_id}/records" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "www",
"type": "CNAME",
"content": "example.com",
"ttl": 3600
}'Subdomein naar CDN wijzen:
curl -X POST "https://api.dnscale.eu/v1/zones/{zone_id}/records" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "cdn",
"type": "CNAME",
"content": "d1234567.cloudfront.net",
"ttl": 3600
}'API-antwoord:
{
"status": "success",
"data": {
"message": "Record created successfully",
"record": {
"id": "encoded-record-id",
"name": "www.example.com.",
"type": "CNAME",
"content": "example.com.",
"ttl": 3600,
"disabled": false
}
}
}Best practices
-
Gebruik afsluitende punten - De doeldomeinnaam moet technisch gezien eindigen met een punt (bijv.
example.com.), hoewel DNScale dit automatisch afhandelt -
Controleer op conflicten - Zorg dat er geen andere records bestaan op de CNAME-naam
-
Overweeg TTL zorgvuldig - Gebruik kortere TTL's als het doel kan veranderen (bijv. tijdens CDN-migraties)
-
Keten niet te veel CNAME's - Hoewel DNS CNAME-ketens toestaat, voegen ze latentie en complexiteit toe
-
Gebruik ALIAS voor apex - Als je CNAME-achtig gedrag nodig hebt op het rootdomein, gebruik dan ALIAS-records
CNAME vs ALIAS vs A-record
| Eigenschap | CNAME | ALIAS | A |
|---|---|---|---|
| Wijst naar | Domeinnaam | Domeinnaam | IP-adres |
| Werkt op apex | Nee | Ja | Ja |
| Kan naast andere records bestaan | Nee | Ja | Ja |
| Extra DNS-lookup | Ja | Nee (geresolved bij autoritatieve server) | Nee |
CNAME-records testen
Verifieer je CNAME-record met dig:
dig CNAME www.example.com
# Volg de keten om het uiteindelijke IP te verkrijgen
dig +trace www.example.comGerelateerde recordtypen
- A - Directe IPv4-toewijzing
- AAAA - Directe IPv6-toewijzing
- ALIAS - CNAME-achtig gedrag voor apex-domeinen
Conclusie
CNAME-records zijn onmisbaar voor het vereenvoudigen van DNS-beheer, vooral bij integratie met diensten van derden. Het begrijpen van hun beperkingen — met name rond apex-domeinen en recordcoexistentie — helpt je de juiste keuze te maken tussen CNAME, ALIAS en directe A/AAAA-records.