DNS-zone

Protocollen & Standaarden
Een gedeelte van de DNS-naamruimte dat wordt beheerd door een specifieke organisatie of beheerder.
← Terug naar Woordenlijst

Wat is een DNS Zone?

Een DNS zone is een apart deel van de DNS namespace dat wordt beheerd door een specifieke organisatie of beheerder. Een zone bevat DNS-records voor een of meer domeinen en wordt bediend door gezaghebbende nameservers. Terwijl een domein een naam is in de DNS-boom, is een zone een administratieve grens die bepaalt welke nameservers verantwoordelijk zijn voor het beantwoorden van vragen.

Domein vs Zone

Inzicht in het onderscheid is cruciaal:

Domein

Een domein is een naam in de DNS hiërarchie:

example.com (domain)

└── www.example.com (subdomain)

└── blog.example.com (subdomain)

└── api.example.com (subdomain)

Zone

Een zone is administratieve controle van de registers:

Single Zone for Domain and Subdomeins:
example.com zone contains:

- example.com

- www.example.com

- blog.example.com

- api.example.com

Managed by: ns1.example.com, ns2.example.com

Gedelegeerde Subdomein Zone:
example.com zone contains:

- example.com

- www.example.com

- Delegation: api.example.com → different nameservers

api.example.com zone (separate) contains:

- api.example.com

- v1.api.example.com

- v2.api.example.com

Managed by: ns1.apihost.com, ns2.apihost.com

Zonecomponenten

Zonebestand

Een tekstbestand met alle DNS-records voor een zone:

; example.com zone file

$TTL 3600

@ IN SOA ns1.example.com. admin.example.com. (

2024010101 ; Serial

7200 ; Refresh

3600 ; Retry

1209600 ; Expire

3600 ; Minimum TTL

)

; Nameserver records

@ IN NS ns1.example.com.

@ IN NS ns2.example.com.

; A records

@ IN A 203.0.113.50

www IN A 203.0.113.50

blog IN A 203.0.113.51

; MX records

@ IN MX 10 mail.example.com.

mail IN A 203.0.113.52

; CNAME records

ftp IN CNAME www.example.com.

; TXT records

@ IN TXT "v=spf1 include:_spf.google.com ~all"

SOA-record (Start of Authority)

Elke zone moet precies één SOA record hebben:

example.com.  IN  SOA  ns1.example.com. admin.example.com. (

2024010101 ; Serial

7200 ; Refresh

3600 ; Retry

1209600 ; Expire

3600 ; Minimum TTL

)

SOA Fields:
VeldBetreftVoorbeeldwaarde
Primaire NSMaster nameserverns1.example.com
E-mail adminContact (@ → .)admin.example.com (admin@example.com)
SerieelZoneversienummer2024010101
VerversenSecundaire NS-controleinterval7200s (2 uur)
Opnieuw probereninterval opnieuw proberen als vernieuwen mislukt3600 (1 uur)
VerlopenSecundaire NS geeft op na1209600s (14 dagen)
Minimale TTLNegatieve caching duur3600 (1 uur)

NS-records (Nameservers)

Geef aan welke servers gezaghebbend zijn voor de zone:

example.com.  IN  NS  ns1.example.com.

example.com. IN NS ns2.example.com.

Deze vertellen de wereld welke servers moeten zoeken naar records in deze zone.

Zonetypes

Primaire zone (Master)

De gezaghebbende bron waar zonerecords worden bewerkt:

ns1.example.com (primary)

→ Zone file edited here

→ Changes made directly

→ Notifies secondaries of updates

Secundaire zone (Slave)

Alleen-lezen kopieën die repliceren van primaire:

ns2.example.com (secondary)

→ Retrieves zone data from primary

→ Cannot be edited directly

→ Automatically syncs based on SOA refresh interval

Zone Transfer (AXFR):
1. Secondary checks SOA serial number

2. If primary serial is higher → request full zone transfer

3. Primary sends entire zone

4. Secondary updates its copy

Incrementele overdracht (IXFR):
1. Secondary requests only changes since last serial

2. Primary sends diff

3. More efficient for large zones with small changes

Voorwaartse zone

Maps domeinnamen naar IP-adressen (meest voorkomende):

example.com → 203.0.113.50

www.example.com → 203.0.113.50

Omgekeerde zone

Kaarten IP adressen naar domeinnamen (PTR records):

50.113.0.203.in-addr.arpa → example.com

Gebruikt voor:

Delegatie zone

Delegatie creëert aparte zones voor subdomeinen:

Ouderzone (example.com)

; example.com zone

@ IN A 203.0.113.50

www IN A 203.0.113.50

; Delegate api.example.com to different nameservers

api IN NS ns1.apihost.com.

api IN NS ns2.apihost.com.

; Glue records (if needed)

ns1.api IN A 198.51.100.1

ns2.api IN A 198.51.100.2

Gedelegeerde Zone (api.example.com)

Volledig gescheiden zone bestand op verschillende nameservers:

; api.example.com zone (on ns1.apihost.com)

@ IN A 198.51.100.10

v1 IN A 198.51.100.11

v2 IN A 198.51.100.12

Waarom afgevaardigde?

Gebiedsbeheer

Beheer van serienummers

Serienummers track zone versies (typisch JJJJMMDDnn formaat):

