wingmaker
Goto Top

Begrenzt Postfix die Bandbreite des Internetzugangs?

Verflixt und zugenäht ;)

Folgendes Szenario:

Postfix/Firewall/Gateway-PC steht direkt hinter einem Powerkom-Modem, welches 4-fach ISDN Speed über Strom erreicht.

- Internetnutzung im normalen Zustand mit gewöhnlichem Up- und Downstream
- Sobald eine Mail von mehreren MB verschickt wird und gleichzeitig eine öffentliche Adresse im Internet ange"pingt" wird, vergrößern sich die Antwortzeiten der Ping-Pakete bis nach einigen Sekunden keine Pakete mehr durchkommen.
- Ergebnis: Solange die Mail versandt wird, kommt keiner im NEtz dahinter ins Internet!!

Der Downstream ist in seiner Bandbreite ja separat vom Upstream, deshalb stelle ich mir vor, dass Postfix wahrscheinlich den kompletten Upstreambereich der Bandbreite nutzt, um Mails zu versenden. Vermutung - kann das sein? Daher auch keine Ping-Raussendungen mehr. Kann man Postfix irgendwie zwingen, nur einen Teil des Uploadbereichs zu nutzen?

Benötige hier echt seriöse Hilfe, denn ich kämpfe mit der Verzweifelung!

Vielen Dank! :D
--wm


Nachtrag: Oder wie richte ich eine Art QoS auf meinem Linux SuSE 9.3 ein?

Content-ID: 38039

Url: https://administrator.de/contentid/38039

Ausgedruckt am: 25.11.2024 um 23:11 Uhr

AndreasHoster
AndreasHoster 15.08.2006 um 14:29:23 Uhr
Goto Top
Ich weiß nicht, ob man Postfix auf Bandgreitenbegrenzung einstellen kann, aber die c't hat mal einen Artikel über Bandbreitenmanagement unter Linux veröffentlicht:
c't 24/2002, S.224ff
Kennst Du jemanden, der die c't Archiv CDs hat?
31431
31431 15.08.2006 um 14:51:34 Uhr
Goto Top
wenn du dich ziemlich gut mit Linux auskennst..
solltest du dir mal Mastershaper anschauen!

-> http://mastershaper.org/tiki-index.php

Diese Software verwaltet deine gesamte Bandbreite und kann für jede Anwendung (Datenpaket) eine feste Bandbreite vergeben.. außerdem können Wertigkeiten gesetzt werden, um bestimmte Anwendungen vorzuziehen.

Dieses Thema war meine Abschlussprüfung im Mai.. daher kenne ich die Software sehr gut und kann ab und könnte auch mal helfen..

Mfg - Mythiander
Wingmaker
Wingmaker 16.08.2006 um 11:17:31 Uhr
Goto Top
Ja aber soweit ab vom Schuss mag ich gar nicht kommen.
Es kann doch nicht sein, dass mein ganzes Netz bezüglich oben gesagtem stillsteht. Warum erhascht Postfix alleinigen Uploadbandbreitenanspruch? Gibt es da in der Config was? Oder ist allgemein etwas darüber bekannt?
Wingmaker
Wingmaker 31.08.2006 um 17:18:04 Uhr
Goto Top
LEUTE, ich habe immernoch das Problem, doch ich bin eben um eine Erkenntnis reicher geworden!:

Ich tippe den Befehl "mailq" ein und erhalte 17 Mails in der Warteschlange, die ge- und versendet werden wollen. 5 Sekunden später... sind sie auf einmal alle weg! (mailq)

ABER: Sie WURDEN versandt!!! (habe nachgefragt)

ERGO: Postfix versendet alle Mails im Queue gleichzeitig!!

Kein Wunder dass meine Leitung dicht ist/wird, wenn 20 Mails (bestmöglich noch jede a 1 MB) gleichzeitig durch die Leitung rattern wollen!

