Reverse-DNS für den eigenen Mailserver einrichten

„550 5.7.25 … does not have a PTR record“: Wer einen eigenen Mailserver betreibt, stolpert früher oder später über Reverse-DNS. Die Einrichtung dauert fünf Minuten, wenn man weiß, wo.

Warum Reverse-DNS so wichtig ist

Empfangende Mailserver fragen zu jeder einliefernden IP-Adresse den Namen ab (PTR-Eintrag) und prüfen, ob dieser Name wieder auf dieselbe IP zeigt. Das heißt Forward-confirmed reverse DNS (FCrDNS). Fehlt das, landen Mails im Spam oder werden direkt abgelehnt. Google und Yahoo verlangen es seit 2024 ausdrücklich. Typische Fehlermeldungen:

550-5.7.25 [203.0.113.10] The IP address sending this message does not have a
550-5.7.25 PTR record setup, or the corresponding forward DNS entry does not
550 5.7.25 point to the sending IP.

450 4.7.1 Client host rejected: cannot find your reverse hostname, [203.0.113.10]

Wo der PTR-Eintrag eingestellt wird

Der PTR-Eintrag gehört nicht zu deiner Domain, sondern zur IP-Adresse. Einstellen kann ihn nur, wem die IP gehört, also dein Hoster oder Provider. In der DNS-Verwaltung deiner Domain findest du ihn deshalb nicht.

Schritt für Schritt

  1. Namen festlegen, z. B. mail.example.com.
  2. A-Eintrag (und bei IPv6 AAAA) in deiner Zone: mail.example.com → 203.0.113.10.
  3. PTR beim Hoster setzen: 203.0.113.10 → mail.example.com.
  4. HELO-Namen des Mailservers auf denselben Namen setzen. Bei Postfix: myhostname = mail.example.com in der main.cf. Bei Exchange: FQDN im Sendeconnector.
  5. SPF prüfen: Die IP muss im SPF-Eintrag der Absenderdomain stehen, z. B. über mx oder ip4:203.0.113.10.

Der PTR muss nicht zur Absenderdomain passen. Ein Mailserver mail.example.com darf problemlos Mails für andere-domain.de verschicken. Wichtig ist nur, dass PTR, A-Eintrag und HELO zueinander passen.

Die IPv6-Falle

Hat dein Server eine IPv6-Adresse, verschickt Postfix Mails an Gmail & Co. oft über IPv6. Dann braucht auch die IPv6-Adresse einen PTR und einen passenden AAAA-Eintrag. Kannst du den nicht setzen, schalte den Versand über IPv6 ab:

# Postfix main.cf
inet_protocols = ipv4
# oder IPv6 zulassen, aber IPv4 bevorzugen:
smtp_address_preference = ipv4

Prüfen

# PTR der IP
dig -x 203.0.113.10 +short
# zeigt der Name zurück auf die IP?
dig +short A mail.example.com
# Windows
nslookup 203.0.113.10
# HELO des Servers sehen
openssl s_client -starttls smtp -connect mail.example.com:25 -quiet

Änderungen am PTR können je nach TTL einige Stunden brauchen, bis alle Resolver sie sehen. Der DNS-Lookup zeigt PTR und Gegenprobe in einem Schritt, der DNS-Propagation-Check zeigt, welche Resolver den neuen A-Eintrag schon kennen.

FAQ

Muss der PTR-Name meine Absenderdomain enthalten?

Nein. Er muss nur ein echter Name sein, der per A- bzw. AAAA-Eintrag auf dieselbe IP zeigt. Generische Namen wie 203-0-113-10.provider.net werden von manchen Empfängern aber schlechter bewertet.

Kann eine IP mehrere PTR-Einträge haben?

Technisch ja, in der Praxis führt das zu Problemen. Ein Name pro IP ist der sichere Weg.

Ich kann den PTR nicht setzen. Was nun?

Verschick ausgehende Mails über einen Smarthost (Relay) deines Providers oder eines Mail-Dienstes. Dein Server nimmt Mails weiter selbst an, sendet aber über das Relay.

Wie lange dauert es, bis der PTR wirkt?

Beim Hoster meist sofort. Resolver, die den alten Wert zwischengespeichert haben, sehen ihn erst nach Ablauf des TTL, oft eine bis 24 Stunden.