At 18:55 2007-01-01 +0800, DR. Lee - NS3 wrote:
Message-ID and In-Reply_to looks like a randon number generated by the
mail server. I would like to know the logic you described could be used
in practical sense.
Your quest for an answer would be well served if you read the appropriate
mail RFCs to get an understanding of what a Message-ID is. This would be
an appropriate start:
Particularly, "Recommendations for generating Message IDs"
Both In-Reply-To: and References: are lists of prior Message-ID values
which the present message is related to.
Basically, since most sites append the local mailhost name to the seemingly
random digits, those digits need only be unique to that site. Common
elements (not all of which are employed in every implementation) seen in
the id string include encodings of time/date, processid, SMTP ID (for the
submitted message), and IP address. Randomness is also often included, but
it isn't the entire value - it's there to help deal with simultanious ID
generation. One could also use message length, message CRC, and sender
identity in generating values.
Of course, MUAs often generate them directly as well before submission to
the MTA. The data often looks more random than it is, because the encoding
of the values can change their appearance - some messageids may have time
and date which is directly discernable:
Clearly appears to be September 10, 2002 at 17:48:01 (local or GMY, not
specified), and the sequence after that generally follows the syntax often
seen in SMTP IDs (so, the SMTP ID of the MSA).
doesn't bear any similarity to a date or time - but that could be because
those elements have been represented as a "seconds from epoch" (often Jan
1, 1970), along with other data, which ends up obscuring the meaning of the
numbers you see (note also that this messageid is strictly numeric -
base10, versis the prior which is alphanumeric - base36).
Here's the client-generated MessageID from a recent posting of mine to this
The first sequence in that is the version number of the MUA (126.96.36.199.2),
followed by the date & time (probably when queued, not when submitted to
the MSA), followed by a 8 byte hex value which I've not tried to ascertain,
but certainly seems to increase with time, with the whole lot completed
with the smtp hostname.
The point of a messageid isn't that it's specific encoding follows some
standard, but that it offers a unique ID value. As long as the LHS is
unique within the host represented on the RHS, that is achieved.
Sean B. Straw / Professional Software Engineering
Procmail disclaimer: <http://www.professional.org/procmail/disclaimer.html>
Please DO NOT carbon me on list replies. I'll get my copy from the list.
procmail mailing list Procmail homepage: http://www.procmail.org/