I think the answers to these questions are obvious, but they're not
obviously obvious, so:
1. Let's say I have these DNS records:
foo.example AAAA a:b::c:d
foo.example MX 10 mail.foo.example
mail.foo.example A 1.2.3.4
Then a client would try to contact 1.2.3.4, and give up if it can't. A v6
only client can't send mail to foo.example. No client should try to send
mail to a:b::c:d.
2. Let's say I have these DNS records:
bar.example A 1.2.3.4
bar.example MX 10 mail.bar.example
mail.bar.example AAAA a:b::c:d
A client would try to connect to a:b::c:d, and give up if it can't. A v4
only client can't send mail to bar.example. No client should try to send
mail to 1.2.3.4.
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 1.2.3.4
mail1.baz.example AAAA a:b::c:d
mail2.baz.example A 2.3.4.5
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 1.2.3.4
mail1b.baz.example AAAA a:b::c:d
mail2a.baz.example A 2.3.4.5
mail2b.baz.example AAAA b:c::d:e
In both of these examples, a v4 client tries 1.2.3.4, then 2.3.4.5.
In both of these examples, a v6 client tries a:b::c:d, then b:c::d:e
A dual stack client tries 1.2.3.4 and a:b::c:d in either order, then
2.3.4.5 and b:c::d:e in either order.
Does this all look right?
R's,
John
Regards,
John Levine, johnl(_at_)taugh(_dot_)com, Taughannock Networks, Trumansburg NY
"I dropped the toothpaste", said Tom, crestfallenly.