Discussion:
I-D Action:draft-klensin-rfc2821bis-10.txt
Tony Hansen
2008-04-15 13:37:55 UTC
Permalink
Diffs between -09 and -10 can be found by clicking on Diff1 or Diff2 at
the top of tools.ietf.org/html/draft-klensin-rfc2821bis

G.12. Changes from version -09 to -10
1. Changed uses of "character length" to "octet length" and
wrote a brief introduction
2. Modified text in Appendix A to permit extensions that would
permit non-ASCII characters in command arguments or replies.
3. Moved reference to RFC 1870 to Normative, since it is
referenced in a SHOULD.
4. Changed the description of MX handling using Glenn Anderson's
text. No substantive change, just clarity.

Tony Hansen
***@att.com

Internet-***@ietf.org wrote:
> A New Internet-Draft is available from the on-line Internet-Drafts directories.
>
> Title : Simple Mail Transfer Protocol
> Author(s) : J. Klensin
> Filename : draft-klensin-rfc2821bis-10.txt
> Pages : 98
> Date : 2008-04-14
>
> This document is a specification of the basic protocol for Internet
> electronic mail transport. It consolidates, updates, and clarifies
> several previous documents, making all or parts of most of them
> obsolete. It covers the SMTP extension mechanisms and best practices
> for the contemporary Internet, but does not provide details about
> particular extensions. Although SMTP was designed as a mail
> transport and delivery protocol, this specification also contains
> information that is important to its use as a "mail submission"
> protocol for "split-UA" mail reading systems and mobile environments.
>
> A URL for this Internet-Draft is:
> http://www.ietf.org/internet-drafts/draft-klensin-rfc2821bis-10.txt
Arnt Gulbrandsen
2008-04-15 17:01:58 UTC
Permalink
I agree that the wording in -10 reflects the rough consensus.

However, I think 2821bis needs a little extra text to notify operators
that they may need to upgrade or reconfigure to comply with 2821bis.
For example bs.jck.com currently refuses mail from AAAA-only addresses:

$ vrfy -vv -S ***@ipv6.l.google.com ***@jck.com
rcpt '***@jck.com' at 'bs.jck.com'
connecting to bs.jck.com (209.187.148.211) port 25
<<< 220 bs.jck.com ESMTP Exim 4.34 Tue, 15 Apr 2008 12:39:35 -0400
>>> EHLO libertango.oryx.com
<<< 250-bs.jck.com Hello libertango.oryx.com [195.30.37.9]
<<< 250-SIZE 52428800
<<< 250-8BITMIME
<<< 250-PIPELINING
<<< 250-AUTH CRAM-MD5
<<< 250 HELP
>>> MAIL From:<***@ipv6.l.google.com>
<<< 250 OK
>>> RCPT To:<***@jck.com>
<<< 550-Verification failed for <***@ipv6.l.google.com>
...

ipv6.l.google.com has only an AAAA RR. The same test works when I use
***@www.l.google.com as sender address.

