[Postfixbuch-users] MX Prio und Lastverteilung

Sven Eulberg ml at eulberg.name
Fr Aug 8 11:10:24 CEST 2008


> > > Bitte nicht! Das  möchte ich auf keinen Fall unwidersprochen stehen
> > > lassen. Ich halte das für groben Unfug und ärgere mich über solche
Setups
> > > jedes mal. Das ist größer Mist. Bitte (so meine Meinung) keinesfalls
so
> > > nachmachen. Danke.
> >
> > Mir fehlt hier noch die Begründung.
> >
> > Eine ähnliche Konfiguration ist hier seit mehreren Jahren im Einsatz.
> > Damit wird exakt die gewünschte Lastverteilung (Round-Robin) erreicht.
> 
> wenn einer der MXe nicht erreichbar ist werden 50% der Clients ihre Mail
nicht
> los, obwohl der andere MX noch arbeitet...

Jedenfalls nicht beim ersten Anlauf, das mag korrekt sein. Diese Konfig
macht natürlich nur Sinn, wenn über mehr als zwei MXe _gebalanced_ werden
soll. 
Wenn ich mich Recht entsinne, ging es bei diesem Beitrag ursprünglich um
LAST-Verteilung. Nicht um HA.

Beim MX-Routing wird der jeweiligen Mailserversoftware freigestellt, welchem
MX sie ihr Mails zuschiebt:

"The name server will deliver the MX records in the order defined by the
rrset-order and the receiving SMTP software will select one based on its
algorithm. In some cases the SMTP alogithm may work against the definition
of the rrset-order statement. Current versions of sendmail (8.13.x), Exim
(4.44) and Postfix (2.1 or 2.2) all have definitive references to indicate
they randomly select equal preference servers (Postfix allows control of the
behaviour with the smtp_randomize_addresses parameter) and consequentially
may use an address which the rrset-order has carefully tried to change!
qmail, courier-mta and Microsoft (Exchange and IIS SMTP) documentation do
not appear to have definitive references to indicate how they handle this
case."

Hier kommt es also ganz klar auf die sendende Instanz an. Bei einigen MTAs
gibt es nicht mal eine Dokumentation darüber. Scheinbar wird hier
willkürlich per Würfelspiel ausgewählt. Exchange macht einfach IRGENDWAS,
einige MTAs ignorieren sogar die MX_Prio. Von handgestrickten Spamschleudern
ganz zu schweigen.

Die Lösung über multiple A-Records zwingt den MTA dazu den DNS zu befragen.
Die Entscheidung liegt also somit glücklicherweise nicht mehr beim
Mailserver und die Lastverteilung mittels _echtem_ DNS-Round-Robin ist
gegeben:

"In this case the load-balancing effect is under the control of BIND and the
rrset-order record. In order to avoid problems if the receiving mail system
does reverse look-up as a spam check then the PTR records for 192.168.0.4,
192.168.0.5, 192.168.0.6 above must all define to mail.example.com."

Ich möchte hier keine Grundsatzdiskussion lostreten - soll eher ein
Erfahrungsbericht sein. Funktioniert seit mehreren Jahren reibungslos und
sehr zufriedenstellend. Außerdem ist das ganze so skalierbar, ohne dass
sämtliche MX-Records aller betroffenen Domains angepasst werden müssen.
Andersrum lässt sich beim Ausfall eines Mailservers im Handumdrehen das
entsprechende Gerät aus dem DNS ausklinken.

Gruß Sven




Mehr Informationen über die Mailingliste Postfixbuch-users