[postfix-users] Frage zu einem MX-Cluster-Setup

Werner D. werner at aloah-from-hell.de
Sa Sep 6 22:09:09 CEST 2008


Hallo zusammen,

ich bin gerade dabei einen MX-Cluster auf Basis von Postfix + MySQL + Amavisd +
SASL + Courier + Maildrop + IPVS + Storage (iSCSI) + OCFS2 zu konzipieren und habe dazu
eine Frage. Das Projekt angeschnitten:

Innerhalb des Setups kommen nur öffentliche IP-Adressen zum Einsatz, das Loadbalancing
wird mittels IPVS + Direct Routing implementiert. Es gibt zwei MX-Server
die beide die selben Dienste anbieten. Die /Mailhomes befinden sich zentral auf einem Storage,
das via iSCSI angesprochen wird. Als Filesystem die Mailhomes auf dem Storages
kommt OCFS2 zum Einsatz. Das MySQL-Backend befindet sich auf beiden MX-Server und
arbeitet im Master-Master Replikationsmodus.

Im DNS der Domains, für die Postfix bzw. das Setup die final destination ist, ist
ein korrekter MX-Eintrag gesetzt, z.B.

dig +short domain.de MX
10 mail.example.com

PTR ist freilich auch korrekt gesetzt:
dig -x mail.example.com
192.168.0.1

(Beispielhaft eine private IP-Adresse). Die VIP 192.168.0.1 ist auf dem Loadbalancer konfiguriert
und wird persistent via Direct Routing auf die 2 Nodes geleitet. Die zwei Postfix Server
haben die 192.168.0.1 als lo:1-Interface konfiguriert, ARP-Announcements sind deaktiviert.

In der main.cf auf den beiden Postfix-Servern ist "myhostname = mail.example.com" gesetzt
(wie im DNS für die jeweiligen Domains). Korrekterweise teile ich Postfix mit, er möge auf
allen Interfaces eingehend lauschen ("inet_interfaces = all", tut auch prima)

Jetzt zum Problem:
Teile ich Postfix nun mit, er möge bitte die VIP für ausgehende SMTP-Verbindungen benutzen
"smtp_bind_address = 192.168.0.1" geht nichts. Die Postfix-Server können keine Verbindung
nach extern mit der Source IP-Aufbauen (klar ist ja auch "nur" ein local-Interfaces, das
Problem liegt hier also dem Direct-Routing-Modus von IPVS zu Grunde). IPVS über NAT "soll"
nicht gemacht werden.

Jetzt zur eigentlichen Frage:

Sobald ich Postfix nicht an die VIP sondern die RIP (Real IP) des jeweiligen Postfix-Servers
verwendet funktioniert das Versenden prima.

Verwendet Postfix für die Anmeldung im HELO/EHLO im SMTP-Client-Modus den Wert
"myhostname"? Falls ja, matched der Hostname natürlich nicht, da der Postfix-Server
nicht die VIP sondern die RIP (DNS dafür: mx1-cluster und mx2-cluster) beim Versand
verwendet. Das kann theoretisch zu Problemen bei der Zustellung von Nachrichten an
externe Server führen. Oder bin ich nur verwirrt.

Wie löse ich das RFC-Konform? Möchte ich myhostname auf den Postfix-Nodes von mail.example.com
(der auf die VIP verweist) auf den Postfix-Nodes auf mx1-cluster.example.com bzw. mx2-cluster.example.com
ändern, oder kann das ebenfalls zu Problemen führen?

Danke,
Werner




More information about the postfix-users mailing list