Maak kennis met PostScale -- e-mail-API voor transactionele, inkomende en gemaskeerde adressen. PostScale

    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.1

    Querystroom:

    1. Client vraagt om blog.example.com
    2. DNS retourneert CNAME die wijst naar example.com
    3. DNS resolvet vervolgens example.com naar 192.0.2.1
    4. 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

    VeldBeschrijvingVoorbeeld
    NaamSubdomein om te aliasenwww, blog, api
    TypeRecordtypeCNAME
    InhoudDoeldomeinnaamexample.com.
    TTLTime 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

    1. Navigeer naar je zone in het DNScale-dashboard
    2. Klik op Add Record
    3. 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)
    4. 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

    1. Gebruik afsluitende punten - De doeldomeinnaam moet technisch gezien eindigen met een punt (bijv. example.com.), hoewel DNScale dit automatisch afhandelt

    2. Controleer op conflicten - Zorg dat er geen andere records bestaan op de CNAME-naam

    3. Overweeg TTL zorgvuldig - Gebruik kortere TTL's als het doel kan veranderen (bijv. tijdens CDN-migraties)

    4. Keten niet te veel CNAME's - Hoewel DNS CNAME-ketens toestaat, voegen ze latentie en complexiteit toe

    5. Gebruik ALIAS voor apex - Als je CNAME-achtig gedrag nodig hebt op het rootdomein, gebruik dan ALIAS-records

    CNAME vs ALIAS vs A-record

    EigenschapCNAMEALIASA
    Wijst naarDomeinnaamDomeinnaamIP-adres
    Werkt op apexNeeJaJa
    Kan naast andere records bestaanNeeJaJa
    Extra DNS-lookupJaNee (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.com

    Gerelateerde 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.