SPF "Too Many DNS Lookups": Die komplette Anleitung zur Behebung des 10-Lookup-Limits
Von CaptainDNS
Veröffentlicht am 3. März 2026

- Die RFC 7208 erlaubt maximal 10 DNS-Lookups pro SPF-Auswertung, bei Überschreitung lautet das Ergebnis
permerrorund Ihre E-Mails schlagen fehl - Die Mechanismen
include,a,mx,redirectundexistszählen jeweils als ein Lookup,ip4undip6zählen nicht - Mit 3-4 E-Mail-Providern (Google Workspace, SendGrid, Mailchimp) erreichen Sie schnell 9-12 Lookups
- 5 Methoden zur Behebung: unnötige Mechanismen entfernen, durch direkte IPs ersetzen, SPF Flattening, SPF Macros, dedizierte Subdomains
- Es gibt auch ein Limit von 2 Void Lookups (Mechanismen, die kein Ergebnis zurückgeben), das oft übersehen wird
Ihr SPF-Eintrag enthält ein Dutzend include:, um alle Ihre E-Mail-Provider abzudecken. Eines Tages fügen Sie einen neuen Dienst hinzu und Ihre E-Mails werden plötzlich abgelehnt. Die Diagnose ergibt einen permerror: Sie haben das Limit von 10 DNS-Lookups überschritten, das durch die RFC 7208 vorgegeben ist.
Dieses Problem betrifft die Mehrheit der Organisationen, die mehr als 3 E-Mail-Provider nutzen. Google Workspace allein verbraucht bereits 4 Lookups. Fügen Sie SendGrid, Mailchimp und einen dedizierten MX-Server hinzu, und Sie nähern sich dem Limit, noch bevor Sie Ihr letztes Marketing-Tool konfiguriert haben.
Dieser Leitfaden erklärt genau, wie das Limit von 10 Lookups funktioniert, wie Sie Ihre Lookups zählen und beschreibt 5 konkrete Methoden zur Behebung des Problems, von der einfachsten bis zur robustesten.
Was ist das SPF-Limit von 10 DNS-Lookups?
Was die RFC 7208 vorschreibt
Die RFC 7208, Abschnitt 4.6.4 schreibt ein striktes Limit vor: Die Auswertung eines SPF-Eintrags darf nicht mehr als 10 DNS-Abfragen erzeugen. Dieses Limit dient dem Schutz der Empfangsserver vor DNS-Amplification-Angriffen. Ohne dieses Limit könnte ein Angreifer einen SPF mit Hunderten verschachtelter include: veröffentlichen und die Server zu Tausenden von Abfragen zwingen.
Das Limit gilt rekursiv: Wenn Ihr SPF _spf.google.com einbindet und dieser seinerseits 3 weitere Domains einbindet, zählt jede Einbindung zum Gesamtlimit von 10.
Welche Mechanismen zählen als Lookup?
| Mechanismus | Zählt als Lookup | Erklärung |
|---|---|---|
include: | Ja | Auflösung des SPF der Ziel-Domain |
a | Ja | Auflösung des A/AAAA-Eintrags |
mx | Ja | Auflösung von MX, dann A/AAAA jedes MX-Servers |
redirect= | Ja | Auflösung des SPF der Ziel-Domain |
exists: | Ja | Prüfung der Existenz der Domain |
ip4: | Nein | Direkte IP-Adresse, keine DNS-Abfrage |
ip6: | Nein | Direkte IP-Adresse, keine DNS-Abfrage |
all | Nein | Terminaler Mechanismus, keine Abfrage |

