[Tracker-discuss] [issue92] Activate email sending

Izak Burger metatracker at psf.upfronthosting.co.za
Tue Mar 27 19:44:34 CEST 2007

Izak Burger added the comment:

Martin v. Löwis wrote:
> Ah, an MX record is a 'mail-exchanger' entry in the domain name system (DNS). It 
> is needed so that email sent to 'report at bugs.python.org' actually gets send to 
> the upfronthosting machine (which now is the mail exchanger for the 
> bugs.python.org domain).

Just to clarify a bit, an MX tells other mail servers where to send mail 
for which domain.  In the olden days there were no MX records.  If I 
sent mail to bob at example.com, it would look up the ip for example.com 
(the A record in other words), connect to that machine on port 25 and 
deliver the email using smtp.  This had two drawbacks (probably more, 
but I can think of two right now): 1) Mail is bound to a machine rather 
than a domain.  Any other service that should be available on 
example.com must run on the same machine, that is, if I run a webserver 
example.com and www.example.com could end up being different machines, 
and a user browsing to example.com might not get what he expects.  2) No 
redundancy, you cannot have to mail servers handling the same domain.

MX records solves the problem by saying that "Mail for example.com is 
handled by mail.example.com (an A record that resolves to the correct 
IP).  Also, I could have two or more MX records pointing to different 
machines so that one takes over if the other is down, unreachable, or 
under too much load.  MX records also have a priority value, which means 
you can have one work harder than the other (ie the lower priority one 
is the secondary and only takes over if the primary is 

The idea behind MX records has led to another more general record, the 
SRV record.  The point being, if I can lookup the mail exchanger for a 
domain, why not use the same technique to look up other services on my 
network (such as my kerberos server, my proxy server, etc etc).

In this case, we have an MX record for bugs.python.org that states that 
mail should go to bugs.python.org (the A record).  This is there simply 
so that MTAs (MTA == mail transfer agent) that do not implement delivery 
to A records (deprecated and only for backwards compatibility) can still 
reach it, and so that mail servers who do a reverse check on the MX will 
not reject mail sent from bugs.python.org (the reverse check is done 
since, in theory, if the return path has no MX, the domain cannot 
receive mail and is therefore fake).

The people on my local lug knows me as the guy who writes long 
explanations even for simple things.  So there you go :-)


Meta Tracker <metatracker at psf.upfronthosting.co.za>

More information about the Tracker-discuss mailing list