ietf-smtp
[Top] [All Lists]

The Actual Difference

2008-04-01 10:45:22

John C Klensin <john+smtp(_at_)jck(_dot_)com> wrote:

Suppose one has mail addressed to 
user(_at_)foo(_dot_)example(_dot_)com(_dot_)  Suppose 
further that one has
  foo.example.com.  IN A 10.0.0.1
                    IN A 10.0.0.2
                    IN AAAA ....
and no MX record.

Now what 2821bis now says includes "address record" and the old 
rule about making an implicit MX record with preference 0 and 
then following the rules.  So we pretend that we had
  foo.example.com.   MX 0 foo.example.com.
to complement the above.

   Indeed: both 2821 ande 2821bis-09 require exactly that.

   The _difference_ is that 2821 _requires_ a DNS query for an
A RR, while 2821bis-09 _requires_ querying for
" 
" either an IPv4 A RR or an IPv6 AAAA RR, or their successors

   As I read this, it requires querying for _both_ A and AAAA
whether or not the host doing the querying knows about both
IPv4 and IPv6. (And it introduces that "or their successors"
language, which I find frankly impossible to implement.)

Interestingly enough, in that case, even if the rule were 
"implicit MX on A RRs only", exactly the same MX record would be 
generated.  The only time the "address record" rule that is now 
present in 2821bis is an issue is if there is no A RR.

   Exactly. (I have been hesitating to point this out, for fear of
interrupting a perfectly good flame war.)

Once that implicit MX record exists, there are fairly clear 
rules about which address to use for foo.example.com.

   Alas, they're not all that clear to me. :^(

To be a little more precise, while the rules are clear, they
pretty much leave it up to the sending host

   (That's what I mean by not so clear...)

   Please excuse me for snipping the rest of John K's wisdom on
this diversion. I'd be _very_ happy to discuss it under a different
Subject heading.

If a receiving host wants to specify a priority for which of 
IPv6 or IPv4 it prefers to receive traffic over, it must have 
two names, one for its IPv4 interface(s) and one for its IPv6 
one(s) and then put in an explicit set of MX records that bind 
separate priorities to those two names.

   Or, it might have two MX RRs with the same priority...

So again no issue with whether a host looks for an AAAA record
if it cannot find an MX.

   In this particular case: yes, substituting the 2821bis language
has no effect on the outcome -- the only effect being requiring
more DNS traffic.

   There are, of course, other cases where the different language
_would_ lead to different results -- the most obvious being an
IPv6-only domain.

   This whole flame-war seems a lot like many other IPv6 flame-wars
I've observed: one side saying that differences between IPv4 and
IPv6 should be prohibited, with the other side saying differences
should be respected and used.

   Frankly, I have no use for the "differences prohibited" side
(so I don't usually reply). I'd much prefer to be talking about
_how_ to best respect the differences.

--
John Leslie <john(_at_)jlc(_dot_)net>

<Prev in Thread] Current Thread [Next in Thread>
  • The Actual Difference, John Leslie <=