Zum Hauptinhalt springen

Eine IP gegen die DNSBLs prüfen, die Ihre Mail wirklich blockieren

Oktette umdrehen, die Zone abfragen, den 127.0.0.x-Code lesen, über 8 DNSBL-Zonen auf dem Mac, 10 auf iPhone und iPad.

Von Lucas Russo, Entwickler von SSHive · Aktualisiert am

Auch auf iPhone und iPad

Die App für iPhone und iPad gibt es auf Englisch, Französisch und Spanisch, nicht auf Deutsch; die Sprache stellen Sie in den Einstellungen der App ein. Die Mac-App ist auf Deutsch.

Mail, die gestern noch ankam, prallt heute ab. Das SMTP-Protokoll zeigt eine 5.7.1-Ablehnung mit einer darin vergrabenen URL, oder schlimmer noch gar nichts: Die Gegenseite hat die Nachricht angenommen und stillschweigend verworfen. Die erste Frage ist immer dieselbe: Steht die sendende IP auf einer Blockliste, und wenn ja, auf welcher? Eine DNSBL (eine DNS-basierte Blockliste, weiterhin verbreitet RBL genannt) beantwortet das mit einer DNS-Abfrage je Zone. Keine API, kein Login, kein Scraping. Sie drehen die vier Oktette der Adresse um, hängen die Domain der Zone an und fragen nach einem A-Record. NXDOMAIN heißt nicht gelistet. Eine Antwort innerhalb von 127.0.0.0/8 heißt gelistet, und das niederwertige Byte sagt Ihnen, welche Unterliste Sie erwischt hat und warum. Der Haken: Die Antwort nützt nur etwas, wenn Sie die richtigen Zonen abfragen und verstehen, was jede einzelne sagt. Es gibt Hunderte öffentlicher Listen; eine Handvoll wird von den Mailservern, auf die es ankommt, tatsächlich abgefragt, und mehrere der übrigen sind aggressiv, veraltet oder komplett eingestellt. Ein Werkzeug, das „gelistet auf 3 von 100 Listen“ meldet, ohne die drei zu nennen, ist schlechter als keine Antwort: Es schickt Sie Entfernungsformulare für Zonen ausfüllen, die niemand abfragt, während der eine Eintrag, der Ihre Mail wirklich blockiert, bestehen bleibt. SSHive führt die Prüfung selbst aus, auf dem Gerät, das Sie gerade dabeihaben. Unter macOS fragt es 8 Zonen parallel ab und holt bei jedem Treffer den TXT-Record, Sie bekommen also die Begründung des Betreibers und seinen Entfernungshinweis direkt neben dem Rückgabecode. Auf iPhone und iPad fragt es 10 Zonen ab und zeigt für jede den rohen 127.0.0.x-Code. Es ist nur IPv4, es verhält sich in der Mac-App-Store-Version in der Sandbox unverändert, und es ist auf jeder Plattform kostenlos: kein Konto, keine Werbung, und kein Server von uns irgendwo auf dem Weg.

Was SSHive dabei leistet

8 Zonen auf dem Mac, 10 auf iPhone und iPad, alle namentlich

macOS fragt zen.spamhaus.org, b.barracudacentral.org, bl.spamcop.net, dnsbl.sorbs.net, bl.mailspike.net, dnsbl-1.uceprotect.net, psbl.surriel.com und all.s5h.net ab. iPhone und iPad fragen denselben Satz ohne psbl.surriel.com ab, dafür mit dnsbl-2.uceprotect.net, ix.dnsbl.manitu.net und dnsbl.dronebl.org, zehn insgesamt. Die Listen unterscheiden sich je nach Plattform, und jede Zone wird namentlich angezeigt.

Die Begründung, nicht nur ein rotes Fähnchen

