Subject: Router Solicitations

From: Niklas Neumann <[email-masked]>
Date: Tue, 10 Jun 2008 11:25:09 +0200

Hello everybody,

I have a question regarding RFC 4861, Section 6.3.7. "Sending Router 
Solicitations". The RFC states that when a host is sending a Router 
Solicitation, "the IP source address is set to either one of the 
interface's unicast addresses or the unspecified address."

So my question is
1) when is a host supposed to set a unicast address and
2) what qualifies as "one of the interface's unicast addresses?"

For example: Is an implementation supposed to remember the last address 
an interface had and to include this address in a Router Solicitation 
after the host attaches to a new link?

Thanks in advance and best regards
   Niklas

-- 
Niklas Neumann - University of Goettingen, Institute of Informatics
http://user.informatik.uni-goettingen.de/~nneuman1/
Tel: +49 551 39-14419

---

From: JINMEI Tatuya / 神明達哉<[email-masked]>
Date: Thu, 12 Jun 2008 16:54:00 -0700

At Tue, 10 Jun 2008 11:25:09 +0200,

> 2) what qualifies as "one of the interface's unicast addresses?"

My understanding is:

1) whenever it has a valid unicast address (i.e., almost anytime)
2) any valid unicast addresses that are proved to be unique assigned
   to that interface

> after the host attaches to a new link?

No.

---
JINMEI, Tatuya
Internet Systems Consortium, Inc.

---

From: Niklas Neumann <[email-masked]>
Date: Mon, 16 Jun 2008 11:55:13 +0200

Thank you for your response. Just to make it perfectly clear to me:
How long is a unicast address valid?
- Until the host gets disconnected from the link?
- Until some timeout expires (e.g. Router Lifetime, DHCP Lifetime)?
- Some other trigger (e.g. L2 trigger)?

For example: If a host gets disconnected (e.g. wire gets pulled out) 
from a link and shortly after it gets reconnected. Does it send the 
Router Solicitation with its previous address or the unspecified address?

Thank you so much for answering.
Best regards
   Niklas

---

From: JINMEI Tatuya / 神明達哉<[email-masked]>
Date: Mon, 16 Jun 2008 13:47:20 -0700

At Mon, 16 Jun 2008 11:55:13 +0200,

> How long is a unicast address valid?

Until its valid lifetime expires.

> Router Solicitation with its previous address or the unspecified address?

Pure protocol-wise, the host would be supposed to perform duplicate
address detection again.  Once the uniqueness of the address is
(re)confirmed (normally in about 1 second), it can use that address as
the source of RS.  If it cannot wait for that period, it can send the
RS with an unspecified source address.

In practice, the behavior in such a case may vary among different
implementations, though.

---
JINMEI, Tatuya

---

From: Niklas Neumann <[email-masked]>
Date: Tue, 17 Jun 2008 12:05:21 +0200

>> - Some other trigger (e.g. L2 trigger)?

So link disconnection or other L2 triggers are not supposed to have any 
impact on the lifetime?

Thank you and have a nice week,
Niklas

---

From: "Ole Troan" <[email-masked]>
Date: Tue, 17 Jun 2008 21:19:43 +0200

> So link disconnection or other L2 triggers are not supposed to have any

not on address lifetime, but it is prudent to confirm address validity
on L2 reconnect.
the node might connect to a different link.

/ot

---

From: JINMEI Tatuya / 神明達哉<[email-masked]>
Date: Tue, 17 Jun 2008 12:23:57 -0700

At Tue, 17 Jun 2008 12:05:21 +0200,

No.

I don't know why you're so much worrying about such corner cases.
Maybe you have some specific implementation and/or situation in your
mind where the interpretation of these points matter much.  As a
separate followup indicated, you may want to explain your intended
scenario.  Otherwise the discussion would be superficial (e.g. I can
only say 'No' because it's the answer and I don't know the background
intent of the question).

p.s. I've not noticed this thread has been sent to v6ops.  The 6man
list ([email-masked]) would be a better place for this topic.

---
JINMEI, Tatuya

---

From: Niklas Neumann <[email-masked]>
Date: Wed, 18 Jun 2008 13:55:24 +0200

Thank you all for your answers. If I have more follow-up questions I 
will post to the 6man list.

The background were just some theoretical considerations that we made 
about the IPv6 autoconfiguration and its "durability".
The basic question was if a host would try to keep an address when using 
the autoconfiguration. To be precise: If it would would keep using a 
previously assigned address as its unicast source address in Router 
Solicitation requests even after being disconnected from and then 
reconnected to a link (or switched off and back on).
Compared to DHCP for example were the servers usually reassign the same 
IP-Address to hosts. I know that with IPv6 nobody will care about 
IP-Addresses so much anymore but if they are somewhat persistent with 
the autoconfiguration they would still provide some recognizability.

Best regards
   Niklas

---

From: "Benoit Boissinot" <[email-masked]>
Date: Wed, 18 Jun 2008 16:03:54 +0200

On Wed, Jun 18, 2008 at 1:55 PM, Niklas Neumann
<[email-masked]> wrote:
> IP-Addresses so much anymore but if they are somewhat persistent with the
> autoconfiguration they would still provide some recognizability.
>
>

During autoconfiguration, the IP address is usually constructed from
the MAC address. So for a given prefix
the address will be persistent (unless the MAC changes, do to a
hardware, or configuration change, which
should be quite rare).

regards,

Benoit

---

From: JINMEI Tatuya / 神明達哉<[email-masked]>
Date: Wed, 18 Jun 2008 12:17:39 -0700

At Wed, 18 Jun 2008 13:55:24 +0200,

> the autoconfiguration they would still provide some recognizability.

The key is to perform DAD whenever the address you're going to use may
have been (validly) used by someone else.  In that sense there's
nothing special for addresses configured via stateless
autoconfiguration (the discussion equally applies to addresses
obtained via DHCPv6 and ones manually configured).

---
JINMEI, Tatuya

---

From: Suresh Krishnan <[email-masked]>
Date: Fri, 20 Jun 2008 15:20:36 -0400

Hi Niklas,

> So link disconnection or other L2 triggers are not supposed to have any 

This really depends on the implementation you are talking about. If you 
are talking about a standard RFC4861/RFC4862 compliant node, it does not 
make a difference. But there is work ongoing in the ietf to change this. 
e.g. We are working in the dna working group to come up with a solution 
that updates standard neighbor discovery. In the dna solution, an L2 
trigger invalidates the address until it is verified to be still usable.
You can check out RFC4957 and 
http://tools.ietf.org/html/draft-ietf-dna-simple-00 if you would like 
more info on this work.

Thanks
Suresh