2024010101  ; January 1, 2024, version 01

2024010102 ; January 1, 2024, version 02

2024010201 ; January 2, 2024, version 01

Kritieke regel: Serie moet toenemen met elke verandering, of de secondaries zullen niet updaten.

Zoneoverdrachtbeveiliging

Probleem: Zone transfers onthullen alle DNS records Oplossing: Zoneoverdrachten beperken naar toegestane secondaries BIND configuratie:
zone "example.com" {

type master;

file "/var/named/example.com.zone";

allow-transfer { 203.0.113.52; 203.0.113.53; }; // Secondary IPs only

notify yes;

};

TSIG (Transaction Signature): Authenticeer zonetransfers met gedeelde sleutels:
key "transfer-key" {

algorithm hmac-sha256;

secret "base64-encoded-key";

};

allow-transfer { key transfer-key; };

Controle van zoneconfiguratie

Zoek SOA Record

dig example.com SOA

; ANSWER SECTION:

example.com. 3600 IN SOA ns1.example.com. admin.example.com. (

2024010101 7200 3600 1209600 3600 )

NS-records opvragen

dig example.com NS

; ANSWER SECTION:

example.com. 86400 IN NS ns1.example.com.

example.com. 86400 IN NS ns2.example.com.

Verzoekzoneoverdracht (AXFR)

dig @ns1.example.com example.com AXFR

# If allowed, returns entire zone

# If denied, returns transfer failed

De meeste publieke naamservers weigeren AXFR om openbaarmaking van informatie te voorkomen.

Gemeenschappelijke zoneconfiguraties

Eenvoudige website

example.com zone:

@ A 203.0.113.50

www A 203.0.113.50

@ MX 10 mail.example.com

mail A 203.0.113.51

@ TXT "v=spf1 mx -all"

Multiservicezone

example.com zone:

@ A 203.0.113.50

www A 203.0.113.50

blog CNAME hosting.wordpress.com.

shop CNAME shops.myshopify.com.

cdn CNAME d111111abcdef8.cloudfront.net.

@ MX 10 aspmx.l.google.com.

Gedelegeerde subdomeinen

example.com zone:

@ A 203.0.113.50

www A 203.0.113.50

; Delegate api to AWS Route 53

api NS ns-123.awsdns-01.com.

api NS ns-456.awsdns-02.net.

; Delegate cdn to Cloudflare

cdn NS ns1.cloudflare.com.

cdn NS ns2.cloudflare.com.

Zonebestand Beste praktijken

1. Altijd seriële * verhogen: Na elke verandering, of seconden zullen niet bijwerken

2. Op datum gebaseerde series gebruiken: Formaat JJJJMMDDnn voor duidelijkheid

3. Restricte zone transfers: Alleen toegestane secondaries toestaan

4. Gebruik meerdere nameservers: Minstens 2, bij voorkeur op verschillende netwerken

5. Set passende TTLs: Balans caching voordelen vs update snelheid

6. Test voor de aanvraag: Syntaxis zonebestand valideren voor het laden

7. Monitor zone transfers: Zorg ervoor dat Secondaries synchroniseren

8. De delegaties van documenten: Noteer welke zones worden gedelegeerd en waar

9. Backup zone bestanden: Regelmatige back-ups voorkomen verlies van gegevens

10. Versiecontrole gebruiken: Track zonebestand verandert in de tijd

Geavanceerde zonefuncties

DNSSEC (Zone Signing)

Cryptografische registratie van de zone:

example.com.  IN  A       203.0.113.50

example.com. IN RRSIG A 8 2 3600 (

signature-data-here )

Beschermt tegen cache vergiftiging en manipulatie.

Dynamische DNS (DDNS)

Programmatische zone-updates toestaan:

# Update A record dynamically

nsupdate -k Kupdate.key <<EOF

server ns1.example.com

update delete www.example.com A

update add www.example.com 300 A 203.0.113.51

send

EOF

Handig voor:

Zoneweergaven (Split Horizon DNS)

Serveer verschillende zonegegevens op basis van client IP:

Internal clients: example.com → 10.0.0.50 (internal)

External clients: example.com → 203.0.113.50 (public)

Use cases:

Problemen met de zone oplossen

Zoneoverdrachtsfouten

Symptoom: Seconden uit synchronisatie

*Check:

# Check if primary allows transfers

dig @ns1.example.com example.com AXFR

# Check secondary logs for errors

tail -f /var/log/named.log

Oplossingen:
  • Verifiëren van toelaatbare overdracht-instellingen
  • Controleer netwerkverbinding tussen servers
  • Zorg ervoor dat het serienummer toeneemt

Serienummer wordt niet verhoogd

Symptoom: Veranderingen die zich niet voortplanten in secondaries Oplossing: Altijd seriële verhogen bij elke zonebewerking

Delegatie werkt niet

Symptoom**: Subdomein wordt niet opgelost

*Check:

# Verify delegation

dig example.com NS

dig api.example.com NS

# Should show different nameservers for delegated subdomain

Oplossingen**:

DNS zones zijn de basis van gedistribueerde DNS management . understanding zone structuur, delegatie en beheer stelt u in staat om architect DNS effectief voor organisaties van elke grootte.

Pas Deze Kennis Toe

Gebruik de API van DomScan om domeinbeschikbaarheid, gezondheid en meer te controleren.