Unter macOS löst jeder Treffer eine zweite TXT-Abfrage auf denselben Namen aus, die Spalte Reason zeigt also die Erklärung des Betreibers selbst, meist samt URL seiner Entfernungsseite. Wird kein TXT veröffentlicht, erscheint stattdessen der rohe Rückgabecode 127.0.0.x. Auf iPhone und iPad wird der TXT-Record nicht geholt: Unter jeder gelisteten Zone steht nur der Rückgabecode.

IP oder Hostname, für Sie aufgelöst

Das Feld akzeptiert eine IPv4 in Punktnotation oder einen Hostnamen. Ein Hostname wird zu seinem ersten A-Record aufgelöst, bevor irgendeine Zone abgefragt wird, Sie können den Namen also direkt aus einer Unzustellbarkeitsnachricht einfügen. Denken Sie daran, dass das Auflösen einer Domain Ihnen ihre Webadresse liefert, nicht ihre Mailserver; für eine Mail-Domain nehmen Sie stattdessen die MX-Abfrage.

Funktioniert innerhalb der App Sandbox

Eine DNSBL-Abfrage ist eine gewöhnliche A-Record-Auflösung über den System-Resolver: keine Raw-Sockets, keine privilegierten Ports, keine gestarteten Binaries. Deshalb läuft die Blacklist-Prüfung in der Mac-App-Store-Version in der Sandbox unverändert und ist auf iPhone und iPad voll funktionsfähig, wie jedes andere Werkzeug im Panel auch.

Jeder MX-Server automatisch geprüft

Auf dem Mac führt die MX-Abfrage dieselbe DNSBL-Engine auf ihren eigenen Ergebnissen aus: Jeder Mailserver wird aufgelöst, rückwärts aufgelöst, und seine erste IPv4-Adresse gegen alle 8 Zonen geprüft, mit einer Plakette „Nicht gelistet“ oder „Auf Blacklist“ je Zeile. Geprüft wird nur die erste IPv4 je Mailserver, und reine IPv6-Mailserver sind nicht abgedeckt.

Kostenlos, auf jeder Plattform, ohne Konto

Die gesamte Netzwerkwerkzeug-Suite ist auf Mac, iPhone und iPad kostenlos. Es gibt keine Pro-Sperre auf der Blacklist-Prüfung, keine Werbeeinblendung vor einem Ergebnis und keine Anmeldung. SSHive Pro ist ein separater Einmalkauf (etwa 14,99 €, als Universal Purchase für Mac, iPhone und iPad), der ganz andere Funktionen freischaltet, nie diese.

So gehen Sie vor, Schritt für Schritt

  1. 1

    Netzwerkwerkzeuge öffnen

    Klicken Sie auf dem Mac auf das Netzwerksymbol in der Seitenleiste oder auf die Schaltfläche Netzwerkwerkzeuge im Willkommensbildschirm: Beides öffnet einen Tab Netzwerkwerkzeuge. Tippen Sie auf dem iPhone unten in der Tableiste auf Tools. Wählen Sie auf dem iPad in der Seitenleiste der geteilten Ansicht Network tools. Genannt sind die Bezeichnungen der englischen Oberfläche der App.

  2. 2

    Die Karte DNSBL-Prüfung finden

    Auf dem Mac ist DNSBL-Prüfung die zweite Karte des Abschnitts Auflösung und Reputation, zwischen DNS-Lookup und MX-Abfrage. Auf iPhone und iPad ist Blacklist Check die zweite Zeile im Abschnitt Email & IP, direkt unter MX Lookup.

  3. 3

    Eine IPv4-Adresse oder einen Hostnamen eingeben

    Tippen Sie eine Adresse in Punktnotation wie 203.0.113.25 ein, oder einen Hostnamen (der Platzhaltertext auf dem Mac lautet „z. B. 1.2.3.4 oder domain.com“). Ein Hostname wird zu seinem ersten A-Record aufgelöst, bevor die Zonen abgefragt werden. Drücken Sie auf „Blacklists prüfen“. Alle Zonen gehen parallel hinaus, ein vollständiger Lauf dauert also etwa so lange wie die langsamste einzelne DNS-Abfrage.

  4. 4

    Erst die Zusammenfassung lesen, dann die Zeilen je Zone

    Auf dem Mac steht über einer dreispaltigen Tabelle aus Zone, Status und Grund eine Zusammenfassungsplakette „<n>/8 Blacklists“, grün bei null, sonst rot. iPhone und iPad zeigen ein grünes Clean-Schild oder eine rote Anzahl von Listen, dann einen Abschnitt Listed, einen Abschnitt für die Zonen ohne verwertbare Antwort und einen Abschnitt Clean; jede gelistete Zeile trägt ihren rohen Rückgabecode 127.0.0.x.

  5. 5

    Der Begründung zum richtigen Entfernungsformular folgen

    Unter macOS trägt die Spalte Grund den TXT-Record der Zone, der meist die Erklärung des Betreibers und die Adresse seiner Entfernungsseite enthält. Notieren Sie den genauen Zonennamen, beheben Sie zuerst die eigentliche Ursache und gehen Sie dann auf das Formular genau dieses Betreibers. Nutzen Sie nie einen Sammeldienst, der die Entfernung von hundert Listen auf einmal verspricht.

