SPF limieten en valkuilen

Limieten en valkuilen in een SPF TXT record

Er zijn wat spelregels in het gebruik van een SPF record. Op deze pagina de vaak voorkomende.

SPF mag maximaal 10 (DNS lookup) items bevatten

Een SPF mag bestaan uit veel IP nummers, maar het aantal DNS lookups is gelimiteerd op 10. Een DNS lookup is het raadplegen / bevragen van de DNS. Dat doet elke computer. De limiet is om tegen te gaan dat er oneindig veel lookups in een SPF wordt opgenomen om zo DNS servers te overbelasten. Met een limiet van de 10 DNS lookups wordt onnodig CPU gebruik en eventuele cyber aanvallen tegengegaan.

Andere veel gebruikte, maar misschien over het hoofdgeziene. SPF lookups zijn de "include" (fqdn), de "a" en de "mx".

Wil je weten hoeveel lookups de SPF jouw domain gebruikt? Op deze pagina zie je het getal naast "Required queries". Als dat 10 of lager is, dan zit je nog goed voor wat betreft het aantal lookups.

Dat lijkt veel, 10 DNS lookups, maar voor grote organisaties kan d
it een puzzel zijn. Want veel online diensten bieden een SPF record waarin de IP nummers van deze diensten zijn opgenomen en soms met een of meer DNS sub lookups en dat kan hard gaan. Google Workspace gebruikt bijvoorbeeld al vier lookups:

Je ziet het resultaat op deze pagina:

  1. _spf.google.com met hierin subdomeinen met (dit noemen ze 'geneste') SPF records:

  2. _netblocks.google.com (alleen IPv4)

  3. _netblocks2.google.com (alleen IPv6)

  4. _netblocks3.google.com (alleen IPv4)

Een IP adres kost geen DNS lookup, maar als dat niet werkbaar is, dan zijn er nog diensten die om de DNS lookups heen werken en de SPF administratie van je overnemen. Dit doen zij door de lookups in SPF te monitoren en om te zetten naar IP nummers. Daar zit een prijskaartje aan, maar het kan veel zorg wegnemen (er is wel een risico). Het Britse bedrijf Red Sift biedt dit bijvoorbeeld onder de naam "Dynamic SPF".


Overbodige lookups verwijderen

Er is nu geen directe aanleiding, maar deze punten kun je alvast nalopen om te zien welke lookups overbodig zijn:

  • MX is een aanduiding voor jouw ontvangende mailserver(s), maar deze versturen meestal geen e-mail. Mogelijk is het overbodig.

  • A duidt er op dat de webserver (A is het IP nummer voor de website) dat er mogelijk direct mails vanaf komen. Misschien gebruik je dit niet, maar mogelijk wel vanwege online formulieren. Nadeel is dat de webserver zeer waarschijnlijk geen DKIM ondersteunt. Gebruik je WordPress? Gebruik dan de plugin WP mail SMTP, die inlogt op een door jou aangewezen mailbox en mail verstuurt. Het maakt niet uit of je eigenlijk Office 365 of Google Workspace gebruikt. Versturen kan nog steeds.


Maximaal karakters in een DNS TXT record

Een TXT record in DNS heeft een limiet van 255 karakters. Daar kun je omheen werken, als jouw hostingprovider dit niet voor je doet. Volg hiervoor sectie 3.3 van RFC 7208 waar met gebruik van aanhalingstekens (in dezelfde record) deze limiet wordt omzeild. Door een copy / paste van de SPF uit te voeren zie je het aantal karakters op deze pagina.


Gebruik van IP nummers

Misschien wil je alleen IP nummers gebruiken om zo het aantal lookups te verminderen. Als deze IP nummers in eigen beheer zijn, dan is dat een prima oplossing. Zijn de IP nummers van een andere organisatie dan weet je niet of de lijst IP nummers na een jaar nog actueel is. Bekijk dan of die organisatie een SPF heeft gepubliceerd met de IP nummers. Zij zorgen dan voor de wijzigingen.

Een kleine waarschuwing: controleer of zij DNS lookups hebben en of hierdoor, samen met jouw DNS lookups, de limiet van 10 DNS lookups niet wordt overschreden.


Controleer de SPF van jouw domein

Controleer op deze pagina of de SPF in orde is. Je krijgt duidelijke aanwijzingen op wat er nog moet worden aangepast. Mocht je foutmeldingen tegenkomen, kijk dan weer op deze pagina.