On 17 dec 2010, at 06.52, John R Levine wrote:
3a. Let's say I have these DNS records:
baz.example MX 10 mail1.baz.example
baz.example MX 20 mail2.baz.example
mail1.baz.example A 22.214.171.124
mail1.baz.example AAAA a:b::c:d
mail2.baz.example A 126.96.36.199
mail2.baz.example AAAA b:c::d:e
3b. Let's say I have these DNS records:
baz.example MX 10 mail1a.baz.example
baz.example MX 10 mail1b.baz.example
baz.example MX 20 mail2a.baz.example
baz.example MX 20 mail2b.baz.example
mail1a.baz.example A 188.8.131.52
mail1b.baz.example AAAA a:b::c:d
mail2a.baz.example A 184.108.40.206
mail2b.baz.example AAAA b:c::d:e
In both of these examples, a v4 client tries 220.127.116.11, then 18.104.22.168.
In both of these examples, a v6 client tries a:b::c:d, then b:c::d:e
A dual stack client tries 22.214.171.124 and a:b::c:d in either order, then 126.96.36.199
and b:c::d:e in either order.
Does this all look right?
I would say 3a is the only safe way of setting up DNS, but I am also a person
that do not like multiple MX records as I think non-deliverable mail should be
queued on the sender side.
Because of this, I think one should strongly recommend 3a as "the correct
setup", possibly without the secondary MX.
If you do anything else (including 3b) the outcome might be random -- although
I hope 3b is what in reality happens, and not that a single stack client give
up when it tries one of the two MX that do not have connectivity with the
version of the IP protocol it uses.