OSEC

Neohapsis is currently accepting applications for employment. For more information, please visit our website www.neohapsis.com or email hr@neohapsis.com
 
Subject: Re: OT: DNS - MX
From: Baron Fujimoto (baronlava.net)
Date: Thu Nov 02 2000 - 20:57:17 CST


On Thu, 2 Nov 2000, Ralf Hildebrandt wrote:

: Sasa Babic wrote:
:
: > Someone mentioned that MX record shouldn't point to a CNAME record. So,
: > is it something that is demanded by a RFC or is it just considered a
: > good practise? Or am I completly on the wrong track?
:
: http://www.acmebw.com/askmrdns/bind-messages.htm
: always good if you don't know what your BIND is barking about.
:
: But back to the question:
: http://www.intac.com/~cdp/cptd-faq/section6.html
: see "Question 6.6. Can an NS record point to a CNAME ?":
:
: ... snip ...
: Only one RR type is allowed to refer, in its data field, to a CNAME, and
: that's CNAME itself. So CNAMEs can refer to CNAMEs but NSs and MXs
: cannot.
: ...snip ...

To be RFC compliant MX records should point to "domain names" and not IP
addresses or a CNAME.

According to section 10.3 of RFC 2181 "Clarifications to the DNS
Specification":

10.3. MX and NS records

   The domain name used as the value of a NS resource record, or part of
   the value of a MX resource record must not be an alias. Not only is
   the specification clear on this point, but using an alias in either
   of these positions neither works as well as might be hoped, nor well
   fulfills the ambition that may have led to this approach. This
   domain name must have as its value one or more address records.
   Currently those will be A records, however in the future other record
   types giving addressing information may be acceptable. It can also
   have other RRs, but never a CNAME RR.

The relevant clause here is "This domain name must have as its value one
or more address records. Currently those will be A records..." This
implies that an MX record must point to a something with a valid A record
(an IP address or CNAME does not meet this criterion).

Other RFC's which address this (though somewhat obtusely) are RFC 973 and
RFC 1035.