Die größte Falle: Der Mechanismus mx kann mehrere Lookups verbrauchen. Wenn Ihre Domain 3 MX-Server besitzt, erzeugt der Mechanismus mx 1 MX-Lookup + 3 A-Lookups, also 4 Abfragen für einen einzigen Mechanismus.
Wie zählen Sie die DNS-Lookups Ihres SPF-Eintrags?
Die zuverlässigste Methode besteht darin, den SPF-Baum manuell aufzulösen. Nehmen wir ein konkretes Beispiel mit captaindns.com:
v=spf1 include:_spf.google.com include:sendgrid.net include:servers.mcsv.net mx ~all
Schrittweise Zählung:
| # | Mechanismus | Erzeugte Lookups |
|---|---|---|
| 1 | include:_spf.google.com | 1 |
| 2 | → include:_netblocks.google.com | 1 |
| 3 | → include:_netblocks2.google.com | 1 |
| 4 | → include:_netblocks3.google.com | 1 |
| 5 | include:sendgrid.net | 1 |
| 6 | include:servers.mcsv.net | 1 |
| 7 | mx (MX-Auflösung von captaindns.com) | 1 |
| Gesamt | 7 |
Mit 7 Lookups bietet dieser Eintrag einen Spielraum von 3. Das Hinzufügen von HubSpot (1 Lookup) und einem zweiten MX-Server (1 Lookup) würde die Gesamtzahl auf 9 bringen, noch innerhalb des Limits.
Anstatt manuell zu zählen, nutzen Sie unseren SPF Record Check, der die exakte Anzahl anzeigt und jede Überschreitung meldet.
Was passiert, wenn Sie das Limit überschreiten?
Wenn die SPF-Auswertung den 11. Lookup erreicht, stoppt der Empfangsserver sofort die Auswertung und gibt ein permerror-Ergebnis zurück. Die Konsequenzen sind unmittelbar:
- Der SPF gilt als ungültig : nicht nur fehlgeschlagen, sondern strukturell defekt
- DMARC scheitert kaskadierend : wenn Ihre DMARC-Richtlinie auf SPF für die Ausrichtung setzt, scheitert auch sie
- E-Mails werden abgelehnt oder als Spam eingestuft : Gmail, Outlook und Yahoo setzen dieses Limit strikt durch
- Der Fehler ist unauffällig : Ihre E-Mails werden ohne Fehler versendet, nur der Empfänger sieht die Ablehnung
Das Problem ist tückisch: Solange Sie das Limit nicht überschreiten, funktioniert alles. An dem Tag, an dem Sie ein include: zu viel hinzufügen, sind alle Ihre E-Mails potenziell betroffen, nicht nur die des neuen Providers.
5 Methoden zur Behebung des Fehlers "too many DNS lookups"
Methode 1: Unnötige Mechanismen entfernen
Beginnen Sie damit, die include: zu identifizieren, die keinen aktiven Diensten mehr entsprechen. Ein transaktionaler E-Mail-Provider, den Sie vor 6 Monaten abgeschaltet haben, verbraucht weiterhin einen oder mehrere Lookups.
# Vorher: 11 Lookups (zu viele)
v=spf1 include:_spf.google.com include:sendgrid.net include:servers.mcsv.net include:spf.brevo.com mx ~all
# Nach Entfernung von Brevo (nicht mehr genutzt): 9 Lookups
v=spf1 include:_spf.google.com include:sendgrid.net include:servers.mcsv.net mx ~all
Prüfen Sie jedes include:: Sendet dieser Dienst noch E-Mails für captaindns.com? Wenn die Antwort nein lautet, entfernen Sie ihn.
Methode 2: include durch ip4/ip6 ersetzen
Wenn ein Dienst feste und dokumentierte IP-Adressen verwendet, können Sie sein include: durch direkte IP-Adressen ersetzen. Die Mechanismen ip4: und ip6: zählen nicht als Lookups.
# Vorher: include des Mailservers (1 Lookup)
v=spf1 include:mail.captaindns.com include:_spf.google.com ~all
# Nachher: Ersetzung durch die Server-IP (0 zusätzliche Lookups)
v=spf1 ip4:203.0.113.10 include:_spf.google.com ~all
Achtung: Diese Methode eignet sich nur für Server, deren IPs Sie kontrollieren. Ersetzen Sie niemals die include: von Google oder Microsoft durch deren IPs, diese ändern sich regelmäßig ohne Vorankündigung.
Methode 3: SPF Flattening (Abflachung)
Das SPF Flattening löst automatisch alle include:, a, mx und redirect in direkte IP-Adressen auf. Das Ergebnis ist ein SPF-Eintrag, der ausschließlich aus ip4: und ip6: besteht, die keine Lookups erzeugen.

