SPF-controle:
blijft uw record binnen de limiet van 10 lookups?
Voer een domein in — wij halen de TXT-records op, isoleren de v=spf1, klappen elke include recursief uit en tellen de DNS-lookups tegen SPF’s budget van 10. Overschrijdt u dat, dan geeft SPF stilzwijgend permerror terug — bescherming uit, geen bounce, geen waarschuwing.
Vier manieren waarop SPF zonder waarschuwing breekt
Als SPF breekt, wordt mail gewoon nog verzonden — ontvangers stoppen alleen met de controle ervan. Elk van deze vier is onzichtbaar vanuit uw postvak Uit — en overduidelijk bij een volledige parse.
De limiet van 10 lookups
Elke include, a, mx kost één DNS-lookup — geneste includes ook. Het budget is 10. Lookup #11 degradeert niets: het hele record geeft permerror terug en SPF staat uit.
RFC 7208 §4.6.4Het tweede record
Twee TXT-records die beginnen met v=spf1 smelten niet samen — beide worden direct ongeldig. De klassieke oorzaak: een plugin of bureau „voegde” SPF toe in plaats van het bestaande record te bewerken.
meerdere = permerror+all autoriseert elke verzender
+all betekent „en iedereen anders krijgt ook een pass.” Het autoriseert het hele internet om namens u te verzenden — elke spammer inbegrepen. Eén teken scheidt het van -all, wat het omgekeerde betekent.
erger dan geen recordDe verouderde include
De leverancier die u in 2023 achterliet, staat nog steeds in uw record. Is hun domein offline, dan levert dat void-lookups en permerror op. Leeft het nog, dan kunnen hun huidige klanten nog steeds mail sturen die namens u slaagt.
jaarlijks controleren-all, ~all, ?all en de bijzondere gevallen
Het laatste mechanisme bepaalt wat er gebeurt met mail van een IP dat u niet vermeldde. Een paar bijzondere gevallen bepalen de rest.
„Niet op mijn lijst? Weiger het.” Het strikte, juiste einde — mits de lijst ervoor compleet is en het record parseert. Strengheid telt alleen als de rest klopt.
„Niet op mijn lijst? Accepteer het, maar markeer het.” Bedoeld als uitrolfase, daarna voor altijd behouden. Met DMARC erbovenop faalt onbevoegde mail nog steeds — zonder DMARC is het een schouderophalen.
„Niet op mijn lijst? Geen mening.” Cryptografisch gelijk aan helemaal geen SPF publiceren — ontvangers leren niets. Meestal een restant van een gekopieerd sjabloon.
„Niet op mijn lijst? Ze slagen toch.” Het hele internet is nu bevoegd om namens uw domein te verzenden — en mail die er eigenlijk vervalst uit zou moeten zien, krijgt in plaats daarvan een SPF-pass.
Reverse-DNS-matching: traag, onbetrouwbaar en sinds 2014 formeel „SHOULD NOT be used”. Het kost een lookup, kan zonder waarschuwing een verkeerde match geven, en sommige ontvangers slaan het volledig over.
Te veel lookups, twee records, een syntaxfout, een dode include — het resultaat is hetzelfde: ontvangers behandelen uw domein alsof het geen geldige SPF heeft. Mail blijft gewoon stromen. Niemand vertelt het u.
Hoe het budget van 10 lookups werkt
RFC 7208 begrenst het aantal DNS-lookups dat een ontvanger besteedt aan de evaluatie van uw record. Dat plafond is het hele spel — en het grootste deel van uw budget wordt besteed door de records van anderen:
- Wat budget kost: include, a, mx, ptr, exists, redirect — elk één, geneste ook meegerekend.
- Wat gratis is: ip4, ip6 en all — letterlijke waarden, geen DNS nodig. Daarom werkt „flattening”.
- Eén include is zelden één lookup: die van Mailgun is 5, die van Salesforce is 2. Een record dat „maar vijf includes heeft” kan op 11 uitkomen zonder dat iemand er iets aan wijzigt.
- Twee lookups mogen niets teruggeven — de void-lookup-limiet. Dode includes en typefouten verbruiken die snel, en het resultaat is dezelfde permerror.
Waar het budget naartoe gaat
per leverancier · opnieuw geverifieerd jul 2026Wat u zelf kunt controleren
Eén dig geeft uw record terug. Elke geneste include met de hand uitklappen is het trage deel.
Veelgestelde vragen over SPF
Typ hierboven uw domein. Wij halen de TXT-records op, bevestigen dat precies één begint met v=spf1 (twee is een directe fail — ze smelten niet samen, ze sneuvelen allebei), en parsen vervolgens elk mechanisme tegen RFC 7208: elke include wordt recursief uitgeklapt tot een boom, elke DNS-lookup wordt geteld tegen het budget van 10, het uiteindelijke all-beleid wordt beoordeeld, en elk IP-bereik dat uw record autoriseert, wordt opgeteld tot één lijst. Gratis, geen registratie.
Ontvangers die SPF evalueren, voeren per controle maximaal 10 DNS-bevragende mechanismen uit (RFC 7208 §4.6.4). include, a, mx, ptr, exists en redirect tellen allemaal mee, inclusief de mechanismen die verstopt zitten in de includes van uw leveranciers. Bij lookup #11 breekt de evaluatie af met permerror. Er bounct niets aan uw kant; DMARC behandelt uw domein simpelweg alsof het geen SPF publiceert. De storing komt geleidelijk, één aanmelding per keer, en kondigt zich nooit aan.
-all is de bestemming: weiger wat niet van u is. ~all is de reis ernaartoe: „markeer het, weiger het niet”. Dat is de juiste instelling zolang u nog verzenders ontdekt — die facturatietool waar niemand het over had. Het is ook de veilige keuze als een verloren legitieme e-mail u meer kost dan een vervalste. Twee kanttekeningen: met DMARC erbij krimpt het praktische verschil, want DMARC laat onbevoegde mail bij beide falen. En -all aan het einde van een record dat over de lookup-limiet gaat, is strengheid vastgemaakt aan een lijk — de permerror wint.
Nee — en de faalwijze is meedogenloos. RFC 7208 zegt dat meerdere v=spf1-records ervoor zorgen dat de controle permerror teruggeeft: niet „de eerste wint”, niet „ze smelten samen” — allebei worden ongeldig. Meestal gebeurt het onschuldig: een website-plugin, een wizard van een verzenddienst of een tweede beheerder die „SPF toevoegt” zonder het bestaande record op te merken. De oplossing kost één minuut: voeg alle mechanismen samen tot één record en verwijder de rest. Deze tool telt uw records daarom als allereerste, vóór al het andere.
Het beëindigt uw record met „…en iedereen anders slaagt ook.” Elk IP op het internet wordt een bevoegde verzender voor uw domein: een spammer die uw adres vervalst, krijgt een SPF-pass, en als uw DMARC-beleid steunt op SPF-alignment, kan die vervalste mail ook DMARC passeren — uw authenticatie staat nu garant voor de aanvaller. Het is echt erger dan helemaal geen SPF publiceren, want „geen record” maakt ontvangers achterdochtig, terwijl „+all” ze juist vertrouwen geeft. Het duikt in het wild op als een misplaatste deliverability-„fix”. Als deze tool er één vindt, zal dat allerminst subtiel worden gemeld.
Op zichzelf niet. SPF valideert de envelope-afzender (het adres uit de SMTP-conversatie), niet het From:-veld dat uw lezer ziet. Een vervalser kan SPF laten slagen op zijn eigen domein terwijl hij het uwe toont. Dat gat dichten is de taak van DMARC: het eist dat het zichtbare From overeenkomt met wat SPF of DKIM valideerde, en vertelt ontvangers ook wat ze moeten doen als dat niet zo is. De volledige stack is SPF + DKIM + DMARC, en deze tool zorgt dat het SPF-deel overeind staat, want een permerror hier ondermijnt stilzwijgend de andere twee.
In volgorde van pijn: verwijder wat niets verzendt — a en mx zijn gratis winst als uw webserver en MX nooit uitgaande mail versturen. ptr is altijd te verwijderen. Verwijder dode leveranciers — elke include hoort bij een dienst waar u nog voor betaalt. Splits per subdomein — laat nieuwsbrieven verzenden als news.uwdomein.com met een eigen record en eigen budget. Laatste redmiddel, flattening: includes vervangen door hun letterlijke ip4/ip6-reeksen kost nul lookups. Maar het bevriest een kopie van de netwerken van uw leveranciers — als die hernummeren, rot uw record stilzwijgend weg. Flatten alleen met tooling of monitoring die het opnieuw controleert.
Blijf verkennen
Gratis tools zijn pas het begin.
Uptimia houdt uw sites gezond.
Uptime, SSL, Vervaldatum domein, paginasnelheid, transacties — gemonitord vanuit 171+ locaties wereldwijd. 30 dagen gratis.