Subject: Re: Questions about LL70

From: Bernard Aboba <[email-masked]>
Date: Mon, 31 May 2004 08:31:24 -0700 (PDT)

I've been reading the proposed text again, and as noted earlier, am not
sure what it means.  Some questions below:

"For these reasons, a host SHOULD NOT have both a routable address and an
IPv4 Link-Local address configured on the same interface.  When
a routable address is configured on an interface, the host SHOULD NOT
also assign an IPv4 Link-Local address on that interface."

What does it mean to have an address "configured" on an interface?  Can
a host send a packet with a source address if the address isn't
configured, and can a host receive a packet destined to an
address without it being configured? Does "assigning" an address to an
interface mean that this address is "configured"?

"  If a host finds that an interface that was previously configured with
   an IPv4 Link-Local address is now configured with a routable address,
   the host MUST use the routable address when initiating new
   communications, and MUST cease advertising the availability of the
   IPv4 Link-Local address through whatever mechanisms that address had
   been made known to others. "

This paragraph appears to define what it means to "configure" an
address:  the address is used when initiating new connections and when
advertising availability of an address.

" The host SHOULD continue to use the IPv4
Link-Local address for communications underway when the routable
address was configured, and MAY continue to accept new communications
addressed to the IPv4 Link-Local address."

According to this paragraph an address that is not "configured" can be
used as the source address of packets (for connections that were already
underway), and can be a destination address either for connections that
were already underway or for new connections.

"  If a host finds that a routable address is no longer configured on an
   interface, the host MAY identify a usable IPv4 Link-Local address (as
   described in section 2) and assign that address to the interface."

Does "assigning" a Link-Local address imply that this address is now
"configured" as described above?  I think the answer is yes -- this
address will be used as the source address as new connections.

Based on these observations, I'd recommend that the following definition
be added to the terminology section:

"Configured Address
   A configured address is an address that the host may use in
   initiating new connections, and also in advertising address
   availability.  A configured address is also an address on
   which a host is willing to receive packets."

Using this definition, the proposed text reads as follows:

"  Having addresses of multiple different scopes configured on an
   interface, with no adequate way to determine in what circumstances
   each address should be used, leads to complexity for applications and
   confusion for users.  A host with an address on a link can
   communicate with all other devices on that link, whether those
   devices use Link-Local addresses, or routable addresses.  For these
   reasons, a host SHOULD NOT have both a routable address and an IPv4
   Link-Local address configured on the same interface.  When
   a routable address is configured on an interface, the host SHOULD NOT
   also configure an IPv4 Link-Local address on that interface.

   The configuration of an IPv4 Link-Local address on an interface
   is based solely on the state of the interface, and is independent of
   any other protocols such as DHCP.  A host MUST NOT alter its behavior
   and use of other protocols such as DHCP because the host has configured
   an IPv4 Link-Local address to an interface.

   If a host finds that an interface that was previously configured with
   an IPv4 Link-Local address is now configured with a routable address,
   the host MUST use the routable address when initiating new
   communications, and MUST cease advertising the availability of the
   IPv4 Link-Local address through whatever mechanisms that address had
   been made known to others.  The host SHOULD continue to use the IPv4
   Link-Local address for communications underway when the routable
   address was configured, and MAY continue to accept new communications
   addressed to the IPv4 Link-Local address.  Ways in which a routable
   address might be configured for the interface include:

   * Manual configuration
   * Address assignment through DHCP
   * Roaming of the host to a network on which the host has a
        valid routable address

   If a host finds that a routable address is no longer configured on an
   interface, the host MAY identify a usable IPv4 Link-Local address (as
   described in section 2) and configure that address on the interface.
   Ways in which a routable address might no longer be configured on an
   interface include:

   * Removal of the address from the interface through manual
      configuration
   * Expiration of the lease on the address assigned through DHCP
   * Roaming of the host to a new network on which the address is no
        longer valid.

   Further discussion of address configuration and the detection of
   network attachment is provided in [DNAv4]."