jamal wrote:

> I am assuming you have some form of configuration, no? You should only
> configure an IP address to be link local if you really mean it to be 
> so.

Typically, there is no user-configuration.

The 169.254.0.0./16 and FE80::0/8 IP ranges are used for so-called zero
configuration networking, where the idea is that no configuration is
necessary, but devices automatically pick a self-assigned address.
Beside PC's, you should think about devices without an interface to make
configuration changes at all (e.g. printers of HP, Lexmark and Epson,
the Roku soundbridge, etc.).


Jamal also wrote:
> Should we hard-code checks for RFC 1918 IPV4 addresses in the kernel? 
> After all, they are well defined by the IETF. The answer is no.

You make a valid argument here: that hard-coding IP address is bad (make
it less flexible).

To avoid possible confusion, we are not talking about RFC 1918 IPv4
addresses though (private use, a.k.a. "Unique Local Unicast"), but about
RFC 3927 IPv4 (self-assigned, a.k.a. "Link-Local Unicast"). Your
argument still holds for either range of course.

Scope can be used, and applications can be changed to require to set the
scope when configuring the IP link-local address. One may argue if this
is a big deal or not -- in lines of code it is not, but it would be
Linux-specific, and I personally like to see it done more or less the
same on all OSes. This is a matter of taste.


More importantly, the "scope" parameter does not seem appropriate for
the purpose of deciding to broadcast or unicast ARP replies.
The "scope" parameter, as I understand, gives the scope of an IP
addresses: interface-local, link-local, or global. (IPv6 also define
site-local and interface-local, but they are not used, and site-local is
deprecated now).

On the other hand, what it important with regard to RFC 3927 is not if
the IP address is link-local or not, but if it is self-assigned or not.
Or actually, if there is a change of an address conflict or not, since
that is the reason for the ARP broadcasting.

It seems to me that the scope does not convey that information, but
something which is slightly different: the uniqueness of the address
(globally unique, or only unique on a specific link).


> If one was to set the scope to be link local, would it work just fine? 

Fair question. I think it would work fine for 169.254.0.0 provided that
the applications are altered.

However, it will also broadcast other ARP replies, which is unnecessary.
If that breaks anything -- I do not know. I do not think it will break.
However, it clearly deviates from the behaviour defined in existing
standards, and I would strongly recommend only to deviate from existing
RFC standards if there is a very good reason to do so.

The only argument in favour of deviating from the standard seems to make
the kernel more configurable. To me as a networking person that is not a
convincing argument.


By the way, David posed an interesting question -- what *is* the "scope"
used for now? I could not find a clear answer with Google. Perhaps
someone on the list like to elaborate.

Regards,
Freek

-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to