Tim Sabionski: Was macht sendmail mit ungültigen Emailadressen?

Ich soll für einen Kunden aus einer Mysql Datenbank heraus einige Tausend Emails verschicken. Ich habe das Ganze mit Perl realisiert und es klappt auch bei Testläufen einwandfrei.

Aber ich habe folgendes Problem:
Die Email-Empfänger haben vor einigen Monaten mal bei einer Umfrage teilgenommen und gesagt, daß sie an weiteren Nachrichten interessiert seien. Mittlerweile dürften einige Emailadressen nicht mehr gültig sein. Diese sollen protokolliert werden, damit man sie aus der Datenbank löschen kann.

Wie protokolliert sendmail falsche Emailangaben? Ich bekomme nämlich keine Emails mit einer Fehlermeldung (mail fail delivery...), wenn ich mit sendmail eine Mail an eine ungültige Adresse schicke. Wie kann ich trotzdem herausfinden, welche Emailadressen nicht (mehr) gültig sind?

Vielen Dank schon mal,

mfG, Tim

  1. Hi Tim!

    Wie protokolliert sendmail falsche Emailangaben?

    Du kannst den Parameter -X bei sendmail angeben, dann wird protokolliert, aber lies selbst (Auszug aus 'man sendmail'):
         -X logfile     Log all traffic in and out of sendmail in the
                        indicated  logfile for debugging mailer prob-
                        lems.  This  produces  a  lot  of  data  very
                        quickly and should be used sparingly.

    Und das bei einigen 1000 Mails...Außerdem wird auch dort nicht drinstehen, ob die Zieladresse erreicht wurde.

    Das Thema war schon mal in der Diskussion hier <../../sfarchiv/2000_2/t11884.htm>, mit dem Tipp von Björn kannst Du schon viel machen. Allerdings frisst die Überprüfung von mehreren 1000 Adresse viel Zeit... Und ob die Adresse vielleicht trotzdem existiert, ist nicht sicher...

    Ich bekomme nämlich keine Emails mit einer Fehlermeldung (mail fail delivery...), ...

    Hast Du denn einen Absender angegeben? Wenn nicht, dann landen die Fehlermeldungen im Nirvana.

    Gruß Frank

    1. Hallo Frank,

      erstmal danke für die schnelle Antwort!

      Ja, ich habe schon meine Emailadresse als Absender mit angegeben, erhalte aber trotzdem keine Email mit einer Fehlermeldung.

      Die Syntax der Emails, die momentan in der Datenbank enthalten sind, checke ich auch schon so ähnlich ab, wie es in dem Forumsbeitrag, der Du mir empfohlen hast, beschrieben wird. Da konnte ich auch schon die ausfiltern, die definitiv ungültig sind, weil die Syntax keine echte Mailadresse sein kann.

      Aber dennoch wird es bei ca. 10000 Emailadressen bestimmt sehr viele geben, deren Syntax zwar eine reguläre Emailadresse wäre, die es aber defacto doch nicht (mehr) gibt.

      Wie kann ich nach dem Start des Perlprogramms, das die 10000 Emails verschickt, feststellen, welche nicht angekommen sind?

      Schöne Grüße,
      Tim

      1. Ja, ich habe schon meine Emailadresse als Absender mit angegeben, erhalte aber trotzdem keine Email mit einer Fehlermeldung.

        Setze den Return-Path:, wenn Du kannst.

        Peter