Das Ergebnis lesen: Welche Einträge Mail wirklich blockieren

Nicht alle Zeilen wiegen gleich schwer, und sie gleich zu behandeln ist der häufigste Fehler. zen.spamhaus.org ist die, die darüber entscheidet, ob Ihre Mail ankommt. Es ist eine zusammengesetzte Zone, und der Rückgabecode sagt, welche Komponente ausgelöst hat. 127.0.0.2 und 127.0.0.3 sind SBL und CSS: eine bekannte Spam-Quelle oder ein Snowshoe-Bereich. 127.0.0.4 bis 127.0.0.7 sind XBL: eine kompromittierte Maschine, die über Proxy, Bot oder Wurm sendet, was normalerweise heißt, dass etwas in Ihrem Netz infiziert und nicht falsch konfiguriert ist. 127.0.0.9 ist DROP, für gekaperte oder kriminelle Netzblöcke. 127.0.0.10 und 127.0.0.11 sind PBL, und PBL ist überhaupt kein Vorwurf des Spammens: Es besagt, dass die Adresse in dynamischem oder Endnutzer-Bereich liegt, von dem der Netzbetreiber selbst erklärt hat, dass er nicht direkt an MX zustellen sollte. Ein Privatanschluss oder eine frische Cloud-Instanz, die PBL trifft, muss über einen Smarthost relayen, nicht Einspruch einlegen. Alles in 127.255.255.0/24 ist kein echter Eintrag. Es ist die Zone, die die Abfrage ablehnt, meist weil sie über einen großen öffentlichen Resolver wie 8.8.8.8 oder 1.1.1.1 kam, und wie das erscheint, hängt vom Gerät ab. Der Mac zählt jede Antwort, die mit 127. beginnt, als gelistet, auf einem öffentlichen Resolver kann Spamhaus also als rote Zeile „Gelistet“ mit dem Rückgabecode 127.255.255.254 zurückkommen. Das ist eine abgelehnte Abfrage, kein Blocklisten-Eintrag: Lesen Sie den Code, nicht die Farbe. Antwortet eine Zone mit einem DNS-Fehler, verbucht der Mac das zudem als sauber, eine Zeile „Sauber“ kann dort also auch überhaupt keine Antwort bedeuten. iPhone und iPad trennen beide Fälle: Ein 127.255.255.x-Code oder eine gescheiterte Abfrage landet in einer eigenen Gruppe von Zonen ohne verwertbare Antwort, die weder als gelistet noch als sauber zählt. Auf beiden Geräten gilt: Wiederholen Sie die Prüfung in einem Netz, das seinen eigenen oder den rekursiven Resolver seines Providers verwendet, bevor Sie dem Ergebnis trauen. Unterhalb von Spamhaus werden b.barracudacentral.org und bl.spamcop.net breit abgefragt und lohnen eine Reaktion. bl.mailspike.net ist ein Reputationswert, kein binäres Urteil. psbl.surriel.com und ix.dnsbl.manitu.net sind spamtrap-getrieben und verfallen von selbst, oft binnen Stunden. dnsbl-1.uceprotect.net listet eine einzelne IP; dnsbl-2.uceprotect.net, nur auf iPhone und iPad abgefragt, listet eine ganze Zuteilung, weil ein Nachbar gespammt hat, ein einzelner Level-2-Treffer neben sonst sauberen Zeilen ist also meist Rauschen. dnsbl.sorbs.net ist ein Sonderfall: Der Betreiber hat den Dienst 2024 eingestellt, diese Zeile sagt also nichts über Ihre Reputation, was immer sie anzeigt. Nehmen Sie das nicht als Unbedenklichkeitsbescheinigung. Und schließlich ist ein Durchlauf voller sauberer Zeilen keine Zustellgarantie. Gmail, Outlook.com und Yahoo betreiben interne Reputationssysteme, die keine öffentliche DNSBL offenlegt.

