At Thu, 3 Jul 2008 17:35:56 -0400,
"Hemant Singh (shemant)" <[EMAIL PROTECTED]> wrote:
> Will something like this work for you - we have replaced "change" with
> "clarification".
>
> [The source of an ND message is no longer used for on-link
> determination, which is a clarification of bullet four of on-link
> definition in Terminology section of [RFC4861].]
>
> or
>
> [The source of an ND message is no longer used for on-link
> determination, which is a clarification of on-link definition in
> Terminology section of [RFC4861].]
I object to this type of change (I have an alternate proposal. See
the end of this message).
> I agree with you, no implementations have actually interpreted this
> source address rule, but when folks like David notice the bug, folks
> quote the definition of on-link in Terminology section of RFC4861. That
> is why we thought of adding this line to our doc.
First off, I believe we should be more careful before "deprecating"
this rule:
- any Neighbor Discovery message is received from
the address.
As an implementor, I've been aware of the non-trivial flavor of this
on-link condition, and have noticed it creates tricky corner cases.
But I've always thought it's intentional, rather than a "bug".
Although I was not 100% sure in which case this rule is expected to be
used, I've imagined it might be useful in a router-less network (as we
briefly discussed in a different thread) or some NBMA network.
BSD variants have in fact supported this behavior for years: I've just
tested this with a FreeBSD 7.0 box and confirmed it (that is, if that
host receives an NS from an address that is not covered by "on-link"
prefixes advertised by RAs, it will create a specific neighbor cache
entry for that address). I've also quickly checked that Linux
(seemingly) supports this behavior, too.
I also suspect there may even be a TAHI test item that requires this
behavior (since it's tricky, and TAHI tests check tricky behaviors "by
definition":-). If my guess is correct, there will be other
implementations that support this behavior to qualify for an "IPv6
ready logo" or something.
Now that I've seen the "inventors" of the neighbor discovery protocol
say it's a mistake and that I've also been wondering for what purpose
this rule is expected to be useful, I'd not necessarily be objecting
to the idea of deprecating this rule. But since this will affect
(potentially many) existing implementations, this should be more
carefully and explicitly discussed with the implementors who have
already supported the behavior. Perhaps we could have this discussion
when we want to revise RFC4861 to the full STD, but it should not be
done in part of a branch thread on a derivative "clarification"
document.
(BTW, I've seen a "security" concern on this behavior in a different
thread. I was not sure about whether it's a mere FUD or it has a
really serious new security implication, due to the lack of details,
but in any event I'd not buy that argument in this context. Since ND
is a link-local protocol, any attack including this one must be
performed within the same link as the victim. And once we consider
such a hostile environment, we already know the neighbor discovery as
a whole is just vulnerable to many serious attacks. If we want to
counter this situation, we must deploy SEND; simply deprecating one
minor corner case doesn't help).
Now, going back to the wording of the "subnet model" document, I
suggest the following change to reflect this discussion:
From:
In addition to the Prefix List, individual addresses are on-link if
they are the target of a Redirect Message indicating on-link, or the
source of a valid Neighbor Solicitation or Neighbor Advertisement
message. Note that Redirect Messages can also indicate an address is
off-link. Individual address entries can be expired by the Neighbor
Unreachability Detection mechanism.
To:
Section 2 of [RFC4861] defines the complete list of cases where an
address is considered on-link. Note, in particular, that Redirect
Messages can also indicate an address is off-link. Individual
address entries can be expired by the Neighbor Unreachability
Detection mechanism.
The key intent of the proposed change is to avoid the explicit
duplicate of the conditions. So, even if we eventually make a
consensus on whether to deprecate any "on-link" conditions described
in RFC4861, probably in a context of revising the RFC, it will be less
likely that some implementors naively implement the would-be-obsolete
rule by simply referring to the "subnet model" document. I also
believe this approach is generally desirable because this document
just tries to clarify some subtle points of RFC4861, rather than
making a substantial change to it.
---
JINMEI, Tatuya
Internet Systems Consortium, Inc.
--------------------------------------------------------------------
IETF IPv6 working group mailing list
[email protected]
Administrative Requests: https://www.ietf.org/mailman/listinfo/ipv6
--------------------------------------------------------------------