Ein SPF-Lookup ist die DNS-Abfrage, die ein empfangender Mailserver ausführt, um herauszufinden, welche Server Sie autorisiert haben, als Ihre Domain E-Mails zu versenden. Er passiert bei jeder eingehenden Nachricht, sodass zu wissen, wie man denselben Lookup selbst durchführt, der schnellste Weg ist, zu sehen, was Empfänger sehen. Kombinieren Sie diesen Lookup mit einem SPF-Eintrag-Checker, um den gefundenen Eintrag zu validieren.
So funktioniert ein SPF-Lookup
Ihr SPF-Eintrag wird als DNS-TXT-Eintrag am Apex Ihrer Domain veröffentlicht (zum Beispiel bei example.com, nicht _spf.example.com). Wenn eine Nachricht eintrifft, liest der Empfänger die Domain des Envelope-Absenders, fragt die TXT-Einträge dieser Domain ab, findet denjenigen, der mit v=spf1 beginnt, und wertet ihn gegen die IP-Adresse des verbindenden Servers aus. Ist die IP autorisiert, besteht SPF; wenn nicht, entscheidet der Qualifizierer des Eintrags, was als Nächstes passiert.
Den rohen SPF-Eintrag lesen
Ein Lookup gibt eine einzelne Zeile wie diese zurück:
v=spf1 include:_spf.google.com include:sendgrid.net ip4:203.0.113.0/24 -all
Jedes Token ist ein Mechanismus: include: bindet die autorisierten Absender eines anderen Anbieters ein, ip4: autorisiert eine Adresse oder einen Bereich direkt, und das abschließende -all sagt Empfängern, jeden nicht übereinstimmenden Absender abzulehnen; unser Leitfaden zu a, mx, ip4 und include behandelt jeden einzeln. Die rohe Zeichenkette ist allerdings nur die halbe Miete - die eigentliche Arbeit besteht darin, zu erweitern, was diese Includes enthalten.
Rekursive Include-Erweiterung und Lookup-Zählung
Jedes include: ist selbst eine Domain mit ihrem eigenen SPF-Eintrag, der weitere Includes enthalten kann. Dieses Tool folgt dieser Kette bis ganz nach unten, sodass ein Eintrag, der wie drei Includes aussieht, tatsächlich in ein Dutzend DNS-Lookups auflösen könnte. Das ist wichtig, weil RFC 7208 die Auswertung auf zehn DNS-abfragende Mechanismen begrenzt (plus einer Grenze von zwei void Lookups); überschreiten Sie eine davon, geben Empfänger einen PermError zurück. Wenn Ihr erweiterter Eintrag über zehn liegt, flacht AutoSPF die Includes zu einem kompakten Eintrag ab und hält ihn aktuell - siehe zu viele DNS-Lookups.
Einen SPF-Eintrag manuell nachschlagen
Sie können die zugrunde liegende Abfrage selbst von einem Terminal aus ausführen. Unter macOS oder Linux:
dig TXT example.com +short
Unter Windows:
nslookup -type=TXT example.com
Beide geben die rohen TXT-Einträge einschließlich der SPF-Zeile zurück - aber keines erweitert verschachtelte Includes oder zählt die gesamten Lookups, weshalb ein speziell entwickeltes Lookup-Tool für alles jenseits eines schnellen Blicks schneller ist.
Wenn ein Lookup nichts zurückgibt (oder fehlschlägt)
- Kein Eintrag gefunden. Die Domain veröffentlicht keinen
v=spf1-TXT-Eintrag, sodass Empfänger nichts haben, woran sie den Absender prüfen können. - Zwei Einträge gefunden. RFC 7208 erlaubt nur einen; ein zweiter erzeugt einen PermError und beide werden ignoriert - führen Sie SPF-Einträge zusammen in einen einzigen Eintrag, um das zu beheben.
- Subdomain hat keinen Eintrag. Subdomains erben den SPF-Eintrag der übergeordneten Domain nicht - jede sendende Subdomain braucht ihren eigenen.
- PermError bei der Zählung. Gültige Syntax, aber die erweiterten Lookups überschreiten zehn.
Nach dem Lookup: validieren, beheben und DKIM sowie DMARC abdecken
Sobald Sie den Eintrag haben, führen Sie ihn durch den SPF-Validator, um ihn gegen jede RFC-Regel zu prüfen, oder bauen Sie ihn sauber mit dem SPF-Eintrag-Generator neu auf. Und weil SPF nur den sendenden Server abdeckt, kombinieren Sie ihn mit dem kostenlosen DMARC-Checker und dem DKIM-Lookup - DMARC ist es, was SPF und DKIM an Ihre sichtbare From-Adresse bindet. Schlagen Sie Ihren Eintrag nach, wann immer Sie einen Absender hinzufügen, Anbieter migrieren oder Mail im Spam landen sehen.