pilif.ch - a cuwps

[home]
stuff
some worldwide unique stuff
  • Daily Strips
  • PersistentHandler
  • Denis' Birthday
  • DVD-Region (1)
  • DVD-Region (2)
  • Defeating Miguel
  • Neuronal Interface ;-)
  • Swiss ADSL Check
  • Autodestructing Email
  • Fun with bounces

  • Introduction
  • Theory
  • Solution
  • The MTA
  • Code
  • Conclusion
  • backstage
    backstage-reports of some of my paid projects
  • bookexchange.ch
  • info
    valuable information for my visitors
  • RasInTask
  •  
    four types of "it doesn't work"
    There are four possibilities of "not working" when sending email (provided that you have configured your MTA correctly). Let me explain them to see when we must do something and when our MTA will:
    1. The MTA tries to deliver the message but does not find a MX-Record for the recipient's domain. This is the case if our user gave a completely wrong address like user@jsaofdjoiewrhjoew.kj or if the user's domain server is inproperly configured (which should no longer be the case in today's world). This is a very permanent error and generates a bounce from our MTA
    2. The MTA succeeds to look up the MX-Record of the target domain, but cannot contact the server. This can also be caused by a completely wrong addres, but more often, the remote server is simply temporaly down. This will be catched my our MTA which will try to resend the message for a given period of time. If it still fails then, a bounce will be generated.
    3. The MTA can connect to the remote rerver, but the RCPT TO-command is rejected because the user does not exist. Our MTA will generate a bounce.
    4. I have not yet came across this last type of error, but I list it here anyway: The remote MTA accepts the RCPT TO- and the DATA-command, but deceides then not to deliver the message. Now the remote server will generate the bounce.

    envelope explained
    The next thing we have to look at is the difference between the mail's envelope and the header:

    If you are a common internet-user, then you may only have seen the header so far: This is a string prepended to every mail that is sent, that contains some information about the sender (From:), the recipient (To:), the subject (Subject:), but also some statistical information where the mail passed through (Received:).

    The header is terminated by a blank line and then followed by the message itself.

    The header is that thing, that your email-client (MUA) sees, when displaying the message. It will fill it's GUI with this information.

    The envelope on the other hand ist something that is generated by an MTA, based on the two SMTP-commands RCPT TO and MAIL FROM. The envelope is invisible for the MUA (exception: the standard Unix delivery program adds the Envelope-From as a line beginning with "From " as the first line of the header). MTA never look at the From:- or To:-header when decideing what to do with a message: They only look at the envelope.

    This can be transferred to the real world™: Your post-office also does not open your letter to get the information where it should direct it to: It simply reads what is written on the envelope. If you receive a letter that has been put into the wrong envelope, it is your responsiblity to repost the letter with a correct envelope.


    © 2003 by pilif. cuwps stands for completely useless webpage and is a non-registered non-trademark by pilif - Last Modification: 04/03/01 at 02:07:00