Zurück zum Blog

Mailcow: Gmail-Reject wegen fehlendem IPv6 PTR-Record beheben

Mailcow: Gmail-Reject wegen fehlendem IPv6 PTR-Record beheben

Datum 17. Juni 2026
Kategorie Mail
Lesezeit 4 Minuten

Der Fehler

Ausgehende Mails von Mailcow an Gmail-Adressen wurden mit folgendem Fehler abgelehnt:

550-5.7.25 [2a01:4f8:c17:759d::1] The IP address sending this message
does not have a PTR record setup, or the corresponding forward DNS entry
does not match the sending IP. As a policy, Gmail does not accept
messages from IPs with missing PTR records.
Fehlercode 550 5.7.25 bedeutet immer: Gmail kann die sendende IP-Adresse nicht per Reverse-DNS auflösen, oder Forward- und Reverse-DNS stimmen nicht überein.

Ursache

Postfix (innerhalb von Mailcow) bevorzugt automatisch IPv6 für ausgehende Verbindungen, wenn die Netzwerkschnittstelle eine IPv6-Adresse hat — was auf modernen Hetzner-Servern standardmäßig der Fall ist.

Das Problem: Für die IPv6-Adresse 2a01:4f8:c17:759d::1 fehlten zwei Records:

RecordTypStatus
2a01:4f8:c17:759d::1 PTR (Reverse DNS) ❌ fehlte
mail.matzka.cloud AAAA (Forward DNS) ❌ fehlte

Gmail prüft beide Richtungen: Der PTR-Record der sendenden IP muss auf den Hostnamen zeigen, und der AAAA-Record des Hostnamens muss zur IP zurückzeigen. Fehlt einer von beiden — oder stimmen sie nicht überein — wird die Mail abgelehnt.

Fix: PTR & AAAA Record setzen

Schritt 1: PTR bei Hetzner setzen

Der PTR-Record (Reverse DNS) wird beim Hosting-Provider gesetzt — in diesem Fall im Hetzner Robot unter Server → IPs → Reverse DNS bearbeiten:

IP-AdressePTR-Ziel
2a01:4f8:c17:759d::1 mail.matzka.cloud

Schritt 2: AAAA bei internex.at setzen

Die DNS-Zone für matzka.cloud wird bei internex.at verwaltet. Dort wurde ein AAAA-Record für mail.matzka.cloud hinzugefügt:

TypHostnameWertTTL
AAAA mail 2a01:4f8:c17:759d::1 3600

Propagierung prüfen

Nach dem Setzen der Records dauert die Propagierung typisch 5–30 Minuten. Prüfen mit:

# PTR: muss mail.matzka.cloud zurückgeben
dig -x 2a01:4f8:c17:759d::1 +short

# AAAA: muss 2a01:4f8:c17:759d::1 zurückgeben
dig AAAA mail.matzka.cloud +short

Beide Ausgaben müssen übereinstimmen:

$ dig -x 2a01:4f8:c17:759d::1 +short
mail.matzka.cloud.

$ dig AAAA mail.matzka.cloud +short
2a01:4f8:c17:759d::1

Alternative: IPv4 erzwingen

Falls das Setzen eines PTR-Records nicht möglich ist (z.B. bei shared Hosting), kann Postfix auf IPv4 für ausgehende Mail gezwungen werden. In Mailcow die Datei /opt/mailcow-dockerized/data/conf/postfix/extra.cf bearbeiten:

# Prefer IPv4 for outgoing mail
smtp_address_preference = ipv4

Danach Postfix in Mailcow neu starten:

cd /opt/mailcow-dockerized
docker compose restart postfix-mailcow
Hinweis: Diese Option unterdrückt das Problem, löst es aber nicht. Die korrekte Lösung ist immer, PTR und AAAA Record zu setzen.

Ergebnis

Nach dem Setzen beider Records und Warten auf die Propagierung wurde eine Test-Mail an Gmail erfolgreich zugestellt. Kein weiterer Eingriff in die Mailcow-Konfiguration nötig.

Wichtig für die Zukunft: Bei einem IP-Wechsel des Servers (z.B. nach Migration) müssen PTR und AAAA Record sofort aktualisiert werden — sonst werden Mails an Gmail und andere Provider mit strikten PTR-Prüfungen wieder abgelehnt.