In dit artikel bespreken wij de meest voorkomende oorzaken en oplossing van de '421 4.7.0 An Internal Server Error has occurred. SPF records for example.com could not be verified' foutmelding. Simpel gezegd betekent deze melding dat de SPF-controle voor je domein niet is geslaagd:
Als je een e-mail verstuurt, controleert de ontvangende partij automatisch je SPF-record. In een SPF-record leg je vast welke servers namens jouw domein e-mail mogen versturen. De 421 4.7.0-foutmelding betekent dat de ontvanger de e-mail heeft ontvangen vanaf een server die niet overeenkomt met wat er in je SPF-record staat.
Wij komen vooral de volgende drie oorzaken tegen van dit probleem:
- WordPress webformulieren die via SMTP mailen
- Een verkeerd e-mailadres stuurt de e-mail
- Een ongeldig of niet bestaand SPF-record
WordPress-webformulieren die niet via SMTP mailen
Stel je host een WordPress-website bij ons op een webhostingspakket of een VPS in combinatie met onze VPS-mailservice. Je maakt in dat geval gebruik van onze mailservers om mail te versturen namens je domein. Je DNS-records kunnen er dan uitzien als volgt:
Het SPF-record hier heeft de waarde: v=spf1 include:_spf.transip.email ~all
Dit record zorgt ervoor dat onze mailservers namens jouw domein mail mogen versturen. Veel webformulieren gebruiken echter de PHP mail() functie, die ervoor zorgt dat een webformulier mail verstuurt vanaf de server die de website host (i.e. die in het A-record en/of AAAA-record staat) en niet via de mailserver (die in het SPF-record staat).
In het DNS-voorbeeld hierboven zie je dat de website gehost wordt op het IP-adres 95.170.78.147. Het gevolg van het gebruik van een webformulier met de PHP mail() functie zou in dit voorbeeld de volgende melding zijn:
[95.170.78.147] said: 421 4.7.0 An Internal Server Error has occurred. SPF records for example.com could not be verified. Please try again later. Please see https://www.transip.eu/question/110000767 for more information.
Je ziet hier het IP-adres uit het A-record (zie de eerdere screenshot) terug. Dit is een duidelijk teken dat vanaf de server die de website host wordt gemaild, en niet vanaf de mailservers die in het SPF-record staan (in dit voorbeeld zijn dat onze mailservers).
Zie je in deze foutmelding een subdomein, bijvoorbeeld server.example.com? Bekijk dan het onderdeel 'Een verkeerd e-mailadres'.
Het probleem oplossen
Er zijn in dit geval twee opties om het probleem op te lossen:
De eenvoudigste is het IP-adres dat de e-mails verstuurt aan je SPF-record toevoegen. Er zijn twee manieren om dit te doen:
-
Optie 1: Komt het IP-adres uit de foutmelding overeen met een IPv4- of IPv6-adres dat in je root A-record of AAAA-record staat, zoals in het voorbeeld hieronder?
In dat geval kun je deze IP-adressen simpelweg autoriseren in je SPF-record met de toevoeging a, oftewel:
v=spf1 a include:_spf.transip.email ~all
De toevoeging a autoriseert alle A- en AAAA-records uit de DNS-records voor je domein.
-
Optie 2: In andere gevallen kun je het specifieke IPv4- of IPv6-adres toevoegen aan je SPF-record:
v=spf1 ip4:95.170.78.147 include:_spf.transip.email ~all
Vervang 95.170.78.147 door het daadwerkelijke IPv4-adres uit de foutmelding. Voor een IPv6-adres gebruik je:
v=spf1 ip6:2a01:7c8:eb::95:170:78:147 include:_spf.transip.email ~all
Vervang 2a01:7c8:eb::95:170:78:147 door het daadwerkelijke IPv6-adres uit de foutmelding.
- De toevoeging include:_spf.transip.email is enkel nodig als je onze mailservers gebruikt. Dit geldt voor onze webhostingspakketten en VPS'en die de VPS-mailservice gebruiken.
- Met SPF-records zijn nog meer configuratieopties mogelijk dan in dit artikel behandeld zijn. Meer opties vind je in ons SPF-artikel.
Veel webformulieren bieden standaard geen SMTP-ondersteuning. Je kunt in dat geval een SMTP-plugin installeren op je website, zoals https://nl.wordpress.org/plugins/wp-mail-smtp/
Om daarmee te kunnen mailen via een contactformulier vanaf je website zal je de volgende gegevens moeten instellen:
SMTP Authenticatie: Ja
SMTP Beveiliging: SSL
Poort: 465
Gebruikersnaam: het e-mailadres waar vanuit je wil mailen
Wachtwoord: het wachtwoord van dit e-mailadres
Host: smtp.transip.email
Een verkeerd e-mailadres
In dit geval wordt de e-mail verstuurd vanuit een ander domein (e.g. namens @random.com) dan het gewenste domein (e.g. @example.com), of dat de mail verstuurt wordt vanuit een subdomein (e.g. info@server.example.com ipv info@example.com). Je krijgt dan een foutmelding te zien zoals:
[95.170.78.147] said: 421 4.7.0 An Internal Server Error has occurred. SPF records for server.example.com could not be verified. Please try again later. Please see https://www.transip.eu/question/110000767 for more information.
In dit voorbeeld is het stukje server.example.com waaraan je kunt zien dat hier een verkeerd e-mailadres wordt gebruikt.
De oorzaak kan zeer verschillend zijn en het is dan ook het beste na te gaan hoe de e-mail is verstuurt en welk e-mailadres daarvoor is ingesteld. Twee voorbeelden hiervan die wij vaker tegenkomen zijn:
- Een WordPress-formulier die namens de hostname mailt, in dat geval raden wij een SMTP-plugin aan.
- Een VPS met controlepaneel zoals DirectAdmin stuurt automatisch e-mail (bijvoorbeeld voor een beveiligingssysteem) namens een administrator e-mailadres, of het subdomein dat als hostname staat ingesteld.
In dit geval is het raadzaam na te gaan waar het betreffende e-mailadres is ingesteld en dat aan te passen.
Bij twijfel kun je altijd onze supportafdeling om advies vragen. Stuur in dat geval wel de exacte bounce-melding mee.
Een ongeldig of niet-bestaand SPF-record
De 420 4.7.0. melding kan ook verschijnen wanneer er helemaal geen, een verkeerd SPF-record is ingesteld, of je SPF-records bij ons instelt, maar nameservers van een andere partij gebruikt. De beste manier om deze oorzaak uit te sluiten is door je DNS-records en nameservers te controleren. Hieronder volgen drie voorbeelden van ongeldige / niet bestaande SPF-records:
Geen SPF-records
Hieronder zie je als voorbeeld een screenshot met onze standaard DNS-instellingen voor domeinen zonder webhostingspakket.
Je ziet hier geen SPF-record (Een SPF-record herken je aan het type 'TXT' en dat de waarde begint met v=spf). In dit voorbeeld wijzen de DNS-records zelfs in zijn geheel nog niet naar server(s) die je website en/of e-mail host(en). Het probleem los je in dit voorbeeld op door de DNS-records voor je domein in te stellen.
Andere nameservers
Stel dat je in je controlepaneel niet onze nameservers ziet, zoals in het voorbeeld hieronder, dan controleer je de SPF-records bij de partij waarvan de nameservers zijn (in dit voorbeeld is dat Wix). Hoe dat werkt hangt van de betreffende partij af. Je kunt in dit geval het beste daar contact mee opnemen.
Foutief SPF-record
In andere gevallen, waar je wel een SPF-record hebt ingesteld, maar deze mogelijk niet volledig is, volg je de eerdere instructie 'Je SPF-record aanpassen'.
Mocht je aan de hand van dit artikel nog vragen hebben, aarzel dan niet om onze supportafdeling te benaderen. Je kunt hen bereiken via de knop 'Neem contact op' onderaan deze pagina.