5 checkmail.pl [-hqlr] [-m <host>] -f <file>|<address>
8 checkmail prüft die Zustellbarkeit von E-Mail-Adressen. Es ist
9 entweder die zu prüfende Adresse als letztes Argument oder
10 mit dem Parameter -f eine Datei mit zu prüfenden Adressen zu
16 Mit dem Argument -h wird eine kurze Hilfe ausgegeben.
19 Mit dem Argument -q werden alle Ausgaben unterdrückt;
20 das Script beendet sich nur mit einem Exit-Status zwischen
24 Mit dem Argument -l wird ein ausführliches Logging des
25 SMTP-Dialogs aktiviert.
28 Mit dem Argument -r wird auch eine gezielt ungültige Adresse
29 geprüft, um festzustellen, ob der Host nicht einfach jede
30 Mailadresse ohne Prüfung akzeptiert.
32 Mit dem Argument -m, gefolgt nach Leerzeichen von einem
33 Hostnamen, kann statt der Abfrage des für die Domain
34 zuständigen Hosts per DNS die Zustellfähigkeit bei einem
35 bestimmten Host geprüft werden.
37 Beispiel: checkmail.pl -m test.host.example mail@domain.example
40 Mit dem Argument -f, gefolgt nach Leerzeichen von einem
41 Dateinamen, kann eine ganze Reihe von zu prüfenden Mailadressen
42 aus einer Datei eingelesen werden, die jeweils eine Adresse
45 Beispiel: checkmail.pl -f adressen.txt
50 Die Basiskonfiguration erfolgt innerhalb des Scripts. Anzugeben
54 Der im SMTP-Dialog für HELO/EHLO zu verwendende Hostname.
57 Die Absenderadresse (Envelope-From:) für den Test.
60 Der Localpart der für den Parameter -r erforderlichen
65 Vor dem ersten Aufruf ist innerhalb des Scripts die
66 Basiskonfiguration vorzunehmen.
68 Danach kann das Script unter Angabe der zu prüfenden E-Mail-Adresse
69 aufgerufen werden. Es versucht den oder die zuständigen MX (Mail
70 eXchanger) für die Domain der Mailadresse zu ermitteln (ggf., falls
71 nicht vorhanden, an den entsprechenden Host zuzustellen), nach dort
72 zu verbinden und den SMTP-Dialog bis zum "RCPT TO:" durchzuführen,
73 um dann die Antwort des Mailservers auszuwerten.
75 Um Mailserver zu erkennen, die zunächst jede Mailadresse akzeptieren
76 und unerwünschte Mail erst später bouncen oder unterdrücken, kann
77 danach ein weiterer Test mit einer sicher ungültigen Mailadresse
78 ausgeführt werden (-r).
80 Nicht nur das Ergebnis des Tests, sondern auch der Dialog mit dem
81 Mailserver kann vermittels des Parameters -l ausgegeben werden; dies
82 ist hilfreich, um auszuschließen, daß die die Testverbindung aus
83 andere Gründen abgewiesen wird.
85 Wenn (gar) keine Textausgabe gewünscht ist, kann diese vermittels -q
86 unterdrückt werden; das Script beendet sich dann mit einem der vier
87 folgenden Statuscodes:
89 0: Adresse gültig oder Massenaufruf (-f)
91 2: Adresse kann nicht geprüft werden (-r und negativer Test)
94 Mehrere Mailadressen können mit Hilfe des Parameters -f innerhalb
95 einer Datei (eine Adresse pro Zeile) übergeben werden; in diesem
96 Fall wird immer der Status "0" zurückgegeben.
98 Schließlich kann mit Hilfe des Parameters -m die DNS-Abfrage
99 unterdrückt und die Verbindung zu einem bestimmten Host erzwungen
102 Hinweis: Der Test sollte nicht von einem Dialup-Host oder einem Host
103 auf einer sonstigen Blacklist aus durchgeführt werden! Ggf. kann ein
104 erneuter Aufruf von checkmail.pl -l für Klarheit sorgen, ob der Test
105 wegen der Auswertung einer Blacklist - unabhängig von der verwendeten
106 Adresse - fehlschlägt.
109 Die folgenden CPAN-Module werden neben Perl 5.6.1 oder höher benötigt:
114 - Fehler und Fehleingaben werden größtenteils nicht abgefangen.
116 Weitere Bugs nimmt <thh@inter.net> gerne entgegen.
119 Thomas Hochstein <thh@inter.net>
125 © 2002-2005 Thomas Hochstein.
126 See source for license und warranty.