Vorteile:
- Sofortige Lösung des Lookup-Problems
- Kompatibel mit allen Empfangsservern
- Geprüftes und sofort veröffentlichbares Ergebnis
Nachteil:
- Die IPs der Provider ändern sich, Sie müssen regelmäßig erneut abflachen (monatlich empfohlen)
Methode 4: SPF Macros
SPF Macros (%{i}, %{d}, %{s}) ermöglichen die Erstellung dynamischer Einträge, die die Auswertung an spezifische Subdomains weiterleiten, ohne zusätzliche Lookups zu verbrauchen. Dieser fortgeschrittene Ansatz wird in einem kommenden Artikel dieser Serie ausführlich behandelt.
v=spf1 include:%{i}._spf.captaindns.com ~all
Der Empfangsserver ersetzt %{i} durch die IP des Absenders und zielt damit auf einen spezifischen SPF-Eintrag ab. Ergebnis: nur 1 Lookup statt mehrerer include:.
Methode 5: Dedizierte Subdomains
Anstatt alles über die Hauptdomain zu senden, weisen Sie jedem Provider eine eigene Subdomain zu:
| Subdomain | Provider | Dedizierter SPF |
|---|---|---|
captaindns.com | Google Workspace | include:_spf.google.com (4 Lookups) |
news.captaindns.com | Mailchimp | include:servers.mcsv.net (1 Lookup) |
transac.captaindns.com | SendGrid | include:sendgrid.net (1 Lookup) |
Jede Subdomain hat ihren eigenen SPF-Eintrag mit einem unabhängigen Lookup-Zähler. Erstellen Sie die SPF-Einträge jeder Subdomain mit unserem SPF Generator.
Void Lookups: Das zweite Limit, das Sie kennen sollten
Die RFC 7208 definiert ein zweites, oft übersehenes Limit: Die maximale Anzahl von Void Lookups ist auf 2 begrenzt. Ein Void Lookup tritt auf, wenn ein DNS-Mechanismus kein Ergebnis zurückgibt (NXDOMAIN-Antwort oder leere Antwort).
Beispiele für Void Lookups:
- Ein
include:nicht-existierende-domain.com, das NXDOMAIN zurückgibt - Ein
aauf einer Domain ohne A-Eintrag - Ein
exists:, das keinem Eintrag entspricht
Bei mehr als 2 Void Lookups lautet das Ergebnis ebenfalls permerror. Stellen Sie sicher, dass alle Ihre include: auf existierende und korrekt konfigurierte Domains verweisen.
Empfohlener Aktionsplan
- Zählen Sie Ihre aktuellen Lookups: Prüfen Sie die exakte Anzahl der DNS-Lookups Ihres veröffentlichten SPF
- Identifizieren Sie unnötige Mechanismen: Entfernen Sie die
include:von Providern, die Sie nicht mehr nutzen - Wählen Sie Ihre Korrekturmethode: Flattening für ein sofortiges Ergebnis, Subdomains für eine strukturelle Lösung, Macros für einen fortgeschrittenen Ansatz
- Testen Sie vor der Veröffentlichung: Validieren Sie den neuen Eintrag, bevor Sie Ihre DNS-Zone ändern
- Überwachen Sie regelmäßig: Die SPF-Einträge der Provider ändern sich, prüfen Sie monatlich erneut
FAQ
Was ist das SPF-Limit von 10 DNS-Lookups?
Die RFC 7208 schreibt vor, dass ein SPF-Eintrag bei seiner Auswertung nicht mehr als 10 DNS-Abfragen erzeugen darf. Jeder Mechanismus include:, a, mx, redirect und exists zählt als ein Lookup. Die Mechanismen ip4: und ip6: zählen nicht, da sie die IP-Adresse direkt enthalten und keine DNS-Auflösung erfordern.
Wie erfahre ich, wie viele DNS-Lookups mein SPF verbraucht?
Lösen Sie manuell jeden Mechanismus Ihres SPF auf, indem Sie die include:, a, mx, redirect und exists zählen, einschließlich der Sub-Includes. Zum Beispiel verbraucht include:_spf.google.com allein bereits 4 Lookups, da Google 3 Sub-Includes verschachtelt. Ein SPF-Analysetool automatisiert diese Zählung und zeigt die exakte Gesamtzahl an.
Was passiert, wenn mein SPF 10 Lookups überschreitet?
Der Empfangsserver gibt ein permerror-Ergebnis zurück und betrachtet Ihren SPF als ungültig. Ihre E-Mails laufen Gefahr, abgelehnt oder als Spam eingestuft zu werden. Wenn DMARC konfiguriert ist, scheitert es ebenfalls kaskadierend, da die SPF-Ausrichtung nicht überprüft werden kann.
Zählt der Mechanismus mx als nur ein einziger Lookup?
Nein. Der Mechanismus mx erzeugt zunächst einen MX-Lookup, um die Liste der Mailserver zu erhalten, und dann einen A/AAAA-Lookup für jeden zurückgegebenen Server. Eine Domain mit 3 MX-Servern verbraucht potenziell 4 Lookups für einen einzigen mx-Mechanismus.
Was ist SPF Flattening?
SPF Flattening besteht darin, alle Mechanismen, die Lookups erzeugen (include:, a, mx, redirect), durch die direkten IP-Adressen zu ersetzen, die sie auflösen (ip4:, ip6:). Das Ergebnis ist ein äquivalenter SPF-Eintrag, der keine DNS-Lookups mehr verbraucht.
Was ist ein Void Lookup?
Ein Void Lookup tritt auf, wenn ein DNS-Mechanismus eine leere Antwort zurückgibt (NXDOMAIN oder kein Eintrag). Die RFC 7208 begrenzt Void Lookups auf 2. Bei Überschreitung lautet das Ergebnis permerror, auch wenn die Gesamtzahl der Lookups unter 10 bleibt.
Sollte man Flattening oder Subdomains verwenden?
Flattening ist die schnellste Lösung, erfordert aber monatliche Wartung, da sich die IPs der Provider ändern. Subdomains bieten eine dauerhafte strukturelle Lösung, die jeden Provider mit einem eigenen Lookup-Zähler isoliert. Für Organisationen mit mehr als 5 Providern werden Subdomains empfohlen.
Glossar
- DNS-Lookup: DNS-Abfrage, die bei der Auswertung eines SPF-Eintrags durchgeführt wird, um einen Mechanismus wie
include:odermxaufzulösen. - Permerror: Permanenter Fehler, der zurückgegeben wird, wenn ein SPF strukturell ungültig ist, insbesondere bei Überschreitung des Limits von 10 Lookups.
- SPF Flattening: Technik, bei der SPF-Mechanismen, die Lookups erfordern, durch die direkten IP-Adressen ersetzt werden, die sie auflösen.
- Void Lookup: DNS-Abfrage, die kein Ergebnis zurückgibt (NXDOMAIN oder leere Antwort). Durch die RFC 7208 auf 2 begrenzt.
- RFC 7208: Offizielle Spezifikation des SPF-Protokolls (Sender Policy Framework), die die Auswertungsregeln und Lookup-Limits definiert.
Flachen Sie Ihren SPF-Eintrag jetzt ab: Nutzen Sie unseren SPF Flattener, um alle Ihre Includes in direkte IP-Adressen aufzulösen und das Limit von 10 Lookups einzuhalten.
📚 Verwandte SPF-Leitfäden
- SPF Flattening vs SPF Macros: Welcher Ansatz ist der richtige, um das 10-Lookup-Limit einzuhalten?
- SPF PermError: Verstehen, diagnostizieren und beheben (demnächst)