Obwohl ich in der master.cf den smtp daemon auf "1" (ein Prozess gleichzeitig) habe gesetzt, so sendet Postfix immernoch unkorrdiniert. Und ich habe hier nicht den schnellsten Breitbandzugang...

FRAGE:
WIE bekomme ich postfix dazu, jeweils nur EINE Mail zu senden, quasi die Queue seriell abzuarbeiten??

Wer mir hier hilft mir praktischer Wirkung erhält von mir nen Freibier! (Über Absprache und Koordinierung des Ortes und der Zeit) :D
AndreasHoster
AndreasHoster 03.09.2006 um 16:09:46 Uhr
Goto Top
Wenn du smtp daemon schreibst, meinst auch den smtp Eintrag in der master.cf oder den smtpd Eintrag? Der smtpd ist nämlich für den Empfang, nicht den Versand.

Es gibt in der main.cf noch die Option den smtp_destination_concurrency_limit (oder, wenn für alle Transporte den default_destination_concurrency_limit) Parameter auf 1 zu setzen. Dann sollte auch nur noch eine Mail parallel (also seriell) zu einem Mailserver gesendet werden.
Wingmaker
Wingmaker 04.09.2006 um 09:23:58 Uhr
Goto Top
Interessant.

Ja in der master.cf steht für die Prozesse bei mir: smtpd ... 10 und smtp ... 1

allerdings soll er ja mehrere mails empfangen können, jedoch nur stets eine versenden. und ist diese draußen mit der nächsten im queue beginnen. ein postfix flush sollte also nicht bewirken, dass alle mails herausgebombt werden. PS: kann man das nachprüfen, weil alle Mail IDs die aktiv sind, enthalten ein Sternchen im mailq...

Nochwas: Zu oft erhalte ich ein "Connection timed out" und mails werden nicht versandt. wo stelle ich ein, dass ich ein anderes connection time out definiere? welche variable ist die default?

Danke dennoch für Euren Beistand! Hilft...

Nachtrag: Auch verstehe ich nicht, warum ich nicht an Compuserve-Nutzer versenden kann: "451 Reverse DNS lookup for your IP address is failing. (in reply to RCPT TO command)"
AndreasHoster
AndreasHoster 04.09.2006 um 09:44:29 Uhr
Goto Top
Die Meldung 451 Reverse DNS lookup failed bedeutet, daß Compuserve schaut, ob der Server, der versucht Mails an Compuserver zu schicken, auch der zuständige Mailserver für die Domäne des Absenders ist.
Wenn Du also eine Mail mit der Absenderadresse yourdomain.tld an Compuserve verschickst, schaut der Server von Compuserve nach, welche IP schickt die Mail und welche IP ist im DNS als Mailserver für diese Domain registriert. Wenn diese beiden IP Adressen nicht identisch sind, wird die Mail mit dem Fehler abgewiesen.

Ist eine einfache Anti-Spam Maßnahme, wird auch von manchen anderen Providern gemacht.
Wingmaker
Wingmaker 04.09.2006 um 11:06:13 Uhr
Goto Top
zu dem TimeOut hab ich das hoch gesetzt:
smtp_connect_timeout


Was aber hat es mit folgenden Variablen aufsich, bei denen ich vermute, dass sie der Schlüssel zum Core Problem sind? (nix durch googlen gefunden)

deadbeats_destination_concurrency_limit = xx
default_destination_concurrency_limit = xx
initial_destination_concurrency_limit = xx
local_destination_concurrency_limit = xx


Nochwas: Warum kann ich in der master-cf dann prozesse in der Anzahl definieren, wenn sowieso die Anzahl der gleichzeitig versendeten Mails durch (evtl) obige Variablen bestimmt wird? Glaube, hier hab ich ein Leck im allgemeinen Postfix-Verständnis.
Wingmaker
Wingmaker 04.09.2006 um 11:31:52 Uhr
Goto Top
Entschuldigt meinen Wissensdurst, doch ist eben wichtig! face-smile