Häufige Fragen

Ist die Blacklist-Prüfung in der Mac-App-Store-Version von SSHive verfügbar?+
Ja, in vollem Umfang: alle Zonen, die TXT-Abfrage der Begründung, keine Sandbox-Sperre. Eine DNSBL-Abfrage ist eine schlichte A-Record-Auflösung über den System-Resolver, sie braucht also keines der Privilegien, die Apples Sandbox vorenthält, und Ping und Traceroute, wie sich zeigt, ebenso wenig: Sie senden aus der App-Store-Version echtes ICMP über einen Datagramm-Socket.
Warum prüft mein iPhone 10 Listen und mein Mac nur 8?+
Die beiden Codebasen liefern unterschiedliche Zonensätze aus. macOS prüft 8 Zonen; iPhone und iPad prüfen 10: dieselbe Liste ohne psbl.surriel.com, dafür mit dnsbl-2.uceprotect.net, ix.dnsbl.manitu.net und dnsbl.dronebl.org. Ein Ergebnis kann sich zwischen Ihrem Mac und Ihrem Telefon also berechtigterweise unterscheiden. Der häufigste Fall ist ein UCEPROTECT-Level-2-Treffer, der nur mobil sichtbar ist und die Nachbarn Ihrer Zuteilung widerspiegelt, nicht Ihre eigene IP.
Kann ich eine IPv6-Adresse prüfen?+
Nein. Das Werkzeug ist auf jeder Plattform nur IPv4: Alles, was keine Adresse in Punktnotation ist (oder ein Hostname, der sich darauf auflöst), wird abgewiesen. IPv6-Blocklisting verlangt eine Kodierung aus 32 Nibbles im ip6.arpa-Stil, und die tatsächliche Abdeckung der großen Zonen bleibt dünn, SSHive lehnt die Abfrage also ab, statt ein Ergebnis zu liefern, für das es nicht geradestehen kann. Wenn Ihr MTA Dual-Stack fährt, prüfen Sie seine IPv4-Adresse und nutzen Sie für die v6-Seite die Postmaster-Werkzeuge der Anbieter.
Ich stehe auf der Spamhaus PBL. Hat mein Server Spam verschickt?+
Fast sicher nicht. Die PBL (Rückgabecodes 127.0.0.10 und 127.0.0.11 in der zen-Komposition) ist eine Richtlinienliste, keine Missbrauchsliste. Sie hält fest, dass die Adresse in einem Bereich liegt, den der Netzbetreiber selbst als dynamischen oder Endnutzer-Raum erklärt hat, der nicht direkt mit entfernten MX-Servern sprechen sollte. Typische Auslöser sind ein Privatanschluss oder eine Cloud-IP, deren Anbieter Port 25 nicht geöffnet hat. Die Lösung ist, über den Smarthost Ihres Anbieters zu relayen oder den Betreiber zu bitten, den Bereich umzuklassifizieren, nicht, einen Missbrauchs-Einspruch einzureichen.
Alle Zonen melden „Sauber“, aber meine Mail prallt bei Outlook trotzdem ab. Warum?+
Zwei Gründe, und beide lohnt es auszuschließen. Erstens: Die großen Postfachanbieter betreiben private Reputationssysteme, die keine öffentliche DNSBL offenlegt; eine Sperre bei Microsoft oder Google gehört allein ihnen und wird über deren eigene Postmaster-Kanäle behandelt, nicht über ein Delisting-Formular. Zweitens: Die Zone hat vielleicht nicht die Frage beantwortet, die Sie ihr gestellt zu haben glauben. Wenn eine Blockliste eine Abfrage ablehnt (die meisten tun das bei Verkehr über 8.8.8.8 oder 1.1.1.1), antwortet sie meist mit einem Code in 127.255.255.0/24. Der Mac zeigt das als rote Zeile „Gelistet“, prüfen Sie also den Rückgabecode, bevor Sie einem Treffer glauben; und antwortet sie stattdessen mit einem DNS-Fehler, verbucht der Mac das als sauber, hinter einer Zeile „Sauber“ kann dort also gar keine Antwort stehen. iPhone und iPad führen beide Fälle getrennt, als Zonen ohne verwertbare Antwort. Testen Sie aus einem Netz mit eigenem rekursivem Resolver erneut, bevor Sie irgendetwas schließen.
Kann ich eine Domain statt einer IP-Adresse prüfen?+
Sie können einen Hostnamen eintippen, und er wird zu seinem ersten A-Record aufgelöst, bevor die Zonen abgefragt werden. Seien Sie sich aber klar darüber, was das prüft: Bei example.com prüfen Sie die IP hinter der Website, die häufig nicht die Maschine ist, die die Mail versendet. Um die Maschinen zu prüfen, die Ihre Mail tatsächlich zustellen, nehmen Sie MX Lookup: Unter macOS löst es jeden Mailserver auf und führt auf der ersten IPv4 jedes einzelnen automatisch dieselbe DNSBL-Prüfung über 8 Zonen aus.
Brauche ich SSHive Pro, um eine Blacklist-Prüfung auszuführen?+
Nein. Die gesamte Netzwerkwerkzeug-Suite (Blacklist-Prüfung, MX-Abfrage, DNS-Abfrage, Whois, Ping und Traceroute) ist auf Mac, iPhone und iPad kostenlos, ohne Konto und ohne Werbung. SSHive Pro ist ein optionaler Einmalkauf (etwa 14,99 €), als Universal Purchase für Mac, iPhone und iPad, der unabhängige Funktionen freischaltet. Es gibt kein Abo, und keine dieser Diagnosen liegt auf irgendeiner Plattform hinter einer Bezahlschranke.