(I tried some other recent posters. Some accept mail from ***@ipv6,
including Dave, some others don't, including you and me.)

Exim users can comply by disabling the sender_verify variable, postfix
users can disable reject_unknown_sender_domain, I don't know the
relevant variable for any other MTAs.

Arnt
SM
2008-04-15 18:23:32 UTC
Permalink
Hi Arnt,
At 10:01 15-04-2008, Arnt Gulbrandsen wrote:
>However, I think 2821bis needs a little extra text to notify
>operators that they may need to upgrade or reconfigure to comply
>with 2821bis. For example bs.jck.com currently refuses mail from
>AAAA-only addresses:

There's nothing wrong with that if the host is only IPv4 aware. The
IPv6-only sender would be connecting to the IPv6 relay for that
domain to send mail as follows:

MAIL FROM:<***@ipv6.l.google.com>
250 OK
RCPT TO:<***@jck.com>
250 Accepted

>Exim users can comply by disabling the sender_verify variable,
>postfix users can disable reject_unknown_sender_domain, I don't know
>the relevant variable for any other MTAs.

That might cause more problem than it solves.

Regards,
-sm
Arnt Gulbrandsen
2008-04-15 18:32:40 UTC
Permalink
***@resistor.net writes:
> Hi Arnt,
> At 10:01 15-04-2008, Arnt Gulbrandsen wrote:
>> However, I think 2821bis needs a little extra text to notify
>> operators that they may need to upgrade or reconfigure to comply
>> with 2821bis. For example bs.jck.com currently refuses mail from
>> AAAA-only addresses:
>
> There's nothing wrong with that if the host is only IPv4 aware. The
> IPv6-only sender would be connecting to the IPv6 relay for that
> domain to send mail as follows:
>
> MAIL FROM:<***@ipv6.l.google.com>
> 250 OK
> RCPT TO:<***@jck.com>
> 250 Accepted

Yes, and the IPv6-only relay would then connect to bs.jck.com and
issuing the conversation that ends with 550.

>> Exim users can comply by disabling the sender_verify variable,
>> postfix users can disable reject_unknown_sender_domain, I don't know
>> the relevant variable for any other MTAs.
>
> That might cause more problem than it solves.

I agree.

Arnt
SM
2008-04-15 18:50:06 UTC
Permalink
Hi Arnt,
At 11:32 15-04-2008, Arnt Gulbrandsen wrote:
>Yes, and the IPv6-only relay would then connect to bs.jck.com and
>issuing the conversation that ends with 550.

Not necessarily. That host may apply a different policy for mail
coming through the other MX hosts. Otherwise, it would cause
backscatter. BTW, the problem may be applicable to IPv4 as well.

Regards,
-sm
Arnt Gulbrandsen
2008-04-15 19:25:34 UTC
Permalink
***@resistor.net writes:
> Not necessarily. That host may apply a different policy for mail
> coming through the other MX hosts. Otherwise, it would cause
> backscatter. BTW, the problem may be applicable to IPv4 as well.

Oh wait, I misunderstood what you're saying. And you probably misunderstood me.

jck.com doesn't have an IPv6 MX, so the only way to deliver mail to it
is to open an IPv4 SMTP connection.

Suppose I have only an IPv6 address and want to send John mail (sorry to
pick on you, John). I open an IPv6 connection to my ISP's smarthost and
send some mail from my address to a jck.com address. My ISP's smarthost
has an IPv4 address, so it opens an IPv4 connection to the best
reachable MX for jck.com. The connection from my ISP's smarthost to the
jck.com MX is what I pasted, and where the problem shows up.

And the text I think should be there would be a sentence like this in
sections 4.1.1.2: "Note that the reverse-path may be reachable only via
IPv6, even if the SMTP connection uses IPv4", possibly with some
emphasis to point out that perfectly valid 2821 code/configurations
don't support this. 4.1.1.3 would need similar language for
"forward-path".

Arnt
Hector Santos
2008-04-15 20:17:07 UTC
Permalink
Arnt Gulbrandsen wrote:
>
> ***@resistor.net writes:
>> Not necessarily. That host may apply a different policy for mail
>> coming through the other MX hosts. Otherwise, it would cause
>> backscatter. BTW, the problem may be applicable to IPv4 as well.
>
> Oh wait, I misunderstood what you're saying. And you probably
> misunderstood me.
>
> jck.com doesn't have an IPv6 MX, so the only way to deliver mail to it
> is to open an IPv4 SMTP connection.
>
> Suppose I have only an IPv6 address and want to send John mail (sorry to
> pick on you, John). I open an IPv6 connection to my ISP's smarthost and
> send some mail from my address to a jck.com address. My ISP's smarthost
> has an IPv4 address, so it opens an IPv4 connection to the best
> reachable MX for jck.com. The connection from my ISP's smarthost to the
> jck.com MX is what I pasted, and where the problem shows up.

Exactly. You SHOULD NOT expect IPv6 feedback behavior to be automatic or
reliable, especially from a IPv6 Only client to dual stack smarthost. It
will only work if replies are going back thru the same compatible host
routing which is generally not the case under a smarthost.

> And the text I think should be there would be a sentence like this in
> sections 4.1.1.2: "Note that the reverse-path may be reachable only via
> IPv6, even if the SMTP connection uses IPv4", possibly with some
> emphasis to point out that perfectly valid 2821 code/configurations
> don't support this. 4.1.1.3 would need similar language for "forward-path".
>
> Arnt

And this is why I was proposing the text that if a IPv6 aware client was
sending to mail out to a IPv4 client (because it used a IPv4 socket
connection), it SHOULD NOT make any presumption that the receiver would
be able to *communicate* back (in sending a bounce or user reply) using
IPv6. If it doesn't provide a compatible IPv4 layer, then its should
expect lost of mail.

Unless you have a middle man or proxie handling all the outbound and
inbound for you, you will need to have a dual stack smtp system for
direct contacts from IPv4 systems.


--
Sincerely

Hector Santos, CTO
http://www.santronics.com
http://santronics.blogspot.com
John Leslie
2008-04-15 21:51:12 UTC
Permalink
Hector Santos <***@santronics.com> wrote:
>
> And this is why I was proposing the text that if a IPv6 aware client was
> sending to mail out to a IPv4 client (because it used a IPv4 socket
> connection), it SHOULD NOT make any presumption that the receiver would
> be able to *communicate* back (in sending a bounce or user reply) using
> IPv6. If it doesn't provide a compatible IPv4 layer, then its should
> expect loss of mail.

(I shall try -- really I shall -- to avoid an IPv6 religious war here.)

> Unless you have a middle man or proxie handling all the outbound and
> inbound for you, you will need to have a dual stack smtp system for
> direct contacts from IPv4 systems.

My hope has been that an IPv6-only host speaking SMTP to the rest of
the world would:

- look for an MX RR pointing to an AAAA RR
- if it finds one, use that AAAA RR
- if not, look for an MX (explicit or implied) pointing to an A RR
- if it finds one, pass the email to a friendly relay speaking IPv4
_ if not, give the usual error

- advertise an MX RR pointing to an A RR
(in addition to any pointing to AAAA RRs)

This strikes me as a more reasonable long-term algorithm than
requiring all mail from an IPv6 user to go through a SMTP server with
both IPv4 and IPv6 connectivity.

It may be that the consensus here prefers Hector's solution: if so,
I suppose I should shut up. But please think long-term: we want something
that can work today and continue working for 20 years, by which time
IPv4 should be as rare as IPv6 is today.

--
John Leslie <***@jlc.net>
Hector Santos
2008-04-16 03:09:21 UTC
Permalink
John,

John Leslie wrote:

> My hope has been that an IPv6-only host speaking SMTP to the rest of
> the world would:
>
> - look for an MX RR pointing to an AAAA RR
> - if it finds one, use that AAAA RR
> - if not, look for an MX (explicit or implied) pointing to an A RR
> - if it finds one, pass the email to a friendly relay speaking IPv4
> _ if not, give the usual error
>
> - advertise an MX RR pointing to an A RR
> (in addition to any pointing to AAAA RRs)

I'm confused. To me, when you say "IPv6-only", that implies it doesn't
support IPv4 in any direct way. Isn't that correct?

>
> This strikes me as a more reasonable long-term algorithm than
> requiring all mail from an IPv6 user to go through a SMTP server with
> both IPv4 and IPv6 connectivity.
>
> It may be that the consensus here prefers Hector's solution: if so,
> I suppose I should shut up. But please think long-term: we want something
> that can work today and continue working for 20 years, by which time
> IPv4 should be as rare as IPv6 is today.

John,

I don't think I have been any different from what you desire. We might
said it in different ways but I think we all want the same thing.

My only real point about the IPv6 related considerations was how it
would be stated in a kludged up, "spaghetti" 2821bis in such a way that
will promote interoperability issues with the dominant IPv4 market for
now and the foreseeable future.

I think Tony's decision was the right one - FOR 2821bis.

I could elaborate more about IPv6 concerns but overall I think we still
do not know what all the real issues with IPv6 implementations in a IPv4
world and this is why I wish to see a new effort for a modern,
consolidated SMTP Ipv6/4 technical/functional/migration spec. The key
word is consolidated, and I think this spec can augment 2821bis draft
standard.


--
Sincerely

Hector Santos, CTO
http://www.santronics.com
http://santronics.blogspot.com
John Leslie
2008-04-16 17:47:15 UTC
Permalink
Hector Santos <***@santronics.com> wrote:
> John Leslie wrote:
>
>> My hope has been that an IPv6-only host speaking SMTP to the rest of
>> the world would:
>>
>> - look for an MX RR pointing to an AAAA RR
>> - if it finds one, use that AAAA RR
>> - if not, look for an MX (explicit or implied) pointing to an A RR
>> - if it finds one, pass the email to a friendly relay speaking IPv4
>> _ if not, give the usual error
>>
>> - advertise an MX RR pointing to an A RR
>> (in addition to any pointing to AAAA RRs)
>
> I'm confused. To me, when you say "IPv6-only", that implies it doesn't
> support IPv4 in any direct way. Isn't that correct?

Mostly...

The distinction I intend is that the host has no IPv4 connectivity.

>> This strikes me as a more reasonable long-term algorithm than
>> requiring all mail from an IPv6 user to go through a SMTP server with
>> both IPv4 and IPv6 connectivity.
>>
>> It may be that the consensus here prefers Hector's solution: if so,
>> I suppose I should shut up. But please think long-term: we want something
>> that can work today and continue working for 20 years, by which time
>> IPv4 should be as rare as IPv6 is today.
>
> I don't think I have been any different from what you desire. We might
> said it in different ways but I think we all want the same thing.

It's hard to tell...

Undeniably, we could stipulate that an IPv6-only domain MUST pass
all outgoing email to an IPv4-capable host. That is not what I want.
Your posting led me to believe it was what you wanted.

> My only real point about the IPv6 related considerations was how it
> would be stated in a kludged up, "spaghetti" 2821bis in such a way
> that will promote interoperability issues with the dominant IPv4
> market for now and the foreseeable future.

It's hard, again, to tell what you mean by this. I certainly do
not desire a "spaghetti" 2821bis. To me, a 2821bis that's hard to
understand and implement _can't_ promote interoperability.

> I think Tony's decision was the right one - FOR 2821bis.

I'm forced to face the unfortunate fact that anything I write will
be interpreted as an attack on Tony by some people (fortunately _not_
by Tony himself).

The folks who are best at protocol design _don't_ automatically
forget an idea when the majority rejects it. (And neither do I.)
They do, however, shift their concentration to a different area.
I believe I have done so. Others may disagree...

> I could elaborate more about IPv6 concerns but overall I think we
> still do not know what all the real issues with IPv6 implementations
> in a IPv4 world [may be]

We don't need to know "all" the issues in order to design "an"
algorithm for interaction. I have suggested one. (Its mirror image
should work in the opposite direction.)

> and this is why I wish to see a new effort for a modern, consolidated
> SMTP Ipv6/4 technical/functional/migration spec.

Are you volunteering?

> The key word is consolidated, and I think this spec can augment
> 2821bis draft standard.

"Augment" is certainly OK... "Override" probably isn't.

--
John Leslie <***@jlc.net>
Keith Moore
2008-04-15 21:44:44 UTC
Permalink
<sarcasm>

gee, I don't know... if current practice is to require that senders have
A or MX records, maybe we ought to insist on it in the standard. I
mean, isn't the purpose of the standard to dictate current practice?

and isn't this the sort of change that should cause a recycle to proposed?

</sarcasm>

seriously, why is this the sort of bug that should dictate a change to
the standard, whereas the problems associated with fallback to address
records are the sort of bug that should be encouraged by the standard?

Keith

Arnt Gulbrandsen wrote:
>
> I agree that the wording in -10 reflects the rough consensus.
>
> However, I think 2821bis needs a little extra text to notify operators
> that they may need to upgrade or reconfigure to comply with 2821bis. For
> example bs.jck.com currently refuses mail from AAAA-only addresses:
>
> $ vrfy -vv -S ***@ipv6.l.google.com ***@jck.com
> rcpt '***@jck.com' at 'bs.jck.com'
> connecting to bs.jck.com (209.187.148.211) port 25
> <<< 220 bs.jck.com ESMTP Exim 4.34 Tue, 15 Apr 2008 12:39:35 -0400
>>>> EHLO libertango.oryx.com
> <<< 250-bs.jck.com Hello libertango.oryx.com [195.30.37.9]
> <<< 250-SIZE 52428800
> <<< 250-8BITMIME
> <<< 250-PIPELINING
> <<< 250-AUTH CRAM-MD5
> <<< 250 HELP
>>>> MAIL From:<***@ipv6.l.google.com>
> <<< 250 OK
>>>> RCPT To:<***@jck.com>
> <<< 550-Verification failed for <***@ipv6.l.google.com>
> ...
>
> ipv6.l.google.com has only an AAAA RR. The same test works when I use
> ***@www.l.google.com as sender address.
>
> (I tried some other recent posters. Some accept mail from ***@ipv6,
> including Dave, some others don't, including you and me.)
>
> Exim users can comply by disabling the sender_verify variable, postfix
> users can disable reject_unknown_sender_domain, I don't know the
> relevant variable for any other MTAs.
>
> Arnt
>
Tony Finch
2008-04-16 14:04:28 UTC
Permalink
On Tue, 15 Apr 2008, Arnt Gulbrandsen wrote:
>
> Exim users can comply by disabling the sender_verify variable

That's a version 3 option so it hasn't been supported for many years.
If Exim 4 is compiled to support IPv6 then it will accept AAAA-only
addresses, though you can disable this on IPv4-only hosts.

I doubt that it makes sense to accept email from ***@ipv6.l.google.com
on a system that can only communicate with IPv4 addresses.

Tony.
--
f.anthony.n.finch <***@dotat.at> http://dotat.at/
MALIN HEBRIDES: SOUTHEAST 5 TO 7, PERHAPS GALE 8 LATER IN MALIN. MODERATE OR
ROUGH BUT SLIGHT IN EAST AT FIRST. MAINLY FAIR. GOOD.
ned+
2008-04-16 14:27:31 UTC
Permalink
> On Tue, 15 Apr 2008, Arnt Gulbrandsen wrote:
> >
> > Exim users can comply by disabling the sender_verify variable

> That's a version 3 option so it hasn't been supported for many years.
> If Exim 4 is compiled to support IPv6 then it will accept AAAA-only
> addresses, though you can disable this on IPv4-only hosts.

> I doubt that it makes sense to accept email from ***@ipv6.l.google.com
> on a system that can only communicate with IPv4 addresses.

In a single system case with fully symmetric routing, perhaps not. But as I
mentioned previously, there are many cases where multiple systems with highly
asymmetric routing are used to provide a mail service. In such a setup it is
entirely possible that a system hosting an inbound MTA would have DNS query
access but no outbound IPv6 access even if such access exists somewhere else
in the setup. (I freely admit I'm extrapolating here given the extremely
limited amount of production deployment of IPv6 at present, but I'd be
surprised if this didn't end up happening after seeing how IPv4-only setups
work.)

Ned
Tony Finch
2008-04-16 14:36:40 UTC
Permalink
On Wed, 16 Apr 2008, Ned Freed wrote:
>
> > I doubt that it makes sense to accept email from ***@ipv6.l.google.com
> > on a system that can only communicate with IPv4 addresses.
>
> In a single system case with fully symmetric routing, perhaps not. But as I
> mentioned previously, there are many cases where multiple systems with highly
> asymmetric routing are used to provide a mail service. In such a setup it is
> entirely possible that a system hosting an inbound MTA would have DNS query
> access but no outbound IPv6 access even if such access exists somewhere else
> in the setup.

Of course, but in that case the postmaster would know that it is possible
to communicate indirectly with IPv6 addresses and would therefore not
disable IPv6 DNS lookup support.

Tony.
--
f.anthony.n.finch <***@dotat.at> http://dotat.at/
MALIN HEBRIDES: SOUTHEAST 5 TO 7, PERHAPS GALE 8 LATER IN MALIN. MODERATE OR
ROUGH BUT SLIGHT IN EAST AT FIRST. MAINLY FAIR. GOOD.
John C Klensin
2008-04-16 17:28:51 UTC
Permalink
Hi.

This discussion is very interesting. It is clear that
considerable experience, as well as considerable opportunity for
theorizing about edge cases, has accumulated since RFC 3974 was
completed. It would be a pity to lose whatever wisdom that
experience to the back-and-forth of the mailing list.

Could I suggest that someone, ideally someone with some of that
experience first-hand, take the lead and start drawing an I-D
together that builds on 3974, discusses the configuration issues
(and traps) as they are understood today, and moves toward a BCP?

If Tony, Lisa, and the group were amenable, I'd be delighted to
slip a sentence into 2821bis that indicated that further work
was going on in this area with a "work in progress" pointer to
an I-D. Of course, first there would have to be the clear
intent to do work, not just exchange comments on the mailing
list, and an I-D.

john
Arnt Gulbrandsen
2008-04-17 11:16:15 UTC
Permalink
I'm willing to take that on, unless anyone minds.

Arnt
Hector Santos
2008-04-17 12:19:08 UTC
Permalink
Arnt Gulbrandsen wrote:
> I'm willing to take that on, unless anyone minds.
>
> Arnt

If you wish help, I would be willing to pencil in the time.

I did begin last week an outline that I can pass on with collected
research of past work and industry experiences and presentations
highlight the major concerns and technical issues with the current
proposals.

I personally would like to suggest that this BCP be a guide to help
multiple audiences with a smooth transition to Ipv6

- DNS Administration
- System implementor/integrators, network engineers
- Software Developers
- Operators
- End Users

--
Sincerely

Hector Santos, CTO
http://www.santronics.com
http://santronics.blogspot.com
John C Klensin
2008-04-17 16:24:37 UTC
Permalink
--On Thursday, 17 April, 2008 08:19 -0400 Hector Santos
<***@santronics.com> wrote:

> Arnt Gulbrandsen wrote:
>> I'm willing to take that on, unless anyone minds.
>>
>> Arnt
>
> If you wish help, I would be willing to pencil in the time.
>
> I did begin last week an outline that I can pass on with
> collected research of past work and industry experiences and
> presentations highlight the major concerns and technical
> issues with the current proposals.
>
> I personally would like to suggest that this BCP be a guide to
> help multiple audiences with a smooth transition to Ipv6
>
> - DNS Administration
> - System implementor/integrators, network engineers
> - Software Developers
> - Operators
> - End Users

Hector, fwiw, despite the pattern in some desktop systems to
require that everyone and their grandmother have the skills of
system and network administrators, I suggest that path is
ultimately a failure. As a result, I believe that if end users
need to worry about what is happening at the Internet layer and
how to adjust to it, it would be a sign that all of the other
layers and actors in this process have failed. I would rather
concentrate on not failing than on trying to inform end users --
people who see the mail system only through the MUAs or web
interfaces they use and the error messages they receive -- about
what is going on here.

There might be need for what the IETF used to call an FYI RFC to
explain some of the disconnects and the messages they cause to
those end users, but I'd think the entire effort would progress
better and more efficiently if they were kept separate.

john
Hector Santos
2008-04-17 17:50:27 UTC
Permalink
John C Klensin wrote:
>
> --On Thursday, 17 April, 2008 08:19 -0400 Hector Santos
> <***@santronics.com> wrote:
>
>> Arnt Gulbrandsen wrote:
>>> I'm willing to take that on, unless anyone minds.
>>>
>>> Arnt
>> If you wish help, I would be willing to pencil in the time.
>>
>> I did begin last week an outline that I can pass on with
>> collected research of past work and industry experiences and
>> presentations highlight the major concerns and technical
>> issues with the current proposals.
>>
>> I personally would like to suggest that this BCP be a guide to
>> help multiple audiences with a smooth transition to Ipv6
>>
>> - DNS Administration
>> - System implementor/integrators, network engineers
>> - Software Developers
>> - Operators
>> - End Users
>
> Hector, fwiw, despite the pattern in some desktop systems to
> require that everyone and their grandmother have the skills of
> system and network administrators, I suggest that path is
> ultimately a failure. As a result, I believe that if end users
> need to worry about what is happening at the Internet layer and
> how to adjust to it, it would be a sign that all of the other
> layers and actors in this process have failed. I would rather
> concentrate on not failing than on trying to inform end users --
> people who see the mail system only through the MUAs or web
> interfaces they use and the error messages they receive -- about
> what is going on here.
>
> There might be need for what the IETF used to call an FYI RFC to
> explain some of the disconnects and the messages they cause to
> those end users, but I'd think the entire effort would progress
> better and more efficiently if they were kept separate.
>
> john

I Agree.

The inclusion of end-users was more for responsible parties/implementers
to gain insight on what impact it has on their user base and how they
may better address it when you begin to consider IPv6. For example:

- how will this alter POP B4 SMTP Methods which is a very big part
of reducing help desk support cost for many cost conscious ISPs.

and thats just one of many questions related to end-user impact.

As you would probably agree, such insight will help people prepare
information they might need for their users and company. I didn't want
to dig more into that other than throw out the coverage.

It is my opinion if one goal here to we help the industry migration,
then at this point we need to take our blinders off and understand not
everyone is at the same level as the early explorers. I don't need
lacking direct IPv6 experience forfeits or trump long time engineering
insights and planning. This is highly complex stuff and I believe it
will take us to do a good job in presenting a clear consolidated
documentation on how to get from point A to AB to B.

Just ask these fundamentals questions:

- How do you get an IPv6 address(es)?

- How do you implement it?

- What's the relative cost impact? No specifics, but cost is no doubt
going to be a prohibiting factor for many. This might suggest IPv4
might not go away for a lot longer than anyone here thinks.

- Can you lose IPv4 addresses once you request your IPv6 allocation?
Again, not a political question, but how that alter your plans for FULL
or HYBRID IPv6 hosting services?

- Do you need extra software besides getting your SMTP vendor to support
IPv6?

- Will you need to switch SMTP vendor?

- Do you need to upgrade to new (hardware) routers?

- Do you need to write anything yourself?

- How do we handle users?

- Do you need to have separate processes running, IPv4 and IPv6 as
suggested by one of the RFCs?

- Or will it work just fine as a single process IPv4/6 hybrid?

- What is 6to4? Is that part of the total implementation?

- Can I use just IPv6 and depend on my uplink offering a dual stack gateway?

Oh gosh, a whole slew of general questions, and I am not saying all of
this needs to be addressed but to rather bring it out all so we can get
a better picture of what are all the issues to create the focused document.

I mean, I think we just touch based with just a part of it:

- How does the IPv6 stack change the security picture?

- How does all the new "Features" of IPv6 change SMTP mail distribution?

- Is "PTR" lookup a viable idea? Is it necessary now?

- Can systems need to do a CBV or can they stop doing return path
verification and begin using the inherent IPv6 stack IP connectivity
information? Ethernet tracking/tracing?

- Do we need new SMTP EHLO extensions? Can a new extension help with an
orderly migration?

- How does it change any other SMTP related extension?

- What effect will it have on such technology as:

- SPF, SENDERID?
- DKIM, DOMAINKEYS?
- SpamAssassin?
- Sieve?

- Some people have already suggested that getaddrinfo() be patched to
remove redundancy in AAAA lookups? Is this a valid issue to address?
How does that change the RFC 3484 recommendations?

- Is there any change in TCP timeouts? Does IPv6 stack goes idle? Do
we need to change state machine timeouts?

and I haven't even begun to outline the concerns I have at the coding
area and how IPv6 can change the SMTP model as a first in where IPv6
dictates implementation methods, i.e. how discovery is implemented with
getaddrinfo(). Can this "document" be written and described where its
doesn't need to be locked in stone with a socket level 2 API function?

Again, the above is just a small list of questions I think that should
be on the table, some are very important, some can be kick out, and I'm
sure there are others that have better questions that is more focused
with their own experiences and noticed I didn't even bother to bring up
the IMPLICIT MX issue but no doubt that would be a part of all this.

I just think the IETF can do a better job to promote this type of
consolidated work to help with the desire to move people to the IPv6
world at a more reasonable and understood manner rather than just hope
it will take place on a wing and prayer with mixed information.

On a personal level, we have a Class C group of IPv4 addresses, and I
don't even know all that is needed or that I could even move into IPv6
without getting other entities involved, like my ISP uplink, MCI/UUNET
now own by Verizon. I need to find out is CISCO has updates for my
router or are they going to force a hardware change. Of course, the
specifics like this is not what we want to write, but maybe how the
general situation applies in IPv6/4 implementation.

And of course, finally, we will need wisdom from people like you to help
keeping it all focused.


--
Sincerely

Hector Santos, CTO
http://www.santronics.com
http://santronics.blogspot.com
John Leslie
2008-04-17 14:29:45 UTC
Permalink
Arnt Gulbrandsen <***@oryx.com> wrote:
[> John C Klensin <john+***@jck.com> wrote:]
>
[>> Could I suggest that someone, ideally someone with some of that]
[>> experience first-hand, take the lead and start drawing an I-D]
[>> together that builds on 3974, discusses the configuration issues]
[>> (and traps) as they are understood today, and moves toward a BCP?]
>
[>> If Tony, Lisa, and the group were amenable, I'd be delighted to]
[>> slip a sentence into 2821bis that indicated that further work]
[>> was going on in this area with a "work in progress" pointer to]
[>> an I-D. Of course, first there would have to be the clear]
[>> intent to do work, not just exchange comments on the mailing]
[>> list, and an I-D.]
>
> I'm willing to take that on, unless anyone minds.

I'll be happy to help.

--
John Leslie <***@jlc.net>
John Leslie
2008-04-16 18:09:51 UTC
Permalink
Tony Finch <***@dotat.at> wrote:
> On Wed, 16 Apr 2008, Ned Freed wrote:
>> On Tue, 15 Apr 2008, Arnt Gulbrandsen wrote:
>>
>>> I doubt that it makes sense to accept email from ***@ipv6.l.google.com
>>> on a system that can only communicate with IPv4 addresses.

(It would help to be clear whether "from" refers to HELO, MailFrom,
or some miscellaneous header.)

>> In a single system case with fully symmetric routing, perhaps not.
>> But as I mentioned previously, there are many cases where multiple
>> systems with highly asymmetric routing are used to provide a mail
>> service.

Absolutely (for any of the cases I listed).

>> In such a setup it is entirely possible that a system hosting an
>> inbound MTA would have DNS query access but no outbound IPv6 access
>> even if such access exists somewhere else in the setup.

We would be ill-advised to assume even that IPv4-only systems have
no reason to query (and perhaps even use in some fashion) AAAA RRs.

> Of course, but in that case the postmaster would know that it is
> possible to communicate indirectly with IPv6 addresses and would
> therefore not disable IPv6 DNS lookup support.

(We're really talking about an implementation detail outside the
spec here.)

In a legacy IPv4 system _right_now_ suppressing AAAA RRs might
make sense. I do not agree it makes sense next year. Even if the
postmaster _today_ does not know of a host speaking both IPv4 and
IPv6 that will agree to relay his/her email, that doesn't mean that
software like Exim shouldn't give an error message describing the
problem as lacking a path to reach an IPv6 address.

--
John Leslie <***@jlc.net>
Willie Gillespie
2008-04-16 20:31:31 UTC
Permalink
Tony Finch wrote:
> On Wed, 16 Apr 2008, Ned Freed wrote:
>>> I doubt that it makes sense to accept email from ***@ipv6.l.google.com
>>> on a system that can only communicate with IPv4 addresses.

I foresee some company setting up an IPv6 to IPv4 e-mail relay for
individuals or other companies that only have IPv6 addresses.

For an IPv4-only receiving system, would this appear as an e-mail from
***@ipv6.l.google.com (even though it comes over the IPv4 link)? At
that point, would it make sense to accept the message?

Willie Gillespie

<snip rest of message>
John C Klensin
2008-04-16 20:45:07 UTC
Permalink
--On Wednesday, 16 April, 2008 14:31 -0600 Willie Gillespie
<wgillespie+***@es2eng.com> wrote:

> Tony Finch wrote:
>> On Wed, 16 Apr 2008, Ned Freed wrote:
>>>> I doubt that it makes sense to accept email from
>>>> ***@ipv6.l.google.com on a system that can only
>>>> communicate with IPv4 addresses.
>
> I foresee some company setting up an IPv6 to IPv4 e-mail relay
> for individuals or other companies that only have IPv6
> addresses.

Very likely, IMO

> For an IPv4-only receiving system, would this appear as an
> e-mail from ***@ipv6.l.google.com (even though it comes over
> the IPv4 link)? At that point, would it make sense to accept
> the message?

Sure. The problem arises if the receiving IPv4 host tries to do
some sort of sender-accessibility or callback verification. It
won't be able to reach the IPv6 host (or send NDNs to it) unless
it either it is configured to submit those messages via an
IPv6-capable gateway or the IPv6 host advertises IPv4 addresses
(perhaps via a conversion relay in a low-preference MX record).

Did I hear you volunteer to organize the I-D leading to a BCP
that I suggested earlier?

john
Alex van den Bogaerdt
2008-04-21 08:36:26 UTC
Permalink
On Wed, Apr 16, 2008 at 04:45:07PM -0400, John C Klensin wrote:

> --On Wednesday, 16 April, 2008 14:31 -0600 Willie Gillespie
> <wgillespie+***@es2eng.com> wrote:
>
> > Tony Finch wrote:
> >> On Wed, 16 Apr 2008, Ned Freed wrote:
> >>>> I doubt that it makes sense to accept email from
> >>>> ***@ipv6.l.google.com on a system that can only
> >>>> communicate with IPv4 addresses.
> >
> > I foresee some company setting up an IPv6 to IPv4 e-mail relay
> > for individuals or other companies that only have IPv6
> > addresses.
>
> Very likely, IMO
>
> > For an IPv4-only receiving system, would this appear as an
> > e-mail from ***@ipv6.l.google.com (even though it comes over
> > the IPv4 link)? At that point, would it make sense to accept
> > the message?
>
> Sure. The problem arises if the receiving IPv4 host tries to do
> some sort of sender-accessibility or callback verification. It
> won't be able to reach the IPv6 host (or send NDNs to it) unless
> it either it is configured to submit those messages via an
> IPv6-capable gateway or the IPv6 host advertises IPv4 addresses
> (perhaps via a conversion relay in a low-preference MX record).

Translated:

The host needs an A record, or an MX record which points to at
least one A record. There's no point in relying its AAAA record
to act as an implicit MX record, not as long as there are hosts
out there which have no clue about IPv6.

>From my perspective, you agree with:
> Date: Sat, 5 Apr 2008 14:26:50 +0200
> From: Alex van den Bogaerdt <***@ergens.op.het.net>
> To: ietf-***@imc.org
> Subject: Why implicit MX is a bad idea for IPv6
> Message-ID: <***@ergens.op.het.net>
Tony Finch
2008-04-17 10:25:35 UTC
Permalink
On Wed, 16 Apr 2008, Willie Gillespie wrote:
> Tony Finch wrote:
> > On Wed, 16 Apr 2008, Ned Freed wrote:
> >>> I doubt that it makes sense to accept email from ***@ipv6.l.google.com
> >>> on a system that can only communicate with IPv4 addresses.
>
> I foresee some company setting up an IPv6 to IPv4 e-mail relay for
> individuals or other companies that only have IPv6 addresses.

I agree with John that this is likely to happen.

> For an IPv4-only receiving system, would this appear as an e-mail from
> ***@ipv6.l.google.com (even though it comes over the IPv4 link)? At
> that point, would it make sense to accept the message?

The sender's relay has to be two-way, so the IPv6-only site's MXs would
have to refer to the relay's IPv4 address as well as the site's own IPv6
address. Then the sender's email addresses can be verified successfully by
IPv4-only sites.

I don't think John is right to expect IPv4-only recipient sites to obtain
a 4-to-6 SMTP relay service any time soon. IPv6 sites will have to deal
with the interop burden until v4 is the minority.

For example, there are likely to be problems if ***@ipv6.l.google.com
AAAA-only addresses leak out, and these are likely to be worse than the
problems that A-only addresses like ***@www.example.com have.

Tony.
--
f.anthony.n.finch <***@dotat.at> http://dotat.at/
BISCAY FITZROY: CYCLONIC 5 TO 7, OCCASIONALLY GALE 8, PERHAPS SEVERE GALE 9
LATER. ROUGH OR VERY ROUGH. RAIN OR SQUALLY SHOWERS. MODERATE OR GOOD,
OCCASIONALLY POOR.
John C Klensin
2008-04-17 10:37:18 UTC
Permalink
--On Thursday, 17 April, 2008 11:25 +0100 Tony Finch
<***@dotat.at> wrote:

> On Wed, 16 Apr 2008, Willie Gillespie wrote:
>> Tony Finch wrote:
>> > On Wed, 16 Apr 2008, Ned Freed wrote:
>> >>> I doubt that it makes sense to accept email from
>> >>> ***@ipv6.l.google.com on a system that can only
>> >>> communicate with IPv4 addresses.
>>
>> I foresee some company setting up an IPv6 to IPv4 e-mail
>> relay for individuals or other companies that only have IPv6
>> addresses.
>
> I agree with John that this is likely to happen.
>
>> For an IPv4-only receiving system, would this appear as an
>> e-mail from ***@ipv6.l.google.com (even though it comes over
>> the IPv4 link)? At that point, would it make sense to accept
>> the message?
>
> The sender's relay has to be two-way, so the IPv6-only site's
> MXs would have to refer to the relay's IPv4 address as well as
> the site's own IPv6 address. Then the sender's email addresses
> can be verified successfully by IPv4-only sites.
>
> I don't think John is right to expect IPv4-only recipient
> sites to obtain a 4-to-6 SMTP relay service any time soon.
> IPv6 sites will have to deal with the interop burden until v4
> is the minority.
>
> For example, there are likely to be problems if
> ***@ipv6.l.google.com AAAA-only addresses leak out, and these
> are likely to be worse than the problems that A-only addresses
> like ***@www.example.com have.

Whatever I said, I didn't intend it to convey the expectation
that the responsibility would need to lie with the IPv4-only
recipient site. I have come to believe that it is appropriate
for a receiving site to do at least superficial verification of
the possibility of delivering an NDN before accepting a message
for delivery for which an NDN might be necessary (i.e., for
which delivery cannot be assured while the SMTP connection is
still open). I think that testing the reverse path and making a
decision to not accept the message if the test fails is entirely
consistent with the "take responsibility" language of 2821 (and
1123).

I think that implies that, for the near future at least, if
***@ipv6.l.google.com wants to have a reasonable expectation
that mail it sends will be accepted by mail servers running in
IPv4-only environments, then it (the sender) must expect to
either be dual-stack (and advertise the IPv4 address too) or to
have a lower-priority MX advertised that will accept IPv4
traffic.

And, unless I misread your note, I think that puts us in violent
agreement.

john
Tony Finch
2008-04-17 10:42:53 UTC
Permalink
On Thu, 17 Apr 2008, John C Klensin wrote:
>
> And, unless I misread your note, I think that puts us in violent
> agreement.

Yes :-)

(Assuming that by "lower priority MX" you mean higher-numbered.)

Tony.
--
f.anthony.n.finch <***@dotat.at> http://dotat.at/
HEBRIDES BAILEY: SOUTHEAST BACKING EAST 5 TO 7, DECREASING 4 FOR A TIME.
MODERATE OR ROUGH, OCCASIONALLY VERY ROUGH IN BAILEY AT FIRST. MAINLY FAIR.
GOOD.
John C Klensin
2008-04-17 10:56:35 UTC
Permalink
--On Thursday, 17 April, 2008 11:42 +0100 Tony Finch
<***@dotat.at> wrote:

> On Thu, 17 Apr 2008, John C Klensin wrote:
>>
>> And, unless I misread your note, I think that puts us in
>> violent agreement.
>
> Yes :-)
>
> (Assuming that by "lower priority MX" you mean
> higher-numbered.)

Indeed.

john
Arnt Gulbrandsen
2008-04-17 11:16:33 UTC
Permalink
Tony Finch writes:
> On Thu, 17 Apr 2008, John C Klensin wrote:
>
>> And, unless I misread your note, I think that puts us in violent agreement.
>
> Yes :-)
>
> (Assuming that by "lower priority MX" you mean higher-numbered.)

