Subject: new issue: [LL36] Combine and rework section 1.7 and 2.11 to be clearer

From: Erik Guttman <[email-masked]>
Date: Fri, 05 Dec 2003 16:42:16 +0100

We need to evaluate whether to make this change.  NOTE: TEXT IS NEEDED,
please contribute some.

-----------------------------------------------------------------------

Description of Issue  Combine and rework section 1.7 and 2.11 to be clearer
Submitter Name  Ralph Droms
Submitter Email Address  [email-masked]
Date first submitted  15.10.03
Reference
Comment Type ['T'echnical | 'E'ditorial]  T
Priority ['S' Must fix | '1' Should fix | '2' May fix ]  1
Section  1.7
Rationale/Explanation of issue:

Seems to me the underlying issue is the interaction between v4LL and any
"working routable address" (a routable address that can be used for 
off-link communication). That is, I don't think it matters where the 
routable address comes from - whether it be DHCP, manual configuration, or 
some other mechanism - rather, the issue is how to get the interface to a 
state in which it can use a v4LL address when no working routable address 
is available Lengthy description of problem:

The way in which I would describe how a device uses v4LL would be to use 
the state of the interface itself as the basis for invoking v4LL. If an
interface does not have a working routable address, the device invokes 
v4LL for that interface. When the interface does have a working routable
address, v4LL is not used.

The issue of when to use v4LL is indirectly addressed in section 1.7 and
more directly in 2.11. I suggest combining 1.7 and 2.11 into a single
section that:

* states the conditions under which v4LL is used (paraphrasing what I wrote
in the previous paragraph)
- based on state of interface
- defines "working routable address"
- v4LL used when no working routable address is available
* gives pointers to other documents, such as draft-ietf-dhc-dns-ipv4-01.txt,
that define how to determine if an interface has a working routable address
* points out the it is an implementation detail for the protocol software to
monitor the state of the interface and invoke v4LL as appropriate
* emphasizes that v4Ll has no effect on the use of other configuration
mechanism

Requested Change:

<TEXT IS NEEDED!>

---

From: "John C. Welch" <[email-masked]>
Date: Fri, 05 Dec 2003 11:15:44 -0600

> address, v4LL is not used.

Clarify this line please: " When the interface does have a working routable
address, v4LL is not used."

Does "not used" mean effectively "turned off", as in there is no v4LL
address whatsoever, or does "not used" mean, "Not using a separate
169.254/16 address, and just using the working routable address"?

If it means the former, I'd say that's bad. If it means the latter, I'd say
that's good. In that case, I'd also suggest changing that line to read:

" When the interface does have a working routable address, a separate v4LL
address is not configured, and the working routable address is mapped over
as the v4LL address."

This is a change from my (much) earlier stance, but having used this
methodology for quite some time now, it is convenient, easy to understand
regardless of knowledge level, easy to explain regardless of the knowledge
level of the person you explain it to, (training and education are huge
parts of my career, so being able to easily and correctly explain something
matters), and it works well in the "real" world, (however you chose to
define it).

john

-- 
"It is not the critic who counts, not the one who points out how the strong
man stumbled or how the doer of deeds might have done them better. The
credit belongs to the man who is actually in the arena, whose face is marred
with sweat and dust and blood; who strives valiantly; who errs and comes
short again and again; who knows the great enthusiasms, the great devotions,
and spends himself in a worthy cause; who, if he wins, knows the triumph of
high achievement; and who, if he fails, at least fails while daring greatly,
so that his place shall never be with those cold and timid souls who know
neither victory nor defeat."
- Theodore Roosevelt

---

From: Ralph Droms <[email-masked]>
Date: Fri, 05 Dec 2003 12:44:45 -0500

Comments in line...

>169.254/16 address, and just using the working routable address"?

I mean that the interface has a routable address, and the v4LL mechanisms
are not invoked to assign a 169.254/16 address to the interface.

I don't understand the difference between the two alternatives you've
presented.  I also don't understand, from below, "and the working routable
address is mapped over as the v4LL address".

- Ralph

---

From: Robert Elz <[email-masked]>
Date: Sat, 06 Dec 2003 03:58:23 +0700