Fast Off-Topic: Wie unterbinde ich CRON Jobs, dass diese Mails versenden? ich bekomme jede minute eine mail an root@.... und leite sie derzeit local um.. das file (root mails) lösche ich ab und an, weil wird rasant groß. wie deaktiviere ich mails vom cron daemon? Wieso macht der das überhaupt?

passierte erst neulich, als ich ein neues cron script habe konfiguriert, welches aller 1 min läuft
AndreasHoster
AndreasHoster 04.09.2006 um 11:46:07 Uhr
Goto Top
Wie ich schon etwas weiter oben geschrieben habe:
Es gibt in der main.cf noch die Option den smtp_destination_concurrency_limit (oder, wenn für alle Transporte den default_destination_concurrency_limit) Parameter auf 1 zu setzen. Dann sollte auch nur noch eine Mail parallel (also seriell) zu einem Mailserver gesendet werden.

Laut Postfix-Anleitung gibt ????_destination_concurrency_limit an, wieviel Mails Postfix parallel über eine Verbindung versendet, d.h. wenn Postfix eine Verbindung zu einem Mailserver hat und mehrere Mails für diesen Mailserver, dann macht er die parallel bis zum concurrency_limit. Das hat aber wohl nichts mit der Anzahl Verbindungen zu unterschiedlichen Servern zu tun (die man wohl auch nicht einstellen kann, oder ein Prozess macht nur eine auf einmal, weiß ich aber nicht).

Ich vermute schlicht mal, daß es aber einer bestimmten Menge von Verbindungen günstiger ist, ein neuen Prozess aufzumachen, als das ein Prozess noch mehr Verbindungen verwaltet und man daher sowohl als auch einstellen kann.

Also, ausprobieren, ob die Parameter was bringen.
AndreasHoster
AndreasHoster 04.09.2006 um 12:06:22 Uhr
Goto Top
Wingmaker
Wingmaker 05.09.2006 um 10:39:34 Uhr
Goto Top
Bisher scheint "alles" zu laufen. Wow...! Ich mag dennoch diese Woche meine Logs verfolgen und dann nochmal vorbeischauen.

Mit den A-Record einträgen und DNS Angelegenheiten: Ich denke, ich verwende Postfix nicht mehr als Mailversender wie bisher, sondern baue die SMTP Authentifikation ein, damit er sich bei unserem externen EMailProvider anmeldet.
Fragen dazu:

Dann lädt er doch die Mails dorthin und leitet sie nicht direkt weiter an die Zieldomänen?
Auch lädt er dann nur die Mail einmal hoch und nicht soviele Male, wie es Empfänger in der Mail gibt?
Mailempfang bleibt wie bisher? Oder muss man sich nun auch am Postfix itself anmelden? Wäre nicht wünschenswert.
AndreasHoster
AndreasHoster 05.09.2006 um 12:17:50 Uhr
Goto Top
Wenn man es richtig eingerichtet hat, dann leitet er alle Mails an den EMailprovider weiter und nichts mehr direkt (mache ich auch so).
Mit der Auflösung bei mehreren Empfängern, keine Ahnung.
Mailempfang bleibt normal, wenn man SMTP Auth nur fürs Versenden aktiviert.
Wingmaker
Wingmaker 06.09.2006 um 14:28:08 Uhr
Goto Top
Das Problem ist nachwievor: Die concurrency Variablen habe ich auf 1 gesetzt (smtp), jedoch sehe ich im Maillog stets mehrere Mails zur gleichen Zeit herausdonnern. bzw. auch wenn es eine Mail von einigen MB (eine!!), dann ist unsere ohnehin schon dünne Inet-Leitung DICHT. Warum beansprucht Postfix sämtlichen Stream für sich? Wegen einer Mail?!

Normalerweise kann es mir egal sein, wie lange es dauert, bis die Mails draußen sind, aber sie haben keinesfalls den Internetverkehr zu beeinträchtigen! Das muss doch machbar sein, oder, liebe Freunde? Hmm.... :/