I agree too. IPv6 sites have to have MXes and be IPv4-reachable somehow.

I still can't understand why so many people here think an AAAA should suffice.

Arnt
John C Klensin
2008-04-17 12:06:25 UTC
Permalink
--On Thursday, 17 April, 2008 13:16 +0200 Arnt Gulbrandsen
<***@oryx.com> wrote:

> Tony Finch writes:
>> On Thu, 17 Apr 2008, John C Klensin wrote:
>>
>>> And, unless I misread your note, I think that puts us in
>>> violent agreement.
>>
>> Yes :-)
>>
>> (Assuming that by "lower priority MX" you mean
>> higher-numbered.)
>
> I agree too. IPv6 sites have to have MXes and be
> IPv4-reachable somehow.
>
> I still can't understand why so many people here think an AAAA
> should suffice.

Speaking for myself and not presuming to speak for "many
people", I think the following statements are both true and that
they are perfectly consistent with each other.

(i) It would be a fairly bad idea for the protocol to require an
MX record for AAAA but not for A. Part of my reasoning is that
some of the arguments for prohibiting implicit MX generation on
AAAA fall apart for hosts that also have IPv4 addresses, since
those addresses will cause the the MXs to be generated anyway.
And I believe that "interpret some MXs as applying only to the A
records associated with the target host while interpreting
others as applying to all address records" as leading us into a
world of confusion and harm. I understand all of the
counterarguments and do not want to restart the debate -- no one
is likely to convince me at this point and I don't expect to
convince anyone else-- but I still, personally, reach that
conclusion.

