bind9 oder postfix

Servus,

ich habe ein Problem, einem unserer Kunden in Indien Mails zukommen zu lassen. Laut DNS-Auskunft seiner verantwortlichen NS-Server sind für ihn zwei MX-Server zuständig, 10 mx1.bol.net.in und 5 mx.mtnl.net.in.

Bei der Auswahl des primären Servers mx.mtnl.net.in läuft postfix auf ein timeout, so dass er den sekundären Server mx1.bol.net.in anspricht. Dieser sekundäre Server aber ist offenbar fehlerhaft konfiguriert. Der antwortet nämlich grundsätzlich mit 521 does not accept mail. Laut rfc1846 besagt diese Fehlermeldung, dass der Server als mx nicht eingerichtet sei und ich gefälligst den richtigen Server ansprechen solle.

Tatsächlich ist es mir gelungen, mit telnet (welches offenbar eine grössere timeout-Toleranz hat) den primären Server anzusprechen, dieser wäre auch bereit, an den Kunden zuzustellen.

Daher bin ich auf die Idee gekommen, postfix zu zwingen, ausschliesslich den primären mx anzusprechen und ggf bei timeouts halt später noch mal zu versuchen. Ich habe dazu in der lokalen hosts einen Eintrag erstellt, welcher den Namen des zweiten mx auf die Adresse des ersten mx abbildet.

Pinge ich nun den zweiten mx, wird auch auf den primären mx aufgelöst. Mache ich aber ein telnet mx1.bol.net.in 25, so wird (auch nach einem bind restart) automatisch wieder zur eigentlichen Adresse aufgelöst.

Grundsätzlich halte ich es für keine gute Idee, hier Fehler ausbügeln zu wollen, die ein Provider in Indien verursacht hat. Damit werde ich spätestens dann auf die Hose fallen, wenn der Inder seine Einträge korrigiert hat. Auf der anderen Seite aber besteht bei meinen Kollegen derzeit ein dringender Bedarf, mit dem Kunden komplikationsfrei und schnell kommunizieren zu können.

Wenn also jemand ein Schräubchen wüsste, welches ich am postfix oder am bind drehen könnte, genau diesen Spezialfall abzubilden, ohne die sonstige Funktionalität in irgendeiner Weise zu berühren oder gar zu beeinträchtigen…

Gruss
Schorsch

Hallo,

Tatsächlich ist es mir gelungen, mit telnet (welches offenbar
eine grössere timeout-Toleranz hat) den primären Server
anzusprechen, dieser wäre auch bereit, an den Kunden
zuzustellen.

Daher bin ich auf die Idee gekommen, postfix zu zwingen,
ausschliesslich den primären mx anzusprechen und ggf bei
timeouts halt später noch mal zu versuchen. Ich habe dazu in
der lokalen hosts einen Eintrag erstellt, welcher den Namen
des zweiten mx auf die Adresse des ersten mx abbildet.

Pinge ich nun den zweiten mx, wird auch auf den primären mx
aufgelöst. Mache ich aber ein telnet mx1.bol.net.in 25, so
wird (auch nach einem bind restart) automatisch wieder zur
eigentlichen Adresse aufgelöst.

Naja, Postfix macht ohnehin einen MX-Lookup per Default.

Grundsätzlich halte ich es für keine gute Idee, hier Fehler
ausbügeln zu wollen, die ein Provider in Indien verursacht
hat. Damit werde ich spätestens dann auf die Hose fallen, wenn
der Inder seine Einträge korrigiert hat. Auf der anderen
Seite aber besteht bei meinen Kollegen derzeit ein dringender
Bedarf, mit dem Kunden komplikationsfrei und schnell
kommunizieren zu können.

Wenn also jemand ein Schräubchen wüsste, welches ich am
postfix

Erstens: „man 5 postconf“ verrät Dir unter anderem 100 Timeouts, an denen Du drehen kannst. http://www.postfix.org/postconf.5.html

Zweitens: „man 5 transport“ http://www.postfix.org/transport.5.html Da kannst Du für bestimmte Domains einen Transport definieren („nexthop“), eventuell mit eckigen Klammern den MX-Lookup unterdrcken.

HTH,

Sebastian

Naja, Postfix macht ohnehin einen MX-Lookup per Default.

Ja, da hätte ich auch dran denken können. Dass da ein Eintrag in die hosts nicht gerade zielführend, ist natürlich klar.

Erstens: „man 5 postconf“ verrät Dir unter anderem 100
Timeouts, an denen Du drehen kannst.
http://www.postfix.org/postconf.5.html

Da möchte ich ungern rangehen, da ich ein sauber laufendes System habe. Ich kann mir zwar nicht vorstellen, dass ich mit einem vorsichtigen Hochsetzen von timeouts viel kaputtmachen kann. Aber der Teufel ist ein Erdhörnchen oder so…

Zweitens: „man 5 transport“
http://www.postfix.org/transport.5.html Da kannst Du für
bestimmte Domains einen Transport definieren („nexthop“),
eventuell mit eckigen Klammern den MX-Lookup unterdrcken.

Au ja, das sieht vielversprechend aus.

Danke
Schorsch

Und funktioniert

Zweitens: „man 5 transport“
http://www.postfix.org/transport.5.html Da kannst Du für
bestimmte Domains einen Transport definieren („nexthop“),
eventuell mit eckigen Klammern den MX-Lookup unterdrcken.

Das hat wie gewünscht funktioniert. Meine Testmail ist zwar gebounced worden, da unbekannter Empfänger, aber sie ist vom gewünschten mx gebounced worden.

Nochmals Danke
Schorsch

Hallo,

Grundsätzlich halte ich es für keine gute Idee, hier Fehler
ausbügeln zu wollen, die ein Provider in Indien verursacht
hat.

Ack.

Auf der anderen
Seite aber besteht bei meinen Kollegen derzeit ein dringender
Bedarf, mit dem Kunden komplikationsfrei und schnell
kommunizieren zu können.

Hm.

Sieh’ es so: Deine Mitbewerber werden dem Kunden nichteimal per Mail ein besseres Angebot zukommen lassen können.

SCNR