Wie eine DNSBL-Abfrage funktioniert, und warum die Reihenfolge beim Delisting zählt

Eine DNSBL ist eine Datenbank, die vollständig über DNS veröffentlicht wird, und genau deshalb braucht ihre Abfrage auf keiner Plattform, für die SSHive ausgeliefert wird, irgendein Privileg. Um 203.0.113.25 gegen zen.spamhaus.org zu prüfen, dreht der Client die vier Oktette um und fragt nach einem A-Record unter 25.113.0.203.zen.spamhaus.org. Die Umkehrung ist nicht kosmetisch. DNS delegiert hierarchisch von rechts nach links, die Adresse rückwärts zu schreiben erlaubt einem Zonenbetreiber also, nach /8, /16 oder /24 zu delegieren, genau wie in-addr.arpa es für Rückwärtsauflösungen tut. NXDOMAIN heißt nicht gelistet. Jede Antwort innerhalb von 127.0.0.0/8 heißt gelistet, wobei die niederwertigen Bytes kodieren, welche Unterliste passt. Ein TXT-Record unter demselben Namen trägt, wo der Betreiber einen veröffentlicht, die menschenlesbare Begründung und die Entfernungs-URL. SSHive setzt das zweimal um. Unter macOS feuert der Hauptprozess alle acht Zonenabfragen parallel über den c-ares-Resolver von Node ab, jede einzeln abgefangen, damit eine tote oder ratenbegrenzte Zone nicht den ganzen Lauf scheitern lässt; bei einem Treffer setzt er eine zweite TXT-Abfrage auf denselben Namen für die Begründung ab. Auf iPhone und iPad fächert die Swift-Implementierung die zehn Zonen über eine werfende Task-Gruppe auf einer Utility-Queue auf, ein auf AF_INET festgelegtes getaddrinfo je Zone, und sortiert die Ergebnisse dann: gelistet zuerst, dann die Zonen ohne verwertbare Antwort, dann alphabetisch. Beide akzeptieren eine wörtliche Adresse in Punktnotation oder einen Hostnamen, wobei der Hostname zu seinem ersten A-Record aufgelöst wird, bevor irgendeine Zone angefasst wird. Weil all das eine gewöhnliche A-Record-Auflösung über den System-Resolver ist, sind keine Raw-Sockets, keine privilegierten Ports und keine gestarteten Binaries im Spiel: Die Prüfung läuft also unverändert innerhalb der App Sandbox. Dasselbe gilt für jedes Werkzeug in diesem Panel, Ping und Traceroute eingeschlossen: Sie senden echtes ICMP von einem Datagramm-Socket, der keine Privilegien braucht, es gibt hier also keine Plattform, auf der eine Diagnose weniger antwortet als anderswo. Es heißt außerdem, dass jede Abfrage Ihr Gerät direkt zu den Nameservern der Zone verlässt, über den Resolver, den Ihr Netz zugewiesen hat: kein SSHive-Backend und keine Web-API eines Dritten auf dem Weg. Zwei Grenzen sind gewollt. Das Werkzeug ist nur IPv4, und es prüft nur IP-basierte Zonen: keine domainbasierten Listen wie URIBL oder SURBL, keine Zeitstempel der Einträge, keine anklickbaren Entfernungslinks. Womit wir beim Delisting wären, wo die Reihenfolge der Schritte alles entscheidet. Beheben Sie die Ursache, bevor Sie irgendetwas einreichen: Einen Eintrag entfernen zu lassen, während die Quelle noch aktiv ist, bringt Ihnen eine erneute Listung ein, meist mit längerer Strafe. Die üblichen Ursachen, grob nach Häufigkeit: ein kompromittiertes SMTP-AUTH-Konto (achten Sie auf einen einzelnen Benutzernamen, der sich von vielen Quell-IPs anmeldet), ein missbrauchtes Web-Kontaktformular, ein offenes Relay, ein malwareinfizierter Arbeitsplatz, der sich hinter NAT Ihre öffentliche IP teilt, und eine legitime Mailingliste, die alt genug geworden ist, um Spamtraps zu treffen. Bestätigen Sie dann die Grundlagen: forward-confirmed Reverse DNS, das zu Ihrem HELO-Namen passt, dazu SPF, DKIM und DMARC. Erst danach nutzen Sie die Entfernungsseite jedes Betreibers. Spamhaus, Barracuda und SpamCop betreiben alle Selbstbedienungsformulare; PSBL, NiX Spam und UCEPROTECT Level 1 verfallen von selbst, sobald der Verkehr aufhört. Lassen Sie jeden Dienst aus, der anbietet, Sie von hundert Listen auf einmal zu entfernen, und rechnen Sie damit, dass sich die Zustellung erst Tage nach der Aufhebung des Eintrags erholt.