(ii) It would be mildly insane operationally (or at least
stupidly careless) for someone to configure the DNS records for
an IPv6-only host without MX records that specify IPv4 access to
that host. An exception would arise if IPv6 were being used as
a spam control technique (i.e., "if anyone can't figure out how
to send me mail over IPv6, I don't want to hear from them"), but
the benefits of such a technique would presumably be
short-lived. As IPv6 spreads, it will become mildly insane
for the DNS records for an IPv4-only host to by configured
without similar MX records. So I am guessing that, over the
next several years, we will see an increase in use of explicit
MX records for hosts that really want to send or receive mail,
regardless of what the standard says about implicit MXs. And I,
again personally, consider that A Good Thing.

john

p.s. Thanks for the offer. I think that would be great.
Keith Moore
2008-04-17 18:24:34 UTC
Permalink
>
> Speaking for myself and not presuming to speak for "many
> people", I think the following statements are both true and that
> they are perfectly consistent with each other.
>
> (i) It would be a fairly bad idea for the protocol to require an
> MX record for AAAA but not for A. Part of my reasoning is that
> some of the arguments for prohibiting implicit MX generation on
> AAAA fall apart for hosts that also have IPv4 addresses, since
> those addresses will cause the the MXs to be generated anyway.

I've always thought the "implicit MX generation" language was a bit
contrived. Really what was needed was not an "implicit MX" per se, but
rather, backward compatibility with the pre-MX behavior that if you
wanted to send mail to ***@domain and you had an IP address for that
domain, you opened up a connection to port 25 at that IP address and
started talking SMTP to it.

If you're a programmer and writing code to handle this, it's pretty
natural to want a routine that gets you an ordered list of MX records.
That way you can say something like:

mxlist = get_mx_records_in_order (domain)
for each mx in mxlist {
status = try to deliver mail to mx;
if status == success
break
else if status == permanent_failure
bounce_message()
break
else if status == temporary_failure
continue
}

And if you're writing code to do this in an IPv4-only world, it's
tempting to put a special case in the "get mx records" routine of the
form "if there are no MX records, return a single "implicit" pseudo-MX
record that points to that domain". Then the code that calls this
routine will "do the right thing"...more or less. (I say "more or less"
because there are subtly different error conditions for the "real MX"
case than for the "implicit pseudo-MX" case that might require more
special-casing to handle errors correctly under all conditions.)

But what is really happening here is that the special-casing is being
done in the wrong place. Even in an IPv4-only world it is better to
treat the "MX" and "no MX" cases separately in the delivery routine
rather than to try to hide the differences in the mx lookup routine. In
an IPv4+IPv6 world this becomes even a bit more important.


> And I believe that "interpret some MXs as applying only to the A
> records associated with the target host while interpreting
> others as applying to all address records" as leading us into a
> world of confusion and harm.

I agree with that, but because I don't think the "implicit MX record"
was a good way to describe the algorithm, I don't see a problem here.
If you get real MX records and they point to domains that have A and/or
AAAA records you should assume that all of those records are valid.
It's only the "implicit MX" record that causes a problem.

> (ii) It would be mildly insane operationally (or at least
> stupidly careless) for someone to configure the DNS records for
> an IPv6-only host without MX records that specify IPv4 access to
> that host.

In the near term, yes. Though perhaps this might be reasonable by the
time RFC 2822bis gets revised again...

Keith
John Leslie
2008-04-17 19:41:18 UTC
Permalink
Let me apologize up front for taking Keith seriously; but he has taken
me seriously on several occasions, and I feel an obligation to return the
favor:

Keith Moore <***@network-heretics.com> wrote:
>
> I've always thought the "implicit MX generation" language was a bit
> contrived. Really what was needed was not an "implicit MX" per se, but
> rather, backward compatibility with the pre-MX behavior that if you
> wanted to send mail to ***@domain and you had an IP address for that
> domain, you opened up a connection to port 25 at that IP address and
> started talking SMTP to it.

This was indeed needed, back when RFC821 was written.

It's not clear what else may have been needed then, but arguably
that would have been sufficient -- then.

> If you're a programmer and writing code to handle this, it's pretty
> natural to want a routine that gets you an ordered list of MX records.
> That way you can say something like:
>
> mxlist = get_mx_records_in_order (domain)
> for each mx in mxlist {
> status = try to deliver mail to mx;
> if status == success
> break
> else if status == permanent_failure
> bounce_message()
> break
> else if status == temporary_failure
> continue
> }

That pseudocode deserves to be read; though I'd pay more attention
to the difference between "permanent_failure" and "temporary_failure".

> And if you're writing code to do this in an IPv4-only world, it's
> tempting to put a special case in the "get mx records" routine of the
> form "if there are no MX records, return a single "implicit" pseudo-MX
> record that points to that domain".

Actually, I wouldn't have tended to program it that way. I think the
point is it looked to be easier to _specify_ it that way.

> But what is really happening here is that the special-casing is being
> done in the wrong place. Even in an IPv4-only world it is better to
> treat the "MX" and "no MX" cases separately in the delivery routine
> rather than to try to hide the differences in the mx lookup routine.

I agree with Keith here, and would implement it that way. There's
nothing in 821 or 2821 to stop me...

> In an IPv4+IPv6 world this becomes even a bit more important.

Let's see if Keith can make this case...

> John C Klensin <john+***@jck.com> wrote:
>
>> And I believe that "interpret some MXs as applying only to the A
>> records associated with the target host while interpreting
>> others as applying to all address records" as leading us into a
>> world of confusion and harm.
>
> I agree with that, but because I don't think the "implicit MX record"
> was a good way to describe the algorithm, I don't see a problem here.
> If you get real MX records and they point to domains that have A and/or
> AAAA records you should assume that all of those records are valid.
> It's only the "implicit MX" record that causes a problem.

... be patient...

>> (ii) It would be mildly insane operationally (or at least
>> stupidly careless) for someone to configure the DNS records for
>> an IPv6-only host without MX records that specify IPv4 access to
>> that host.
>
> In the near term, yes. Though perhaps this might be reasonable by the
> time RFC 2822bis gets revised again...

True, but surely there's more to Keith's case than that!

> Keith

Or is there?

--
John Leslie <***@jlc.net>
Keith Moore
2008-04-17 21:17:52 UTC
Permalink
John Leslie wrote:
> Let me apologize up front for taking Keith seriously; but he has taken
> me seriously on several occasions, and I feel an obligation to return the
> favor:

gee thanks. I think.

> That pseudocode deserves to be read; though I'd pay more attention
> to the difference between "permanent_failure" and "temporary_failure".
>
>> And if you're writing code to do this in an IPv4-only world, it's
>> tempting to put a special case in the "get mx records" routine of the
>> form "if there are no MX records, return a single "implicit" pseudo-MX
>> record that points to that domain".
>
> Actually, I wouldn't have tended to program it that way. I think the
> point is it looked to be easier to _specify_ it that way.

That's just a hypothesis on my part. I may be reading more into the RFC
974 than is justified.

My point is that we're getting tripped up by an artifact of the way that
RFCs 974 was worded - and in the process we're making inferences about
the interpretation of those words that probably weren't intended by the
author. If RFC 974 had said

It is possible that the list of MXs in the response to the query will
be empty. This is a special case. If the list is empty, mailers
should simply attempt to deliver the message to REMOTE. The idea
here is that if a domain fails to advertise any information about a
particular name we will give it the benefit of the doubt and attempt
delivery.

instead of

It is possible that the list of MXs in the response to the query will
be empty. This is a special case. If the list is empty, mailers
should treat it as if it contained one RR, an MX RR with a preference
value of 0, and a host name of REMOTE. (I.e., REMOTE is its only
MX). In addition, the mailer should do no further processing on the
list, but should attempt to deliver the message to REMOTE. The idea
here is that if a domain fails to advertise any information about a
particular name we will give it the benefit of the doubt and attempt
delivery.

...then I think we'd be paying attention to the salient issue in our
discussions today - which is that "give it the benefit of the doubt" is
no longer the right idea. (granted we still have the backward
compatibility issue, but that's less important for v6 than for v4).

In an IPv4+IPv6 world this becomes even a bit more important.
>
> Let's see if Keith can make this case...

Well, my point was that we're making inferences based on the "implicit
MX" idea that might not really be warranted. As I said above, I might
be reading too much into the intent behind the RFC 974 wording. If the
only purpose of that code analysis is to support my assumptions about
the motivation for the wording in RFC 974, it might not be worth the
trouble to try to explain it. (but if you're really curious, see the
postscript below)

Keith








p.s. Before sending this reply, I considered how I'd write the code in
both cases - one where the "get MX records" routine returned an implicit
MX in the case of no explicit MX records, and the other where it did
not. Mostly the differences seem to be

(a) if you get NXDOMAIN when trying to find addresses from an explicit
MX record, this need not cause delivery failure - you just skip to the
next MX record. It's only a problem when you get NXDOMAIN for all of
the MX records - and then it's still a subtly different error from the
case where you get NXDOMAIN on the domain name that appears in the email
address (and in the "implicit MX" record).

(b) similar to (a) but instead of NXDOMAIN errors you get a response
with no answers to your query for address records. again, for an
ordinary MX record this isn't fatal, but for an "implicit MX" record it
is fatal. (but it's a slightly different case than (a) in that you
probably want to issue a different error message).

(c) if the "get MX records" routine doesn't return an implicit MX
record, you can avoid a few unnecessary DNS queries. but if you have an
internal DNS cache in your MTA this might not matter much.
SM
2008-04-18 00:26:30 UTC
Permalink
Hi Keith,
At 14:17 17-04-2008, Keith Moore wrote:
>My point is that we're getting tripped up by an artifact of the way
>that RFCs 974 was worded - and in the process we're making
>inferences about the interpretation of those words that probably
>weren't intended by the author. If RFC 974 had said

That's the problem with RFCs. No matter how the specifications are
worded, they can give way to various interpretations. As the
collective memory fades away, we try to guess the intent of the author.

>...then I think we'd be paying attention to the salient issue in our
>discussions today - which is that "give it the benefit of the doubt"
>is no longer the right idea. (granted we still have the backward
>compatibility issue, but that's less important for v6 than for v4).

The only way to determine that would be to ask the author of that
text. I think it's a bit far-fetched as we will never get this work done then.

>p.s. Before sending this reply, I considered how I'd write the code
>in both cases - one where the "get MX records" routine returned an
>implicit MX in the case of no explicit MX records, and the other
>where it did not. Mostly the differences seem to be

The main problem stems from when you don't get NXDOMAIN.

Regards,
-sm
Hector Santos
2008-04-18 01:52:48 UTC
Permalink
SM wrote:

> The main problem stems from when you don't get NXDOMAIN.

as well as ultimately, no SMTP service port.

--
Sincerely

Hector Santos, CTO
http://www.santronics.com
http://santronics.blogspot.com
Keith Moore
2008-04-18 02:04:47 UTC
Permalink
SM wrote:

> The main problem stems from when you don't get NXDOMAIN.

well, if you're dealing with an ISP that violates the DNS specs, you
can't expect any application to work correctly.

it's pretty difficult to write protocol specifications that work in the
presence of gross violations of those specifications.

Keith
Tony Finch
2008-04-17 13:52:17 UTC
Permalink
On Thu, 17 Apr 2008, Arnt Gulbrandsen wrote:
>
> I still can't understand why so many people here think an AAAA should suffice.

I think it's more that a host with A and AAAA should be able to receive
email via AAAA even without an MX.

Tony.
--
f.anthony.n.finch <***@dotat.at> http://dotat.at/
HEBRIDES BAILEY: SOUTHEAST BACKING EAST 5 TO 7, DECREASING 4 FOR A TIME.
MODERATE OR ROUGH, OCCASIONALLY VERY ROUGH IN BAILEY AT FIRST. MAINLY FAIR.
GOOD.
Keith Moore
2008-04-17 17:44:21 UTC
Permalink
Tony Finch wrote:
> On Thu, 17 Apr 2008, Arnt Gulbrandsen wrote:
>> I still can't understand why so many people here think an AAAA should suffice.
>
> I think it's more that a host with A and AAAA should be able to receive
> email via AAAA even without an MX.

why?
Tony Finch
2008-04-17 17:47:26 UTC
Permalink
On Thu, 17 Apr 2008, Keith Moore wrote:
> Tony Finch wrote:
> >
> > I think it's more that a host with A and AAAA should be able to receive
> > email via AAAA even without an MX.
>
> why?

That's the consensus result of the argument.

Tony.
--
f.anthony.n.finch <***@dotat.at> http://dotat.at/
IRISH SEA: EAST OR NORTHEAST 5 TO 7, OCCASIONALLY GALE 8 IN SOUTH. MODERATE OR
ROUGH. SHOWERS. GOOD.
Keith Moore
2008-04-17 17:54:34 UTC
Permalink
I must have missed that consensus.

Tony Finch wrote:
> On Thu, 17 Apr 2008, Keith Moore wrote:
>> Tony Finch wrote:
>>> I think it's more that a host with A and AAAA should be able to receive
>>> email via AAAA even without an MX.
>> why?
>
> That's the consensus result of the argument.
>
> Tony.
Tony Finch
2008-04-17 18:01:15 UTC
Permalink
On Thu, 17 Apr 2008, Keith Moore wrote:
> Tony Finch wrote:
> >
> > That's the consensus result of the argument.
>
> I must have missed that consensus.

You didn't: you replied to other-Tony's announcement saying you disagree
with it.

Tony.
--
f.anthony.n.finch <***@dotat.at> http://dotat.at/
VIKING NORTH UTSIRE: NORTHEASTERLY 4, INCREASING 5 OR 6 IN NORTH. MODERATE.
FAIR. GOOD.
Keith Moore
2008-04-17 18:25:16 UTC
Permalink
Oh, I saw that message. I just didn't see the consensus.

Tony Finch wrote:
> On Thu, 17 Apr 2008, Keith Moore wrote:
>> Tony Finch wrote:
>>> That's the consensus result of the argument.
>> I must have missed that consensus.
>
> You didn't: you replied to other-Tony's announcement saying you disagree
> with it.
>
> Tony.
Paul Smith
2008-04-18 06:09:15 UTC
Permalink
Keith Moore wrote:
>
> Oh, I saw that message. I just didn't see the consensus.
It wasn't a consensus, it was a unilateral statement based on the fact
that there wasn't a consensus.

I think it was totally the wrong action.

There are two possible 'results' to the disagreement:

- No implicit MX. This causes me a problem with mail being delivered to
me if I don't have an explicit MX record or an A record, only an AAAA
record. This causes no mail to be delivered to me, so is easy to spot,
and trivial to fix - I just need to add a single MX (or A) record
- Implicit MX. This causes me problems by (a) bunging up my mail server
retry queue, and (b) loading my non-mail server hosts with the thousands
of bounces to forged messages trying to be sent to them. (a) might be
easy to spot, but is nearly impossible for me to fix (without
'stretching' the standard - eg by having different retry algorithms for
implicit vs explicit MC records), (b) is hard to spot what's happening
without a packet tracer and knowing how to use one and is hard to fix
since i need to do something to add 'non-MX' records to all my hosts,
which could be hundreds of 'non-MX' records.

Now, which of those options sounds like it causes the worse problems?

'no implicit mx' may be slightly harder to implement in the mail server,
but it IS *slightly*, and the cost of 3 or 4 lines of code isn't that
much, so it isn't really much of an argument IMHO.
Willie Gillespie
2008-04-18 23:23:00 UTC
Permalink
Douglas Otis wrote:
> On Apr 18, 2008, at 3:27 AM, Tony Finch wrote:
>
>>
>> On Fri, 18 Apr 2008, Paul Smith wrote:
>>>
>>> - Implicit MX. This causes me problems by (a) bunging up my mail
>>> server retry queue, and (b) loading my non-mail server hosts with the
>>> thousands of bounces to forged messages trying to be sent to them.
>>> (a) might be easy to spot, but is nearly impossible for me to fix
>>> (without 'stretching' the standard - eg by having different retry
>>> algorithms for implicit vs explicit MX records), (b) is hard to spot
>>> what's happening without a packet tracer and knowing how to use one
>>> and is hard to fix since i need to do something to add 'non-MX'
>>> records to all my hosts, which could be hundreds of 'non-MX' records.
>>
>> Different retry algorithms for MX-less domains is already standard
>> operational practise. For example see timeout_connect_A and refused_A
>> at
>> http://www.exim.org/exim-html-current/doc/html/spec_html/ch32.html#SECID162
>>
>>
>> I think you're exaggerating the problem that a few SYN packets cause.
>
>
> Paul makes valid points. The size of the problem depends upon the
> non-SMTP host implementation and the size of its network. After all,
> IPv6 permits a greater number of devices on the Internet.
>
> John Levine offered an example:
> http://www.imc.org/ietf-smtp/mail-archive/msg04444.html
>
> This example was a host not running SMTP continuously receiving
> undesired attempts for 30,000 spams per day. This also likely includes
> traffic needed to establish whether port 25 connections are possible by
> legitimate MTAs checking return paths upon message reception. If the
> host represented an intelligent parking meter over a slow IPv6 wireless
> network, this undesired traffic may not be considered negligible.
> Several have suggested the means to avoid this undesired SMTP traffic is
> to publish bogus MX records for each host. The bogus MX records direct
> undesired traffic to the root servers. (Yet another entity needing to
> pay for the AAAA implicit MX record convenience.)
>
> The convenience afforded to administrators of IPv6 AAAA only SMTP
> servers comes at the expense of those receiving SMTP traffic and those
> administrating other protocols. Ironically, those sensitive to abuse
> directed to SMTP are expected to endure it or redirect this traffic to
> root servers by publishing bogus MX records. Standardizing on AAAA
> being implied MX records thereby increases overall administrative
> burdens, SMTP server overhead, and yet ultimately this is likely to
> prevent interoperation due to ensuing defensive strategies. The future
> of SMTP and IPv6 is better protected by _not_ sanctioning AAAA as
> implied MX records and warning about the possible deprecation of A
> records as implied MX records. This would move toward establishing the
> consistent treatment of A and AAAA records, and properly acknowledging
> the rising levels of SMTP abuse.
>
> -Doug

+1
Douglas Otis
2008-04-18 22:32:49 UTC
Permalink
On Apr 18, 2008, at 3:27 AM, Tony Finch wrote:

>
> On Fri, 18 Apr 2008, Paul Smith wrote:
>>
>> - Implicit MX. This causes me problems by (a) bunging up my mail
>> server retry queue, and (b) loading my non-mail server hosts with
>> the thousands of bounces to forged messages trying to be sent to
>> them. (a) might be easy to spot, but is nearly impossible for me to
>> fix (without 'stretching' the standard - eg by having different
>> retry algorithms for implicit vs explicit MX records), (b) is hard
>> to spot what's happening without a packet tracer and knowing how to
>> use one and is hard to fix since i need to do something to add 'non-
>> MX' records to all my hosts, which could be hundreds of 'non-MX'
>> records.
>
> Different retry algorithms for MX-less domains is already standard
> operational practise. For example see timeout_connect_A and
> refused_A at http://www.exim.org/exim-html-current/doc/html/spec_html/ch32.html#SECID162
>
> I think you're exaggerating the problem that a few SYN packets cause.


Paul makes valid points. The size of the problem depends upon the non-
SMTP host implementation and the size of its network. After all, IPv6
permits a greater number of devices on the Internet.

John Levine offered an example:
http://www.imc.org/ietf-smtp/mail-archive/msg04444.html

This example was a host not running SMTP continuously receiving
undesired attempts for 30,000 spams per day. This also likely
includes traffic needed to establish whether port 25 connections are
possible by legitimate MTAs checking return paths upon message
reception. If the host represented an intelligent parking meter over
a slow IPv6 wireless network, this undesired traffic may not be
considered negligible. Several have suggested the means to avoid this
undesired SMTP traffic is to publish bogus MX records for each host.
The bogus MX records direct undesired traffic to the root servers.
(Yet another entity needing to pay for the AAAA implicit MX record
convenience.)

The convenience afforded to administrators of IPv6 AAAA only SMTP
servers comes at the expense of those receiving SMTP traffic and those
administrating other protocols. Ironically, those sensitive to abuse
directed to SMTP are expected to endure it or redirect this traffic to
root servers by publishing bogus MX records. Standardizing on AAAA
being implied MX records thereby increases overall administrative
burdens, SMTP server overhead, and yet ultimately this is likely to
prevent interoperation due to ensuing defensive strategies. The
future of SMTP and IPv6 is better protected by _not_ sanctioning AAAA
as implied MX records and warning about the possible deprecation of A
records as implied MX records. This would move toward establishing
the consistent treatment of A and AAAA records, and properly
acknowledging the rising levels of SMTP abuse.

-Doug
Hector Santos
2008-04-19 07:19:02 UTC
Permalink
Douglas Otis wrote:

> [snip]
>
> The future of SMTP and IPv6 is better protected by _not_
> sanctioning AAAA as implied MX records and warning about the
> possible deprecation of A records as implied MX records. This
> would move toward establishing the consistent treatment of A
> and AAAA records, and properly acknowledging the rising
> levels of SMTP abuse.

Hi Doug,

The way I see it, when you consider the overall desire that is being
expressed, independent of what method is used to discover a host, it
all boils down to a SMTP client/server session have proper transaction
variables.

So the ultimate question becomes:

Must all mail senders have a RECEIVER available "somewhere"
in order to receive a notification?

and if we wish to extend this to 2822,

Must all transaction expose a valid RECEIVER in the 2822
message reply fields (Reply-To:, From:) in order for the
user or some mailbot to send responses?

We are really talking about an authorization concept via a new SMTP
compliancy proposal.

The technical details of MX, A, AAAA, IPv4, IPv6 is meaningless. That's
just the *how* in answering the above fundamental question(s).

Also, very important, it is an "authorization concept" for anonymous
senders for local or hosted recipients because the way most systems
behave today using traditional authorization or authentication methods,
it is the when the client does not meet one or more of these criteria
that any of this MX/A/AAAA issues would be important.

For our system, relay restrictions are completely bypassed when the
client is authorized or authenticated using one of three methods:

- IP allow relay tables,
- ESMTP AUTH,
- POP B4 SMTP

It is only when it is anonymous, do any "extra" sender checking come
into play and in our case, only after the recipient is acceptable. This
follows the principle described in Section 3.3 of 2821 and carried over
to 2821bis:

3.3. Mail Transactions

..... Despite the apparent
scope of this requirement, there are circumstances in which the
acceptability of the reverse-path may not be determined until one or
more forward-paths (in RCPT commands) can be examined.

[Side Point: To me, this is one of the most important statements in
SMTP. Kudos the the author of that statement. Any system that is doing
return path checks at the SMTP level, will drastically improve it
scalability and efficiency by following this "check recipient first,
delayed return path verification" concept.]

Note, I am not questioning that an explicit MX requirement method is not
a valid consideration. I am questioning to what purpose?

Just consider the many transactions with addresses such as:

no-reply @ validdomin.com

that many feedbacks system use today, including bad guys and the
bad/good direct marketing people.

Well, an explicit MX does not resolve this problem of a response address
not being reachable.

However, if it included other SMTP HOSTING requirements:

Does it have a SERVICE PORT available?,
Is the address acceptable at host?

then I think we would be closer to providing valid arguments behind the
"WHY" we may want to even consider this idea.

I don't think I am saying anything odd here.

Much of this is all part of the basic concepts in RFC 3484 with its
getaddrinfo() recommendations. In fact, RFC 3484 does not have not even
one mentioning of MX records.

But check out RFC 3482, specifically section 2 and section 8.

Then also read the following:

RFC 3901 DNS IPv6 Transport Operational Guidelines
RFC 4038 Application Aspects of IPv6 Transition
RFC 4472 Operational Considerations and Issues with IPv6 DNS

In 4038 section 3.2, this note covers what we been partially debating:

3.2. DNS Does Not Indicate Which IP Version Will Be Used

In a node, the DNS name resolver gathers the list of destination
addresses. DNS queries and responses are sent by using either IPv4
or IPv6 to carry the queries, regardless of the protocol version of
the data records [DNSTRANS].

The DNS name resolution issue related to application transition is
that by only doing a DNS name lookup a client application can not be
certain of the version of the peer application. For example, if a
server application does not support IPv6 yet but runs on a dual-stack
machine for other IPv6 services, and this host is listed with an AAAA
record in the DNS, the client application will fail to connect to the
server application. This is caused by a mismatch between the DNS
query result (i.e., IPv6 addresses) and a server application version
(i.e., IPv4).

It touches base with using not MX but SRV as a discovery method. But
note again, not even one mentioning of MX records!!

But this statement is critical:

The application should request all IP addresses without address
family constraints and try all the records returned from the DNS, in
some order, until a working address is found. In particular, the
application has to be able to handle all IP versions returned from
the DNS. This issue is discussed in more detail in [DNSOPV6].

This is where the SERVICE PORT and idea of using SERVICE NAMES comes
into play.

In RFC 4472, section 4.1 it says:

4.1. Use of Service Names instead of Node Names

..

For example, assume a node named "pobox.example.com" provides both
SMTP and IMAP service. Instead of configuring the MX records to
point at "pobox.example.com", and configuring the mail clients to
look up the mail via IMAP from "pobox.example.com", one could use,
e.g., "smtp.example.com" for SMTP (for both message submission and
mail relaying between SMTP servers) and "imap.example.com" for IMAP.
Note that in the specific case of SMTP relaying, the server itself
must typically also be configured to know all its names to ensure
that loops do not occur. DNS can provide a layer of indirection
between service names and where the service actually is, and using
which addresses. (Obviously, when wanting to reach a specific node,
one should use the hostname rather than a service name.)

Note that last sentence as well - a continuation of the implicit MX concept.

And here is an important section 4.3 is I fully agree with:

4.3. Adding the Records Only When Fully IPv6-enabled

The recommendation is that AAAA records for a service should not be
added to the DNS until all of following are true:

1. The address is assigned to the interface on the node.

2. The address is configured on the interface.

3. The interface is on a link that is connected to the IPv6
infrastructure.

In addition, if the AAAA record is added for the node, instead of
service as recommended, all the services of the node should be IPv6-
enabled prior to adding the resource record.

For example, if an IPv6 node is isolated from an IPv6 perspective
(e.g., it is not connected to IPv6 Internet) constraint #3 would mean
that it should not have an address in the DNS.

All that basically means that its going to leak into the IPv4 network
cloud, it better be ready to allow for a reverse communications.

Then we get to section 5.1, and again the all encompassing getaddrinfo()
recommendation:

5.1. DNS Lookups May Query IPv6 Records Prematurely

The system library that implements the getaddrinfo() function for
looking up names is a critical piece when considering the robustness
of enabling IPv6; .....

and finally on a slightly different but highly critical related note,
see section of 7.1 regarding how PTR lookups may or may not be necessary
any more under IPv6.

7.1. Applicability of Reverse DNS

...

It is not clear whether it makes sense to require or recommend that
reverse DNS records be updated. In many cases, it would just make
more sense to use proper mechanisms for security (or topological
information lookup) in the first place. At minimum, the applications
that use it as a generic authorization (in the sense that a record
exists at all) should be modified as soon as possible to avoid such
lookups completely.

All and all Doug, making a decision now about implicit MX in 2821bis
might be the wrong move when one begins to implement IPv6 with the
current recommendations.

--
Sincerely

Hector Santos, CTO
http://www.santronics.com
http://santronics.blogspot.com
Robert A. Rosenberg
2008-04-23 21:53:40 UTC
Permalink
At 03:19 -0400 on 04/19/2008, Hector Santos wrote about Re: I-D
Action:draft-klensin-rfc2821bis-10.txt:

>Note, I am not questioning that an explicit MX requirement method is
>not a valid consideration. I am questioning to what purpose?
>
>Just consider the many transactions with addresses such as:
>
> no-reply @ validdomin.com
>
>that many feedbacks system use today, including bad guys and the
>bad/good direct marketing people.

What is the envelope address for these messages? So long as it exists
and will accept delivery failure Email, the fact that the FROM
address is SEND-ONLY (but in a valid domain that will respond by
sending a "NO SUCH USER" error message to any recipient that tries to
reply [or send] to such an address) is a non issue that is self
correcting (you spank the user who tries to send to the address).


>Well, an explicit MX does not resolve this problem of a response
>address not being reachable.

You said that "validdomin.com" is a valid domain so attempts to send
to the no-reply address will get to the SMTP server supporting
validdomin.com which will then send a "No Such User" reply (which in
my book qualifies as reachable since the message to no-reply WAS
delivered to the SMTP Server (but then rejected).
Arnt Gulbrandsen
2008-04-24 13:36:59 UTC
Permalink
Robert A. Rosenberg writes:
> At 03:19 -0400 on 04/19/2008, Hector Santos wrote about Re: I-D
> Action:draft-klensin-rfc2821bis-10.txt:
>> Just consider the many transactions with addresses such as:
>>
>> no-reply @ validdomin.com
>>
>> that many feedbacks system use today, including bad guys and the
>> bad/good direct marketing people.
>
> What is the envelope address for these messages?

The ones that end mail to me (about fifty addresses in my personal mail
archive, mostly noreply@, some no-reply@, some others) generally use
the same address,and it's valid in the sense that the address is
syntactically valid and that mail to the address is accepted by the
best MX for the domain.

I would not bet that mail to such an address is stored on disk, or
causes any reaction other than (at most) an autoresponse. But YMMV.

Arnt
Peter J. Holzer
2008-04-24 19:48:56 UTC
Permalink
On 2008-04-24 15:36:59 +0200, Arnt Gulbrandsen wrote:
>
> Robert A. Rosenberg writes:
> >At 03:19 -0400 on 04/19/2008, Hector Santos wrote about Re: I-D
> >Action:draft-klensin-rfc2821bis-10.txt:
> >>Just consider the many transactions with addresses such as:
> >>
> >> no-reply @ validdomin.com
> >>
> >>that many feedbacks system use today, including bad guys and the
> >>bad/good direct marketing people.
> >
> >What is the envelope address for these messages?
>
> The ones that end mail to me (about fifty addresses in my personal mail
> archive, mostly noreply@, some no-reply@, some others) generally use
> the same address,and it's valid in the sense that the address is
> syntactically valid and that mail to the address is accepted by the
> best MX for the domain.
>
> I would not bet that mail to such an address is stored on disk, or
> causes any reaction other than (at most) an autoresponse. But YMMV.

I wouldn't bet either, but I would consider it bad practice if the
envelope sender for any automated mail is a black hole. If no human is
reading it, then there should at least be some program which analyzes
bounces and marks bouncing addresses as probably invalid.

hp

--
_ | Peter J. Holzer | It took a genius to create [TeX],
|_|_) | Sysadmin WSR | and it takes a genius to maintain it.
| | | ***@hjp.at | That's not engineering, that's art.
__/ | http://www.hjp.at/ | -- David Kastrup in comp.text.tex
Paul Smith
2008-04-25 08:43:33 UTC
Permalink
Peter J. Holzer wrote:
> On 2008-04-24 15:36:59 +0200, Arnt Gulbrandsen wrote:
>
>> Robert A. Rosenberg writes:
>>
>>> At 03:19 -0400 on 04/19/2008, Hector Santos wrote about Re: I-D
>>> Action:draft-klensin-rfc2821bis-10.txt:
>>>
>>>> Just consider the many transactions with addresses such as:
>>>>
>>>> no-reply @ validdomin.com
>>>>
>>>> that many feedbacks system use today, including bad guys and the
>>>> bad/good direct marketing people.
>>>>
>>> What is the envelope address for these messages?
>>>
>> The ones that end mail to me (about fifty addresses in my personal mail
>> archive, mostly noreply@, some no-reply@, some others) generally use
>> the same address,and it's valid in the sense that the address is
>> syntactically valid and that mail to the address is accepted by the
>> best MX for the domain.
>>
>> I would not bet that mail to such an address is stored on disk, or
>> causes any reaction other than (at most) an autoresponse. But YMMV.
>>
>
> I wouldn't bet either, but I would consider it bad practice if the
> envelope sender for any automated mail is a black hole. If no human is
> reading it, then there should at least be some program which analyzes
> bounces and marks bouncing addresses as probably invalid.
>
The envelope sender for automated mail just be blank. That's defined as
the address you use if you don't want a bounce.

Unfortunately, there's a large number of mail servers out there which
won't accept mail with null return paths, contrary to RFC 2821 - that's
at least one reason why people use noreply@ etc.

--
Paul Smith

VPOP3 - POP3/SMTP/IMAP4/Webmail Email server for Windows
Hector Santos
2008-04-25 12:16:32 UTC
Permalink
Paul Smith wrote:
>
> Unfortunately, there's a large number of mail servers out there which
> won't accept mail with null return paths, contrary to RFC 2821 - that's
> at least one reason why people use noreply@ etc.

Right, which might also include a bounce being redirected (sandboxed)
away from users.

--
Sincerely

Hector Santos, CTO
http://www.santronics.com
http://santronics.blogspot.com
Tony Finch
2008-04-25 13:26:34 UTC
Permalink
On Fri, 25 Apr 2008, Paul Smith wrote:
>
> The envelope sender for automated mail just be blank. That's defined as the
> address you use if you don't want a bounce.

A null return path should not be used on a message unless it conforms to
one of a few standards-track types. RFC 2821 section 4.5.5.

Tony.
--
f.anthony.n.finch <***@dotat.at> http://dotat.at/
BISCAY: EAST OR SOUTHEAST 4 OR 5. MODERATE. FOG PATCHES IN NORTH. MODERATE OR
GOOD, OCCASIONALLY VERY POOR IN NORTH.
Arnt Gulbrandsen
2008-04-25 14:11:38 UTC
Permalink
Tony Finch writes:
> On Fri, 25 Apr 2008, Paul Smith wrote:
>> The envelope sender for automated mail just be blank. That's defined
>> as the address you use if you don't want a bounce.
>
> A null return path should not be used on a message unless it conforms
> to one of a few standards-track types. RFC 2821 section 4.5.5.

2821 4.5.5 lists some types for which you should use the null path. It
doesn't forbid using <> for types not on its list.

3461 5.2.2 (d), 3834 3.3 and 5230 5.1 add to the list, and I would not
be surprised if other RFCs add more and code does even more.

Arnt
Tony Finch
2008-04-25 14:37:23 UTC
Permalink
On Fri, 25 Apr 2008, Arnt Gulbrandsen wrote:
>
> 2821 4.5.5 lists some types for which you should use the null path. It doesn't
> forbid using <> for types not on its list.

All other types of messages (i.e., any message which is not required
by a standards-track RFC to have a null reverse-path) SHOULD be sent
with with a valid, non-null reverse-path.

Tony.
--
f.anthony.n.finch <***@dotat.at> http://dotat.at/
SOUTHEAST ICELAND: CYCLONIC 4 OR 5, BECOMING NORTHEASTERLY 6 TO GALE 8,
PERHAPS SEVERE GALE 9 LATER. MODERATE OR ROUGH. RAIN AT TIMES. MODERATE OR
GOOD, OCCASIONALLY POOR.
Arnt Gulbrandsen
2008-04-25 16:47:12 UTC
Permalink
Tony Finch writes:
> All other types of messages (i.e., any message which is not
> required by a standards-track RFC to have a null reverse-path)
> SHOULD be sent with with a valid, non-null reverse-path.

My bad.

Arnt
Frank Ellermann
2008-04-25 15:12:44 UTC
Permalink
Arnt Gulbrandsen wrote:

> 2821 4.5.5 lists some types for which you should use the null
> path. It doesn't forbid using <> for types not on its list.

> 3461 5.2.2 (d), 3834 3.3 and 5230 5.1 add to the list, and I
> would not be surprised if other RFCs add more and code does
> even more.

2821bis explicitly mentions RFCs 3461 and 3798 in this section.

RFC 5230 is an application of RFC 3834. There is no reference
in 2821bis. I recall that John discussed it with Keith, maybe
that should be fixed, adding an RFC 3834 reference in 4.5.5 (?)

4.5.5 says that MAIL FROM: SHOULD be not empty in scenarios not
covered by standards-track RFCs mandating an empty reverse-path.
^^^^^^^^^^^^^^^^^^^^
IMHO exploring the far end of SHOULD on the border to MUST.

Frank
Alessandro Vesely
2008-04-25 16:21:06 UTC
Permalink
Frank Ellermann wrote:
> Arnt Gulbrandsen wrote:
>
>> 2821 4.5.5 lists some types for which you should use the null
>> path. It doesn't forbid using <> for types not on its list.
>
>> 3461 5.2.2 (d), 3834 3.3 and 5230 5.1 add to the list, and I
>> would not be surprised if other RFCs add more and code does
>> even more.
>
> 2821bis explicitly mentions RFCs 3461 and 3798 in this section.
>
> RFC 5230 is an application of RFC 3834. There is no reference
> in 2821bis. I recall that John discussed it with Keith, maybe
> that should be fixed, adding an RFC 3834 reference in 4.5.5 (?)

I would not call that a "fix".

Forwarding mail from server scripts often results in messages
transferred with an empty MAIL FROM, RFCs notwithstanding. Some even
hypothesize a BCP candidature for such "modernism"...
Frank Ellermann
2008-04-25 20:06:36 UTC
Permalink
Alessandro Vesely wrote:

>> RFC 5230 is an application of RFC 3834. There is no reference
>> in 2821bis. I recall that John discussed it with Keith, maybe
>> that should be fixed, adding an RFC 3834 reference in 4.5.5 (?)

> I would not call that a "fix".

> Forwarding mail from server scripts often results in messages
> transferred with an empty MAIL FROM, RFCs notwithstanding.

Forwarders are unrelated to RFC 3834 "auto-replies" by mailbots,
compare <http://www.openspf.org/Frank_Ellermann/Auto-responders>

> Some even hypothesize a BCP candidature for such "modernism"...

I have never heard of that idea, and don't think that it is good,
but of course adding "or BCP" to "standards-track" would be okay
in 4.5.5.

Frank
Alessandro Vesely
2008-04-26 08:19:53 UTC
Permalink
Frank Ellermann wrote:
> Alessandro Vesely wrote:
>> I would not call that a "fix".
>
>> Forwarding mail from server scripts often results in messages
>> transferred with an empty MAIL FROM, RFCs notwithstanding.
>
> Forwarders are unrelated to RFC 3834

Yes, I just meant to give one more example of empty sender, apparently
violating rfc2821[bis].

>> Some even hypothesize a BCP candidature for such "modernism"...
>
> I have never heard of that idea, and don't think that it is good,

I heard the idea in discussions about the

MAIL FROM: <> AUTH=***@example.com

The rationale is that, even if the target server does not understand
the provided AUTH field, an empty sender is more convenient for both
parties. While I think it may break the original SMTP design, I must
acknowledge that spam drives people crazy.

> but of course adding "or BCP" to "standards-track" would be okay
> in 4.5.5.

Even if that is fine, it doesn't address the real problem. I know that
the decision of not addressing the spam issue was made much ahead.
However, it may make sense to try and assess its possible
consequences, now that the process is nearly but not yet concluded.
Peter J. Holzer
2008-04-25 13:44:22 UTC
Permalink
On 2008-04-25 09:43:33 +0100, Paul Smith wrote:
> Peter J. Holzer wrote:
> >On 2008-04-24 15:36:59 +0200, Arnt Gulbrandsen wrote:
> >>Robert A. Rosenberg writes:
> >>>At 03:19 -0400 on 04/19/2008, Hector Santos wrote about Re: I-D
> >>>Action:draft-klensin-rfc2821bis-10.txt:
> >>>> no-reply @ validdomin.com
[...]
> >>I would not bet that mail to such an address is stored on disk, or
> >>causes any reaction other than (at most) an autoresponse. But YMMV.
> >
> >I wouldn't bet either, but I would consider it bad practice if the
> >envelope sender for any automated mail is a black hole. If no human is
> >reading it, then there should at least be some program which analyzes
> >bounces and marks bouncing addresses as probably invalid.
> >
> The envelope sender for automated mail just be blank. That's defined as
> the address you use if you don't want a bounce.

"automated mail" and "don't want a bounce" are pretty much orthogonal.

hp

--
_ | Peter J. Holzer | It took a genius to create [TeX],
|_|_) | Sysadmin WSR | and it takes a genius to maintain it.
| | | ***@hjp.at | That's not engineering, that's art.
__/ | http://www.hjp.at/ | -- David Kastrup in comp.text.tex
Robert A. Rosenberg
2008-04-24 21:08:28 UTC
Permalink
At 15:36 +0200 on 04/24/2008, Arnt Gulbrandsen wrote about Re: I-D
Action:draft-klensin-rfc2821bis-10.txt:

>Robert A. Rosenberg writes:
>>At 03:19 -0400 on 04/19/2008, Hector Santos wrote about Re: I-D
>>Action:draft-klensin-rfc2821bis-10.txt:
>>>Just consider the many transactions with addresses such as:
>>>
>>> no-reply @ validdomin.com
>>>
>>>that many feedbacks system use today, including bad guys and the
>>>bad/good direct marketing people.
>>
>>What is the envelope address for these messages?
>
>The ones that end mail to me (about fifty addresses in my personal
>mail archive, mostly noreply@, some no-reply@, some others)
>generally use the same address,and it's valid in the sense that the
>address is syntactically valid and that mail to the address is
>accepted by the best MX for the domain.
>
>I would not bet that mail to such an address is stored on disk, or
>causes any reaction other than (at most) an autoresponse. But YMMV.
>
>Arnt

If you mean that the From and Return-Path are both use the noreply
type user id, then they are unable to see bounces. I just checked my
archives for noreply and no-reply mail and all the messages have a
non-noreply type return-path. The envelope address that I was
referring to is what becomes the return-path.
Hector Santos
2008-04-25 02:30:59 UTC
Permalink
Robert A. Rosenberg wrote:
>
>> Well, an explicit MX does not resolve this problem of a response
>> address not being reachable.
>
> You said that "validdomin.com" is a valid domain so attempts to send to
> the no-reply address will get to the SMTP server supporting
> validdomin.com which will then send a "No Such User" reply (which in my
> book qualifies as reachable since the message to no-reply WAS delivered
> to the SMTP Server (but then rejected).

My overall point, in so many words, was that mandating an MX record
requirement is meaningless IF the GOAL of the mandate is to thwart bad guys.

So even if validdomain.com has a MX record, it means nothing if the
other two key parts of the SMTP transaction equation are not valid:

- Service Port
- Valid Recipient

At the very least, the service port is a major consideration.

In short, having a MX record does not make you a valid mail host until
everything else about the process is valid.

--
Sincerely

Hector Santos, CTO
http://www.santronics.com
http://santronics.blogspot.com
Arnt Gulbrandsen
2008-04-25 07:43:11 UTC
Permalink
Hector Santos writes:
> My overall point, in so many words, was that mandating an MX record
> requirement is meaningless IF the GOAL of the mandate is to thwart
> bad guys.

Who cares about bad guys? Really?

Arnt
Hector Santos
2008-04-25 12:25:38 UTC
Permalink
Arnt Gulbrandsen wrote:
>
> Hector Santos writes:
>> My overall point, in so many words, was that mandating an MX record
>> requirement is meaningless IF the GOAL of the mandate is to thwart bad
>> guys.
>
> Who cares about bad guys? Really?

Good point.

If you ask with the mindset of everyone playing by the same (protocol)
rules established, I agree.

At the operations side, one might reasonably argue the pendulum has
shifted such that a new mandate would have a high payoff. After all,
the theory is, the impact would be small against the good guy but if you
are legitimate, you would have an avenue of complaining and resolution -
you hope. Bad guys don't complaint - they evolve.

--
Sincerely

Hector Santos, CTO
http://www.santronics.com
http://santronics.blogspot.com
Paul Smith
2008-04-25 08:41:28 UTC
Permalink
Hector Santos wrote:
> - Service Port
> - Valid Recipient
>
> At the very least, the service port is a major consideration.
>
> In short, having a MX record does not make you a valid mail host until
> everything else about the process is valid.
>
True. But if you could mandate that NOT having an MX record makes the
domain NOT valid for mail, then it might be easier to filter out some
junk. Also, it stops mail senders (sending bounce messages normally)
*arbitrarily* choosing to try to send the mail to a host.

It's "arbitrary" because there's no way to set up a host name which
WON'T get mail (other than to do something extra such as set up a dummy
MX record, which would make anyone think that the name SHOULD get mail
contrary to the actual reason for doing it), so simply setting up a host
name causes the incorrect implication that you want to get mail on that
host.

Yes, you can say that the lack of a waiting service port means it isn't
a mail host - but it DOESN'T. It means that it isn't a mail host *now*.
It might be in 2 minutes, or it might never be - there's no way of knowing.

If there was some mandated, standard way of advertising that there
*should* be a service on a certain port, then that would work, but IMHO,
an MX record could do just that for port 25.


--
Paul Smith

VPOP3 - POP3/SMTP/IMAP4/Webmail Email server for Windows
Hector Santos
2008-04-25 13:11:02 UTC
Permalink
Paul Smith wrote:

> True. But if you could mandate that NOT having an MX record makes the
> domain NOT valid for mail, then it might be easier to filter out some
> junk. Also, it stops mail senders (sending bounce messages normally)
> *arbitrarily* choosing to try to send the mail to a host.
>
> It's "arbitrary" because there's no way to set up a host name which
> WON'T get mail (other than to do something extra such as set up a dummy
> MX record, which would make anyone think that the name SHOULD get mail
> contrary to the actual reason for doing it), so simply setting up a host
> name causes the incorrect implication that you want to get mail on that
> host.

I agree, but in my view, I don't think it is my place as a SMTP software
provider to mandate it across the board. It would have to be
implementation option.

There is no question in my mind, if every (wide adoption) SMTP software
began to do this, we would have an impact on both ends - good and bad.

But how much of an negative impact will it have and is it safe to assume
those people are going to JUMP to fix their MX records?

Maybe they don't won't have a choice.

But in my view, again as a Software guy, I would leaned toward to
maintaining compatibility and if we are asking for code change, then I
prefer to look for something we can use to something extra that will
justify a new change in "logic". From this standpoint, I prefer to
play the game safe technically and also legally.

For example, if the email had a DKIM signature, that is would be, IMV, a
legal trigger to do new things that is above the normal legacy
expectations.

> Yes, you can say that the lack of a waiting service port means it isn't
> a mail host - but it DOESN'T. It means that it isn't a mail host *now*.
> It might be in 2 minutes, or it might never be - there's no way of knowing.

Very true. This is all part of an system retry logic and setup. For our
setup/operation, a strong requirement is enabled for system availability.

The theory behind our CBV implementation is that if you're good and
ready to send me mail, then you better be good and ready at the same
precise moment of time to accept mail (verified by CBV).

> If there was some mandated, standard way of advertising that there
> *should* be a service on a certain port, then that would work, but IMHO,
> an MX record could do just that for port 25.

But MX is just a "menu" of A* records. It is the A* (host) records that
need to be resolved. Whether is a group or just 1 (implicit) host set,
the real technical requirement can be stated as:

A valid SMTP host is one with a A/AAAA record
with a SMTP service port.

and the idea of system availability can be argued to be an out of scope
policy question, not technical.

I think 2821bis covers this pretty well:

4.5.4.2. Receiving Strategy

The SMTP server SHOULD attempt to keep a pending listen on the SMTP
port (specified by IANA as port 25) at all times. This requires the
support of multiple incoming TCP connections for SMTP. Some limit
MAY be imposed but servers that cannot handle more than one SMTP
transaction at a time are not in conformance with the intent of this
specification.

As discussed above, when the SMTP server receives mail from a
particular host address, it could activate its own SMTP queuing
mechanisms to retry any mail pending for that host address.

--
Sincerely

Hector Santos, CTO
http://www.santronics.com
http://santronics.blogspot.com
Douglas Otis
2008-04-25 19:18:39 UTC
Permalink
On Apr 24, 2008, at 7:30 PM, Hector Santos wrote:

>
> Robert A. Rosenberg wrote:
>>> Well, an explicit MX does not resolve this problem of a response
>>> address not being reachable.
>>
>> You said that "validdomin.com" is a valid domain so attempts to
>> send to the no-reply address will get to the SMTP server supporting
>> validdomin.com which will then send a "No Such User" reply (which
>> in my book qualifies as reachable since the message to no-reply WAS
>> delivered to the SMTP Server (but then rejected).
>
> My overall point, in so many words, was that mandating an MX record
> requirement is meaningless IF the GOAL of the mandate is to thwart
> bad guys.

Bad-actors run an overwhelming majority of SMTP clients. If or when
IPv6 is introduced, IP addresses will quickly become less useful in
defending against a rising level of SMTP exploitation. Name mismatch
must be tolerated in reverse zone due to PTR set limitations.
Administrative errors often found within the reverse zone and the
added number of labels for IPv6 ensure checking reverse names will
remain burdensome. Names found in the reverse zone are often used
only to make guesses about the nature of the related address. These
guesses are based upon inconsistent and non-standardized conventions,
especially for classless delegations. Within the forward zone, unlike
address records, MX records exclusively support the SMTP service.
Unless a domain offers clear indications of supporting SMTP by
publishing discovery records, recipients should forgo other validation
checks.

Some expect hosts to publish bogus MX records to "opt-out" and avoid
what might become a significant amount of undesired traffic related to
SMTP service, signatures, and policy validations. Of course, an
equitable solution would be to require valid MX records for those
supporting SMTP and SMTP extensions, where upon not finding an MX
record would indicate the extension is not supported. Without at
least an A record, SMTP itself is not supported.

Policy assertions may assist in mitigating some exploitation. Rather
than flooding name space with synthesized policy records, policy
should be published in conjunction with the discovery records for the
specific service. While many may dismiss a concern about the
application of policy scaling, policy tactics should be expected to
evolve. A means to scale policy must be established. Policy can
scale when published only in conjunction with explicit discovery
records.

Clearly, what does not scale and what would be most unfair is to
expect every host to publish bogus discovery records for all
problematic public message exchange protocols. It is not about
thwarting bad guys, it is about mitigating undesired traffic for those
not involved with the problematic protocol.

-Doug
Frank Ellermann
2008-04-19 21:24:24 UTC
Permalink
Hector Santos wrote:

> Must all mail senders have a RECEIVER available
> "somewhere" in order to receive a notification?

If you are talking about envelope sender addresses,
sure, that is the idea, otherwise an empty reverse-
path would do.

> Must all transaction expose a valid RECEIVER in
> the 2822 message reply fields (Reply-To:, From:)
> in order for the user or some mailbot to send
> responses?

Yes, again the idea of Reply-To (or implicitly the
2822-From if no explicit Reply-To address is given)
is to send replies to it, as the name says.

Mailbots better use the reverse-path as explained
in RFC 3834 when talking to unknown strangers, I've
just "spamcopped" two auto-replies to the 2822-From.

> Just consider the many transactions with addresses
> such as:
> no-reply @ validdomin.com
> that many feedbacks system use today, including bad
> guys and the bad/good direct marketing people.

The auto-replies reported as spam above were triggered
by a mail to the SPF help list. It has nothing to do
with IPv6 or MX.

> I don't think I am saying anything odd here.
[...]
> RFC 3484 does not have not even one mentioning of MX
> records.

Apparently RFC 3484 is about IP, two layers below SMTP,
why should it mention MX ? It also does not mention
X.75, V.90, or ISDN records.

> But check out RFC 3482

An informational RFC about E.164, why should I look in
this memo, is "3482" a typo ?

> Then also read the following:

I'm not going to read tons of RFCs I have never before
heard of, I believe you when you say that they do not
mention MX or SMTP.

> In 4038 section 3.2, this note covers what we been
> partially debating:

>| 3.2. DNS Does Not Indicate Which IP Version Will Be Used
[...]

We have even worked out how to solve this problem here:

dom.example. IN MX 10 ipv4.dom.example.
IN A 208.247.131.9
IN AAAA 2001:DB8::CD30
ipv4.dom.example IN A 208.247.131.9

> It touches base with using not MX but SRV as a discovery
> method. But note again, not even one mentioning of MX
> records!!

They did not need to mention MX, because that is the one
case where the solution is obvious (using MX, see above).

> In RFC 4472, section 4.1 it says:

Fine, another solution, use smtp.dom.example. for SMTP,
change all dom.example. addresses to smtp.dom.example.,
or maybe just use an MX pointing to smtp.dom.example. :-)

>| in the specific case of SMTP relaying, the server itself
>| must typically also be configured to know all its names
>| to ensure that loops do not occur.

Also to ensure that ***@smtp.dom.example (etc.)
work as expected, yes.

>| (Obviously, when wanting to reach a specific node, one
>| should use the hostname rather than a service name.)

> Note that last sentence as well - a continuation of the
> implicit MX concept.

Just because a name contains www / ftp / smtp does not
necessarily mean that a host supports http / ftp / smtp,
let's say that IAB RFC 4367 info trumps RFC 4472 info:
"What's in a Name: False Assumptions about DNS Names"

Frank
Hector Santos
2008-04-18 19:47:23 UTC
Permalink
Lisa Dusseault wrote:
>
> My serious offer here is that if somebody sees a way towards consensus
> on the implicit MX issue, please help find it or build it. The result
> of that consensus may not go into this document, but I will help to get
> the consensus documented and published.

What are looking for here?

All I see here is an "Enforcement" argument.

Thou shall not do implicit MX lookups anymore.
Thou shall enforce MX records.

Even if this was written into 2821bis, I fail to grasp how any
commercial vendor is their right mind is going to heed that without
being concern of the potential harm to their customer base, and worst -
increase support issues!

Maybe if there was some NEW identifier marker that would put the client
into a whole new category, then we can say

"ok, now that DUDE must have MX records"

Can we say this for an IPv6 layer connection? Well, there might be
opportunity to do this with minimal damage. But we really don't know,
do we?

We can't say that for IPv4 connections. The long term autonomous nature
of the SMTP system will broken.

Paul is off base with a presumption this has no cost impact. It isn't
just 2-4 lines of code change.

At best, it can probably be mentioned as a DIRECTION so the contemporary
vendors can assert a deprecated option. But to completely
turn it off without any other information to work with? I don't think so.

And off course, none of this stops DNS managers / SMTP operators from
running a proper setup too.

Anyway, Tony decided. When will it end? or isn't that sacred any more
either?

--
Sincerely

Hector Santos, CTO
http://www.santronics.com
http://santronics.blogspot.com
Frank Ellermann
2008-04-19 09:08:53 UTC
Permalink
Hector Santos wrote:

[subject changed for a general remark about "the rules"]
> Anyway, Tony decided. When will it end?
> or isn't that sacred any more either?

IMO a shepherd is a volunteer for various procedural tasks,
a kind of "super-reviewer" for things that have to be done
by the sponsor (an area director) otherwise.

They prepare a "writeup" answering all questions in the
questionnnaire (see RFC 4858 for IETF WG drafts, a similar
ION for non-WG drafts went the way of all IONs recently).

For this job they need to check the ABNF and other formal
issues (idnits), they check public reviews, for the famous
"question 1F" they collect premature appeal cartooneys.

For a WG draft the shepherd is appointed by the WG Chairs,
and it typically is a Chair, it could also be a volunteer.
If the sponsoring AD has a problem with that (s)he is free
to do it the old way, without the help of the shepherd.

For a non-WG draft a shepherd can be appointed by the AD,
if there is no volunteer the sponsoring AD is free to do
it the old way, without the help of a shepherd.

What shepherds do NOT is "decide" anything, apart from the
decision to volunteer. For a non-WG draft only the author
decides what's in their drafts, and the sponsoring AD is
responsible for the "writeup", no matter who prepared it.

E.g., shepherds have no "write access" on the I-D tracker,
maybe that will change for the "WG Chair is shepherd" case
in the future. IOW, as far as the community is concerned,
the concept of a shepherd is a private arrangement between
the author and the sponsoring AD, and there are no appeals
against anything authors, editors, or shepherds might do -
the responsible parties are WG Chairs and ADs.

Only WG Chairs, ADs, IESG, and IAB can use the magic word
"consensus" in a meaningful way, anybody else trying this
(including me in this article ;-) is just talking.

Frank
Keith Moore
2008-04-18 19:08:28 UTC
Permalink
I'll say that I don't want to see 2821bis held up any more over this. A
better treatment of IPv6-related issues in SMTP is needed, but it should
be done in a separate document.

And in a separate document we'll be freer to say what we think is best
because we won't have concerns about resetting 2821bis to proposed.
(I think this indicates a flaw in our process, BTW, but we're not going
to change the process by holding up 2821bis).

Keith

p.s. More generally, I think we've seen enough by now to realize that
neither a hodgepodge of documents where each one modifies its
predecessors in various ways (think RFC 821, 974, 1123, and SMTP
extensions) , nor a monolithic document that tries to be
all-encompassing and is completely revised every several years, is a
good way to define a standard for a complex, evolving, and vital service
like Internet email.



Lisa Dusseault wrote:
>
> On Apr 17, 2008, at 11:09 PM, Paul Smith wrote:
>
>>
>> Keith Moore wrote:
>>>
>>> Oh, I saw that message. I just didn't see the consensus.
>> It wasn't a consensus, it was a unilateral statement based on the fact
>> that there wasn't a consensus.
>
> Given that we're revising an ambiguous document, it was a conservative
> decision, even if it was a unilateral statement and even if the
> consensus on something new to recommend isn't clear.
>
>>
>> I think it was totally the wrong action.
>
> I also think arguing interminably, or otherwise failing to publish 2821
> bis, would be the wrong action. There are few situations where we just
> can't get consensus in a timely manner in the IETF and have to do
> something else, and the right thing to do as that "something else" is
> case-dependent.
>
> My serious offer here is that if somebody sees a way towards consensus
> on the implicit MX issue, please help find it or build it. The result
> of that consensus may not go into this document, but I will help to get
> the consensus documented and published.
>
> Lisa
>
Lisa Dusseault
2008-04-18 19:01:16 UTC
Permalink
On Apr 17, 2008, at 11:09 PM, Paul Smith wrote:

>
> Keith Moore wrote:
>>
>> Oh, I saw that message. I just didn't see the consensus.
> It wasn't a consensus, it was a unilateral statement based on the
> fact that there wasn't a consensus.

Given that we're revising an ambiguous document, it was a conservative
decision, even if it was a unilateral statement and even if the
consensus on something new to recommend isn't clear.

>
> I think it was totally the wrong action.

I also think arguing interminably, or otherwise failing to publish
2821 bis, would be the wrong action. There are few situations where
we just can't get consensus in a timely manner in the IETF and have to
do something else, and the right thing to do as that "something else"
is case-dependent.

My serious offer here is that if somebody sees a way towards consensus
on the implicit MX issue, please help find it or build it. The result
of that consensus may not go into this document, but I will help to
get the consensus documented and published.

Lisa
Tony Finch
2008-04-18 10:27:11 UTC
Permalink
On Fri, 18 Apr 2008, Paul Smith wrote:
>
> - Implicit MX. This causes me problems by (a) bunging up my mail server
> retry queue, and (b) loading my non-mail server hosts with the thousands
> of bounces to forged messages trying to be sent to them. (a) might be
> easy to spot, but is nearly impossible for me to fix (without
> 'stretching' the standard - eg by having different retry algorithms for
> implicit vs explicit MC records), (b) is hard to spot what's happening
> without a packet tracer and knowing how to use one and is hard to fix
> since i need to do something to add 'non-MX' records to all my hosts,
> which could be hundreds of 'non-MX' records.

Different retry algorithms for MX-less domains is already standard
operational practise. For example see timeout_connect_A and refused_A at
http://www.exim.org/exim-html-current/doc/html/spec_html/ch32.html#SECID162

I think you're exaggerating the problem that a few SYN packets cause.

Tony.
--
f.anthony.n.finch <***@dotat.at> http://dotat.at/
HUMBER THAMES DOVER: EAST OR NORTHEAST 5 TO 7, OCCASIONALLY GALE 8 IN DOVER.
MODERATE OR ROUGH. OCCASIONAL RAIN. MODERATE OR GOOD.
Robert A. Rosenberg
2008-04-17 20:06:07 UTC
Permalink
At 14:52 +0100 on 04/17/2008, Tony Finch wrote about Re: I-D
Action:draft-klensin-rfc2821bis-10.txt:

>On Thu, 17 Apr 2008, Arnt Gulbrandsen wrote:
>>
>> I still can't understand why so many people here think an AAAA
>>should suffice.
>
>I think it's more that a host with A and AAAA should be able to receive
>email via AAAA even without an MX.
>
>Tony.

I think part of the problem is that there is a confusion between a
host that happens to have a FQDN that was used in a ***@FQDN email
address and the SMTP Servers that are designated as the authorized
method of delivering email to users with that FQDN email addresses.

There is no requirement that a host pointed to by a FQDN A or AAAA
record be running an SMTP Server that is responsible for accepting
mail addressed to a FQDN email address. The responsible SMTP Servers
are supposedly designated by an MX record that points at the A and
AAAA records of the hosts running SMTP MTAs that are responsible for
the FQDN domain (hosts who might not have FQDN as their host name).
The direct use of the hosts pointed to by an A record in the absence
of a FQDN MX is for 20+ year old historical reasons that ASSUME that
the hosts pointed to by the FQDN A records ARE running an MTA that is
willing to accept FQDN email. Use of an AAAA record (or an A record)
in the absence of an MX record is only viable (let alone valid) WHEN
those A and/or AAAA hosts ARE running an MTA. In the case where this
assumption is incorrect, the correct hosts for the FQDN MUST be
located via an MX record for that FQDN (the simulation of a FQDN MX 0
FQDN record in the absence of an physical/explicit MX record is thus
only valid when the FQDN A and AAAA records DO point at hosts running
MTAs).

While allowing the use of AAAA records in the absence of an MX (in
the way that A records are currently allowed to be used) might work
(although IMO a dangerous procedure), there should at least be some
statement [in whatever document that authorizes this method of
finding IPv6 reachable MTAs in lieu of using an explicit MX pointing
at the IPv4 and IPv6 hosts running MTAs] that this failure to supply
an MX is only allowed if ALL hosts with the FQDN name ARE running
MTAs (IOW: If/When ANY of the FQDN names hosts are not running an
MTA, a MX MUST be supplied and direct use of A and/or AAAA records
with the FQDN host name is NOT supported).

Since it seems (and I agree with this stance) that attempts to
deprecate the A-Fallback behavior is not politically viable right
now, the best short-term solution is to discourage the use of A (and
definitely AAAA) records and to document the situations when they can
be used (ie: When the Domain DNS Administrator KNOWS [not just
ASSUMES] that the A and AAAA records point at MTA running hosts), and
recommend the use of MX records to insure that only MTA running hosts
are contacted to receive email.
Hector Santos
2008-04-17 11:58:15 UTC
Permalink
John C Klensin wrote:

> Whatever I said, I didn't intend it to convey the expectation
> that the responsibility would need to lie with the IPv4-only
> recipient site. I have come to believe that it is appropriate
> for a receiving site to do at least superficial verification of
> the possibility of delivering an NDN before accepting a message
> for delivery for which an NDN might be necessary (i.e., for
> which delivery cannot be assured while the SMTP connection is
> still open). I think that testing the reverse path and making a
> decision to not accept the message if the test fails is entirely
> consistent with the "take responsibility" language of 2821 (and
> 1123).

Well I'll be. I must be still dreaming! PITCH ME! :-)

> I think that implies that, for the near future at least, if
> ***@ipv6.l.google.com wants to have a reasonable expectation
> that mail it sends will be accepted by mail servers running in
> IPv4-only environments, then it (the sender) must expect to
> either be dual-stack (and advertise the IPv4 address too) or to
> have a lower-priority MX advertised that will accept IPv4
> traffic.

Thank you!

Consider if that reasonable expectation is not met, we will be breeding
a new environment of send only systems, including the exploitation of
such new send-only behavior. Legitimate Ipv6 systems would not only
risk losing response/feedback communications, but it will put itself at
greater harm by getting itself blacklisted or blocked.

I can not phantom how we would allow such a new pattern of exploitable
behavior to persist and grow simply because we relaxed the methodology
we had in IPv4 based SMTP systems in the name of one way only
communications IPv6 system.

--
Sincerely

Hector Santos, CTO
http://www.santronics.com
http://santronics.blogspot.com
Frank Ellermann
2008-04-16 18:46:14 UTC
Permalink
"Tony Finch" wrote:

> I doubt that it makes sense to accept email from
> ***@ipv6.l.google.com on a system that can only
> communicate with IPv4 addresses.

In stark contrast to Ned's view I think that you
MUST reject such mails - unless you can guarantee
delivery without auto-response (no NDR, no DSN,
no MDN, no vacation, no forward, in essence an
empty reverse-path, near to rewrite MAIL FROM:<>)

Same idea as in EAI, after a reject "the sender
can make another plan". After accepting it the
IPv6-only mail vanished in a black hole for all
non-trivial cases.

Frank
Sabahattin Gucukoglu
2008-04-16 21:30:02 UTC
Permalink
Hi Frank,

On 16 Apr 2008 at 20:46, Frank Ellermann <***@gmail.com> said:

> "Tony Finch" wrote:
>
> > I doubt that it makes sense to accept email from
> > ***@ipv6.l.google.com on a system that can only
> > communicate with IPv4 addresses.
>
> In stark contrast to Ned's view I think that you
> MUST reject such mails - unless you can guarantee
> delivery without auto-response (no NDR, no DSN,
> no MDN, no vacation, no forward, in essence an
> empty reverse-path, near to rewrite MAIL FROM:<>)

No, I don't agree. Your only real obligation is to ensure that your
output relay doesn't attempt a delivery and so waste resources when it
can't do it by simply guaranteeing that IPv6 hosts aren't considered in
email routing at time of delivery (EG worst case is a double-bounce
listing "No data" as reason because the resolver routines have ignored the
IPv6 addresses, if double-bounces were enabled - and they should be!).
That doesn't mean not accepting mail from IPv6-only hosts, any more than
it means not accepting mail from an invalid mailbox. IMHO, it's your
responsibility to ensure that mail can and will be accepted and to make
sure that it will be delivered so that the minimal number of DSNs/whatever
have to be generated to accomodate your configuration problems under
whatever circumstance. It is less wise to depend on a sender check that
doesn't make sense semantically (there never has been and never will be a
requirement in a spec enforcing it, and for good reason, even if it makes
sense for policy) and which is only really useful as a feeble antispam
check nowadays anyway in these days of deliberate DSN disposal.

> Same idea as in EAI, after a reject "the sender
> can make another plan". After accepting it the
> IPv6-only mail vanished in a black hole for all
> non-trivial cases.

Cheers,
Sabahattin

- --
Sabahattin Gucukoglu <mail<at>sabahattin<dash>gucukoglu<dot>com>
Address harvesters, snag this: ***@yamta.org
Phone: +44 20 88008915
Mobile: +44 7986 053399
http://sabahattin-gucukoglu.com/
John C Klensin
2008-04-16 22:12:22 UTC
Permalink
And which of the two of you did I hear volunteer to start
writing a coherent and unified "best practices" I-D? Please
take this off the list and start writing.

john


--On Wednesday, 16 April, 2008 22:30 +0100 Sabahattin Gucukoglu
<***@sabahattin-gucukoglu.com> wrote:

>
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Hi Frank,
>
> On 16 Apr 2008 at 20:46, Frank Ellermann
> <***@gmail.com> said:
>
>> "Tony Finch" wrote:
>>
>> > I doubt that it makes sense to accept email from
>> > ***@ipv6.l.google.com on a system that can only
>> > communicate with IPv4 addresses.
>>
>> In stark contrast to Ned's view I think that you
>> MUST reject such mails - unless you can guarantee
>> delivery without auto-response (no NDR, no DSN,
>> no MDN, no vacation, no forward, in essence an
>> empty reverse-path, near to rewrite MAIL FROM:<>)
>
> No, I don't agree. Your only real obligation is to ensure
> that your output relay doesn't attempt a delivery and so
> waste resources when it can't do it by simply guaranteeing
> that IPv6 hosts aren't considered in email routing at time of
> delivery (EG worst case is a double-bounce listing "No data"
> as reason because the resolver routines have ignored the IPv6
> addresses, if double-bounces were enabled - and they should
> be!). That doesn't mean not accepting mail from IPv6-only
> hosts, any more than it means not accepting mail from an
> invalid mailbox. IMHO, it's your responsibility to ensure
> that mail can and will be accepted and to make sure that it
> will be delivered so that the minimal number of DSNs/whatever
> have to be generated to accomodate your configuration problems
> under whatever circumstance. It is less wise to depend on a
> sender check that doesn't make sense semantically (there
> never has been and never will be a requirement in a spec
> enforcing it, and for good reason, even if it makes sense for
> policy) and which is only really useful as a feeble antispam
> check nowadays anyway in these days of deliberate DSN disposal.
>
>> Same idea as in EAI, after a reject "the sender
>> can make another plan". After accepting it the
>> IPv6-only mail vanished in a black hole for all
>> non-trivial cases.
>
> Cheers,
> Sabahattin
>
> - --
> Sabahattin Gucukoglu
> <mail<at>sabahattin<dash>gucukoglu<dot>com> Address
> harvesters, snag this: ***@yamta.org
> Phone: +44 20 88008915
> Mobile: +44 7986 053399
> http://sabahattin-gucukoglu.com/
>
>
> -----BEGIN PGP SIGNATURE-----
> Version: PGP 8
> Comment: QDPGP - http://community.wow.net/grt/qdpgp.html
>
> iQA/AwUBSAZv2iNEOmEWtR2TEQLidgCgk0IXZEEBqCfv9cXv1S652LVYTiUAn1
> bT wv9u+hrPwyAmpqq1p98Rkph6
> =75hu
> -----END PGP SIGNATURE-----
>
Frank Ellermann
2008-04-17 00:06:41 UTC
Permalink
John C Klensin wrote:

> which of the two of you did I hear volunteer to start
> writing a coherent and unified "best practices" I-D?

| ideally someone with some of that experience first-hand

> Please take this off the list and start writing.

Nothing to do from my POV:

| If an SMTP server has accepted the task of relaying the
| mail and later finds that the destination is incorrect
| or that the mail cannot be delivered for some other
| reason, then it MUST construct an "undeliverable mail"
| notification message and send it to the originator of
| the undeliverable mail (as indicated by the reverse-
| path).
[...]
| When the receiver-SMTP accepts a piece of mail (by
| sending a "250 OK" message in response to DATA), it is
| accepting responsibility for delivering or relaying the
| message. It must take this responsibility seriously.
| It MUST NOT lose the message for frivolous reasons,
| such as because the host later crashes or because of a
| predictable resource shortage.

If you would mean something else you would have written
something else, and I made sure that this isn't the case.

"My network is IPvX and can't do IPvNOTX" is predictable
under normal circumstances as in Arnt's example => your
SMTP did the right thing when it rejected IPv6-only mail.

Frank
Loading...