Date:        Fri, 05 Dec 2003 11:15:44 -0600
    From:        "John C. Welch" <[email-masked]>
    Message-ID:  <[email-masked]>

  | Clarify this line please: " When the interface does have a working routable
  | address, v4LL is not used."
  | 
  | Does "not used" mean effectively "turned off", as in there is no v4LL
  | address whatsoever, or does "not used" mean, "Not using a separate
  | 169.254/16 address, and just using the working routable address"?

What distinction are you trying to get at there?   I can't understand
that at all.   If there is no 169.254/16 address, there is no v4LL 
address, surely???

  | If it means the former, I'd say that's bad. If it means the latter, I'd say
  | that's good. In that case, I'd also suggest changing that line to read:
  | 
  | " When the interface does have a working routable address, a separate v4LL
  | address is not configured, and the working routable address is mapped over
  | as the v4LL address."

That is totally incomprehensible to me, what does "mapped over as" mean ?

kre

---

From: "John C. Welch" <[email-masked]>
Date: Fri, 05 Dec 2003 15:14:59 -0600

> address is mapped over as the v4LL address".

For example...I have a manually assigned IPv4 address:

172.16.245.21

If I ping my Unicast DNS name, I get that address. If I ping my
Zeroconf/Rendezvous name, "aurora.local" that address is what is used for
the ping as well.

john

-- 
"Kill one, terrify a thousand."
- Sun Tzu

---

From: "John C. Welch" <[email-masked]>
Date: Fri, 05 Dec 2003 15:20:15 -0600

> that at all.   If there is no 169.254/16 address, there is no v4LL

Well, if I look at Apple's implementation, which is right now, the major one
to look at, when an interface is configured, either manually, or via DHCP,
then that address is what shows up when you use the zeroconf protocols to
look at it. So if I use SSH to the zeroconf mDNS name, the non v4LL -
configured address is used here. So it would appear that what is being done
is that when an address is configured by a non-v4LL method, that address is
used for all zeroconf-method communications.

So it appears as though the system is simply saying, "okay, we have a
'proper' ip address, use that for all the other zeroconf stuff as well."

> That is totally incomprehensible to me, what does "mapped over as" mean ?

Working routable address is used as the v4LL address as well.

john

-- 
"I have not yet begun to fight."
- John Paul Jones (aboard the Bon Homme Richard),Sept. 1779

---

From: Robert Elz <[email-masked]>
Date: Sat, 06 Dec 2003 17:49:03 +0700

Date:        Fri, 05 Dec 2003 15:20:15 -0600
    From:        "John C. Welch" <[email-masked]>
    Message-ID:  <[email-masked]>

  | So it appears as though the system is simply saying, "okay, we have a
  | 'proper' ip address, use that for all the other zeroconf stuff as well."

That's just fine, this is what we want to happen - but the final part of
your sentence should be "use that for all the other stuff as well",
zeroconf has nothing whatever to do with it.

v4LL addresses are not something magic for zeroconf use - neither restricted
to be used by protocols defined here, nor required to be used by protocols
defined here - they're just a way of getting a limited use address when
nothing else is available.  Once obtained, they operate just like any other
address, given their limitations (totally unroutable).

  | Working routable address is used as the v4LL address as well.

No, a workable routable address cannot possibly be a v4LL address,
by definition, a LL address is not routable.

I suspect that you mean that you use a non-LL address in a secnario where
you migt have been imagining a LL address would be used - that's nothing
special, LL addresses have no magic extra properties (aside from being
able to be created by a node on its own) - once they exist, they do absolutely
nothing that any other address can't do equally as well (they are just
more restricted in with what they can communicate, because they can't be
routed).

It is always possible to use a wider scope address (1918, or global) instead
of a LL address in the v4 world (not so in v6, where some usages require the
use of LL addresses).

kre

---

From: "John C. Welch" <[email-masked]>
Date: Sat, 06 Dec 2003 22:14:37 -0600

> more restricted in with what they can communicate, because they can't be

<sigh>...yes robert I know that a LL address isn't magic. I was simply
saying that I like how Apple does things. It's convenient, it's handy, and
it makes more sense to me than either shutting the usage of Zeroconf
protocols entirely once a non v4LL address was configured, or configuring a
separate address for v4LL. The statement I was referring to was unclear as
to what it mean, and I really only wanted clarification of it.

That's all.

Really.

john

-- 
"The truth shall set you free."
U.S. Central Intelligence Agency Motto