Re: MTS transparency and anonymity

Keith Moore <[email protected]>
Newsgroups gmane.ietf.rfc822
Message-ID <[email protected]>
>>>> if anonymous@[] doesn't quite work, there are similar alternatives
>>>> worth considering.  among them are: anonymous@[0.0.0.0],
>>>
>>> No, see RFC 3330; that's a local net.
>>
>> No, see RFC 3330; it's only intended for use as a _source_ address.
>> Trying to connect to the address fails on every platform I know of.
>
> Well, we're talking about a mailbox in the From field, which has
> semantics of a source if anything.

nice try.  but in practice if you try to connect to 0.0.0.0 you'll get 
an error, which is what we want to happen.

>> note that there are a lot fewer TCP/IP stacks in wide use than there
>> are mail-handling programs.  it's much easier to be confident about 
>> the
>> behavior of an IP stack.
>
> Maybe. I recall early implementations where 0.0.0.0 is a
> broadcast address; not all of those implementations have vanished.

I've never seen one.  I've seen lots of implementations where the lower 
bits of a subnet were the broadcast address, but that's a different 
issue.

> But that's really a digression from the issue, because no IPv4
> address has semantics of either "anonymous" or "not on the
> Internet"

nor, for that matter, does any domain.  but it's easier to find an IPv4 
address that has desirable properties than it is to find a domain that 
has them.

> I mentioned RFC 3330 because I looked through it in search of
> just such an invalid (IP) address, and could find none guaranteed
> to remain invalid.  And I looked rather closely at 0.0.0.0 and
> 127.0.0.1.

either 0.0.0.0 or 127.0.0.2 seems to work well as far as I can tell.

>> also, if it happens that a dns query for example.com yields ip address
>> X, it should not be assumed that [email protected] is equivalent to
>> user@[X].
>
> That's not the problem, nor even related to the problem.  The problem
> is that there may be an SMTP (or other mail protocol) server listening
> on the loopback address, and any local-part might be a valid one on
> some such system.

yes, it might happen.  but you can pick a local-part such that it's 
extremely unlikely to happen - less likely to happen than numerous 
other kinds of failures.  even so, 127.0.0.1 would not be my first 
choice.

>>>> anonymous@[127.255.255.255],
>>>
>>> No, also covered by RFC 3330.
>>
>> and if the host correctly implements RFC 3330 ("no addresses within
>> this block should ever appear on any network anywhere")
>
> Yes, the loopback connection is supposed to be internal to the IP
> implementation, and not be translated to any physical network.  That
> still doesn't have semantics of "anonymous" or of "nonexistent"; it
> has semantics of "here".

in practice, it has the semantics of "nowhere", or "you can't get there 
from here, no matter where 'here' is."

>> then this will
>> work just fine, as the host IP stack will return an error when the MTA
>> tries to connect to that address.
>
> You again seem to be focusing on non-replyability, which isn't the
> topic of draft-lilly-from-optional.

it's a backward compatibility issue.  MUAs and MTAs that know about the 
convention are not the problem, since it's easy for them to recognize 
such addresses and treat them accordingly. the problem is making this 
work with MUAs and MTAs that don't know about the convention.

>>>> anonymous@[::0],
>>>> and anonymous@[::1].
>>>
>>> Not valid RFC 2821 syntax.
>>
>> sounds like a bug in RFC 2821.
>
> You're certainly free to make a case for that. The legal 2821 versions
> of IPv6 domain literals would be something like [ipv6:::0]. Yes, it's
> ugly.

hey, I'd be fine with anonymous@[ipv6:::0]

or perhaps even anonymous@[no-such-network:]

>> but if the MTA strictly implements RFC
>> 2821 and rejects the message at RCPT time, that's perfectly okay.
>
> OK for what? For preventing a response (assuming that the message
> gets to a recipient)?  Again, that's not the subject of the draft.

no, but it's the most important technical constraint on the convention 
for an anonymous address.  see above.

>> it  doesn't really matter whether the MTA rejects the address because 
>> the
>> local-part doesn't exist or because the domain has an invalid syntax,
>> as long as it fails.
>
> Are you discussing transport, or the message format?

I'm discussing what it takes to make something like this work in 
practice.  anything that isn't reasonably compatible with existing 
MTAs/MSAs is a non-starter.

> So far as I can see, there is no perfectly clean solution to the
> issues covered in the draft.  However, simply making the From
> field optional -- while that may present some issues -- seems to
> have the least negative impact of the options considered (including
> syntax changes and extension, which present rather more serious
> backwards compatibility issues than making the field optional).

I disagree.  Too many things extract data from the From field.

>>> 2. peeking at the local-part is a layering violation unless
>>>    the domain is yours.
>>
>> for MTAs and UAs, yes.  not for humans.
>
> If there's something there indicating either a domain or a local-part
> within a domain, it fails to provide the desired semantics, viz.
> nothing (i.e. no mailbox).  That itself is not a showstopper, but in
> conjunction with the requirements for gateways, it presents some
> obstacles.

so use the loopback address domain literal.  then it's yours, and you 
can define anonymous addresses however you want :)
(not a serious proposal - but IMHO you're making way too big a deal of 
semantic issues based on strained reading of the specifications and 
giving far too little concern to interoperability with the installed 
base)
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.