Carlos E. R. wrote:
The Saturday 2006-04-29 at 13:19 +0200, Hylton Conacher (ZR1HPC) wrote:
understand an SMTP server must send its load to another SMTP server. To clarify let us assume there are only 3 SMTP servers in the world ie my local one, my ISP's one, the destination one.
Me-- |A|----------Broken link--------------|B| \ / \---------Link OK-------|C|--------/
[A] Mozilla ----- local----\---------------------- Destination [B] \ postfix \ / SMTP \ \ [C] / -------------------ISP ---------/ SMTP
Those are the possibilities.
Thanks for the ASCII correction. :)
Let us assume that A cannot see the destination B. It determines that the alternate path to B is via C.
It's rather that you tell it to do it that way; it doesn't do it automatically. The route is decided looking at its configuration and the answers from the DNS. OK, Would this be more correct? I tell (A) to send directly to (C). If it cannot resolve (B) it should use (C) as a relay.
The destination (B) does not need to authenticate the messages it receives
It doesn't because it is the SMTP server responsible to receive email for the domain in the "To" field. Ie, it is not a relay, but the final destination. Understood, although I initially understood, albeit correctly, that the final receiving SMTP server would not do authentication.
however C does. So while my local SMTP server is connected and sending mail to C, C does authentication and sees that the FROM header in some of the emails is not the same as the email address as the person logged onto the ISP. C therefore drops those messages into the forever ether. The messages whose FROM header is the same as the person dialed in are relayed to the destination server (B).
Well, that's because the person administering that crappy server has decided to do it that way, IMO. I know it happens.
It should, however, never "drop" mail, but "reject" mail. That's very irresponsible on their part. Sorry, wrong explanation on my part. Courtesy of Sandy I understand that the ISP SMTP(C) server would authenticate with (A) but not in the way I had initially described. It would use username/password of its own ie the email FROM header and the username to authenitcate would be different. Therefore the mail would actually get thru. I hope I understand correctly Sandy.
I'll have to remember to REJECT mail and not DROP it when I setup Postfix on this side. <snip>
I prefer to send through (A) because that way I see the logs, and reading them I know what is happening. If I get a rejection, I know it, not a box popping up from mozilla telling me of a error in transmission. I get more control. I agree, although right now I am getting the thoughts in order so that I may strive to set up my own (A) server.
However, you can tell (A) to send directly to (B). That's what I normally do. It works with SuSE lists, but it doesn't with some other recipients: they check that (A) is on a dynamic address and refuse talking. OK, so how do I ensure all the mail gets thru? With the dialup dynamic IP, some people/lists will not receive email from me. To get around that could I state in my config that the mail must always be delivered to my ISP and therefore use the ISP mailserver on a permanent IP as a relay?
a message not getting thru is against the very nature of TCP/IP. How can I ensure te messages always get through, without having to put a read receipt on each?