Wat is een SOA-record?
Het SOA-record (Start of Authority) is een verplicht DNS-record met essentiële administratieve informatie over een DNS-zone. Elke DNS-zone moet precies één SOA-record aan de top van de zone hebben. Het definieert de primaire nameserver, het contact van de verantwoordelijke beheerder, het serienummer van de zone en de timingparameters voor zoneoverdrachten en caching. Het SOA-record vestigt de autoriteit en levert belangrijke metadata voor DNS-bewerkingen.
Structuur van een SOA-record
Componentvelden
example.com. IN SOA ns1.example.com. admin.example.com. (
2024010101 ; Serial number
3600 ; Refresh (1 hour)
900 ; Retry (15 minutes)
604800 ; Expire (1 week)
86400 ; Minimum TTL (1 day)
)
Uitleg per veld
| Veld | Doel | Gebruikelijke waarde |
|---|---|---|
| MNAME | Primaire nameserver | ns1.example.com |
| RNAME | Beheerders-e-mail (@ vervangen door .) | admin.example.com |
| Serial | Versienummer van de zone | YYYYMMDDnn |
| Refresh | Controle-interval voor secundaire servers | 3600-86400 |
| Retry | Opnieuw proberen na mislukte vernieuwing | 900-3600 |
| Expire | Secundaire server geeft het op | 604800-2419200 |
| Minimum | TTL voor negatieve caching | 300-86400 |
SOA-recordvelden uitgelegd
MNAME (primaire nameserver)
De gezaghebbende nameserver voor de zone:
- Moet een geldige, resolveerbare hostnaam zijn
- Verwijst naar de primaire DNS-server
- Wordt door secundaire servers gebruikt om de bron te identificeren
RNAME (verantwoordelijke persoon)
E-mailadres van de beheerder:
admin.example.com = [email protected]
hostmaster.example.com = [email protected]
Opmerking: de eerste punt vervangt het @-symbool
Serienummer
Versieaanduiding voor de zonegegevens:
Common format: YYYYMMDDnn
Example: 2024010102 (Jan 1, 2024, revision 2)
Must increment with every zone change
Secondaries compare to know if updates needed
Timingparameters
Bepalen het gedrag van zoneoverdrachten en caching:
Refresh: hoe vaak secundaire servers op updates controlerenRecommended: 3600-86400 seconds (1-24 hours)
Retry: wachttijd na een mislukte refresh-poging
Recommended: 900-3600 seconds (15-60 minutes)
Expire: wanneer secundaire servers stoppen met het serveren van de zone
Recommended: 604800-2419200 seconds (1-4 weeks)
Minimum TTL: duur van negatieve caching
How long to cache "domain doesn't exist" responses
Recommended: 300-86400 seconds
SOA-records bekijken
Met dig
dig example.com SOA
# Output:
example.com. 3600 IN SOA ns1.example.com. admin.example.com. 2024010101 3600 900 604800 86400
Met nslookup
nslookup -type=SOA example.com
Beste praktijken voor SOA-records
1. Verhoog het serienummer bij elke wijziging: cruciaal voor zoneoverdrachten
2. Gebruik een betekenisvol serienummerformaat: YYYYMMDD## wordt aanbevolen
3. Stel passende timers in: breng actualiteit en serverbelasting in balans
4. Gebruik een geldig contactadres: de beheerder moet bereikbaar zijn
5. Zorg dat MNAME resolveerbaar is: het moet naar een geldige NS verwijzen
Veelvoorkomende SOA-problemen
| Probleem | Oorzaak | Oplossing |
|---|---|---|
| Zoneoverdracht mislukt | Serienummer niet verhoogd | Werk het serienummer altijd bij |
| Verouderde gegevens op secundaire servers | Refresh te lang | Verklein het refresh-interval |
| Hoge DNS-belasting | Refresh te kort | Vergroot het refresh-interval |
| NXDOMAIN te lang gecachet | Hoge minimum-TTL | Verlaag de minimumwaarde |
Het SOA-record is het fundamentele administratieve record voor elke DNS-zone. Het regelt de synchronisatie tussen primaire en secundaire nameservers en bepaalt het cachinggedrag voor de hele zone.