Eigentlich habe ich darüber nachgedacht, weil ich vergessen habe, jemandem eine E-Mail zu schicken, die ich senden sollte, und wollte, dass er eine Kopie erhält, ohne sie zweimal an alle anderen zu senden. Am Ende habe ich es nur an ihn weitergeleitet, aber ich bin immer noch neugierig.
Wo werden die CC- und BCC-Listen in SMTP behandelt? Müssen Sie den SMTP-Server steuern, oder kann dies clientseitig erfolgen?
Vielen Dank!
Antworten:
Kurz gesagt: Ja, wenn Sie eine direkte Verbindung zum SMTP-Server des Empfängers herstellen können. Aus den Gründen, die Rup in seiner Antwort darlegt, ist dies möglicherweise nicht besonders praktisch. Wenn Sie sich in einem Netzwerk hinter einer Firewall befinden, können Sie möglicherweise überhaupt keine Verbindung zu einem Remoteserver auf TCP-Port 25 herstellen.
Angenommen, dies gilt nicht für Sie, dann ist hier das Detail:
Wenn Sie (als E-Mail-Client) eine Verbindung zum E-Mail-Server des Empfängers herstellen, sind für diesen Server (zu Übermittlungszwecken) nur die in angegebenen Empfänger von Bedeutung
RCPT TO:
. Siehe RFC2821 - Simple Mail Transfer Protocol . Es wird nicht zwischen dem Empfängertyp (zu :, cc: oder bcc :) unterschieden, sondern nur "Stellen Sie sicher, dass der Empfänger auf Ihrem Server dies erhält".Für den eigentlichen E-Mail-Client des Empfängers sind es jedoch die Kopfzeilen der Nachricht, die angeben, wer alle Empfänger der Nachricht waren. Siehe RFC2822 - Internet-Nachrichtenformat .
Mit anderen Worten, die Header TO :, CC: und BCC: dienen dem Mail-Client, während die eigentliche Verteilung während der SMTP-Konversation mit den Mail-Servern erfolgt.
Sie können sich also tatsächlich mit einem SMTP-Server unterhalten, der ungefähr so aussieht:
Der Nettoeffekt ist, dass er
[email protected]
eine Kopie der E-Mail erhält, die ihn auf der CC-Liste hat[email protected]
, sowie den ursprünglichen Empfänger und den ursprünglichen CC-Empfänger[email protected]
.Da wir jedoch nie eine Verbindung zu den Mailservern der beiden letzteren hergestellt haben, erhalten diese die E-Mail nicht zum zweiten Mal. Und da wir die E-Mails, die bereits an sie gesendet wurden, nicht ändern können, werden sie nie bemerken, dass wir einen weiteren CC-Empfänger hinzugefügt haben.
quelle
Was passiert ist
Wenn Sie die E-Mail also in 3 einfügen und direkt an den SMTP-Heimserver des vermissten CC-Benutzers übermitteln können, können Sie diesen den CC übermitteln, ohne die E-Mail an alle anderen senden zu müssen. Insbesondere erhält ein BCC-Empfänger Nachrichtenkopfzeilen und -körper, in denen diese überhaupt nicht erwähnt werden (mit Ausnahme eines X-Envelope-To-Headers).
In der Praxis ist es jedoch viel einfacher, an alle zu senden. Um dies effizient zu erledigen, müssen Sie Ihren E-Mail-Client und Ihren lokalen SMTP-Server so ändern, dass eine gefälschte Empfängerliste oder eine Ausschlussliste unterstützt wird, die nicht wirklich an Empfänger gesendet wird und die während der Empfängererweiterung verarbeitet wird.
quelle
Dieses Problem wird tatsächlich durch ein bestehendes IETF-Work-in-Progress gelöst: die Cosmetic Carbon Copy . Leider kenne ich keinen E-Mail-Client, der CCCs implementiert, da der Entwurf allgemein als sinnloser Witz für den Aprilscherz angesehen wird.
Im Ernst, was Sie fragen, ist möglich, vor allem, weil der Inhalt einer E-Mail keinen Einfluss darauf hat, an wen die E-Mail auf der SMTP-Ebene gesendet wird. E-Mail-Clients sind so geschrieben, dass sie E-Mails an alle Personen in den Feldern An, CC und BCC senden. Dies ist jedoch in keiner Weise erforderlich.
Aktualisiert: Um genau zu sein, verwendet der Absender beim Senden von E-Mails an einen SMTP-Server den Befehl RCPT, um anzugeben, an welche E-Mail-Adressen eine Nachricht zugestellt werden soll. Anschließend sendet er den Inhalt der Mail mit einem DATA-Befehl. Der SMTP-Server sollte den Inhalt nicht anzeigen. Es sollte möglich sein, der CC-Kopfzeile einer Nachricht einen Empfänger hinzuzufügen und den SMPT-Server aufzufordern, ihn nur an diese eine Adresse zuzustellen.
quelle
Wenn ich das richtig verstehe, versuchen Sie, eine Nachricht ein zweites Mal zu senden, einschließlich der ursprünglichen Empfänger in den Kopfzeilen An: und CC:, aber nur diese Nachricht wird von einigen zusätzlichen Empfängern empfangen. Wie in anderen Antworten angegeben, kann dies dadurch erreicht werden, dass Ihr E-Mail-Client mit dem SMTP-Server kommuniziert und nur einen Empfänger angibt, jedoch die An: - und Cc: -Header der ursprünglichen E-Mail enthält.
Der Apple Mail- Client verfügt über Funktionen, die dies effektiv ausführen können. Die Weiterleitungsfunktion finden Sie im Menü Nachricht oder im Kontextmenü einer Nachricht. Mit dieser Funktion können Sie eine E-Mail transparent an eine andere Person weiterleiten, ohne Fwd: in die Betreffzeile einzufügen und die Angebotsstufe zu erhöhen. Sie kann jedoch auch für zuvor gesendete Nachrichten verwendet werden. Die To / Cc / From-Felder der ursprünglichen Nachricht bleiben unverändert, und die neuen Empfänger werden in den Headern Resent-To und Resent-CC hinzugefügt. Die einzigen Empfänger der erneut gesendeten Nachricht sind diejenigen, die Sie beim Verfassen der Nachricht angegeben haben. Es ist nicht ganz klar, wie dies funktioniert, wenn Sie die Funktion verwenden. Testen Sie sie daher vorher.
quelle
Es kann von Client zu Client erlaubt / verboten werden, aber Sie können versuchen, etwas Falsches (wie ";; nicht bekannte Empfänger ;;") in das An-Feld und alle in das BCC-Feld zu setzen. Wenn Sie den Vorgang dann wiederholen, sieht es aus wie dieselbe E-Mail, solange niemand Zeitstempel, Nachrichten mit Threads und dergleichen genau genug beobachtet.
quelle