Subject: [mobile-ip] Question on performing DAD for BU's

From: "Krishna Kumar" <[email-masked]>
Date: Thu, 6 Dec 2001 15:52:53 -0800

Hi Charlie,

I feel there is a small problem in the Draft 15 regarding the address used
for performing DAD.

1. Page 67 for BU processing says that DAD should be performed on the Link
Local Address.
2. Pg 94 says that : If some time elapses during which the mobile node has
no binding at the home agent, it might be possible for another node to
autoconfigure the mobile node's home address.

A new node 'X' can configure it's address either through autoconfiguration
(in which case #1 is sufficient), or by manual means. Since the address can
be configured manually, I feel the specification should be changed to state
that  DAD should be performed on the Link Local address and all Home
Addresses (if Prefix Length is > 0) based on different prefixes supported
by the Home Agent.

The reason is that the MN might configure a site local address as it's home
address and move to a foreign network. Before HA gets the BU, another node
'X' manually configures it's address to the site local address used by the
MN, and it succeeds. When HA gets the BU, it does a Neighbor Solicitation
on the Link Local Address, and since X has not configured that link local
address, it doesn't respond to the NS. Now packets meant for 'X' get
wrongly tunneled to the MN. The node X doesn't even need to take the same
site local address for this to fail, it can configure any other address
based on the prefixes supported and the interface identifier. In this case,
after the BU succeeds, any packets meant for this different address will
still be tunnelled wrongly by the HA to the MN since Prefix Length was
greater than zero. Hence I feel HA must perform DAD on all addresses (can
be done parallely and probably take almost the same time as it would take
for one DAD) if Prefix Length > 0.

Secondly, is it a good idea for Mobility to change the value of
RetransTimer to a smaller value like 0.5 seconds or smaller ? This means
faster handoff for the MN.  Otherwise the MN has to wait for
1.5*(RetransTimer*DupAddrDetectTransmits) = atleast 1.5 seconds before the
MN gets a response, and before it is allowed to send BU's to CN's. Reducing
this time ensures faster movement mechanism for the MN.

Thanks,

- KK

---

From: Vijay Devarapalli <[email-masked]>
Date: Thu, 06 Dec 2001 17:20:28 -0800

Hi KK,

I think this comes from RFC 2462 which says if you have stateless 
address configuration, its enough if you do duplicate address 
detection on just the link local address. the other addresses are 
a MAY.

heres the relevant text from RFC 2462, section 5.4

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

      - Each individual unicast address SHOULD be tested for uniqueness.
        However, when stateless address autoconfiguration is used,
        address uniqueness is determined solely by the interface
        identifier, assuming that subnet prefixes are assigned correctly
        (i.e., if all of an interface's addresses are generated from the
        same identifier, either all addresses or none of them will be
        duplicates). Thus, for a set of addresses formed from the same
        interface identifier, it is sufficient to check that the link-
        local address generated from the identifier is unique on the
        link. In such cases, the link-local address MUST be tested for
        uniqueness, and if no duplicate address is detected, an
        implementation MAY choose to skip Duplicate Address Detection
        for additional addresses derived from the same interface
        identifier.

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

And I guess the intention was that Mobile IPv6 did not want to 
specify anything in addition to what is there in RFC 2462.

and regarding more than prefix on the home link there is 
something specified in draft 15 for that. if the 'S' bit in the
BU is set, the Home Agent defends just the home address 
specified in the home address option. if the 'S' bit is not set, 
the home agent forms a home address from each prefix on the home 
link and defends all of them. and even in this case, by RFC 2462, 
its enough if you do DAD from just the link local address if 
stateless address configuration is being used. 

one more thing, in your example below node 'X' MUST configure a 
link local address. it cant configure a site local address alone 
and not configure a link local address. it is there in some RFC, 
I forgot which.

regards
Vijay

---

From: Francis Dupont <[email-masked]>
Date: Fri, 07 Dec 2001 11:47:08 +0100

=> this is based on the common policy where DAD is only performed
on link-local addresses *and* no address uses a different interface ID.
If this policy is used any node connected to the home link (the MN at home,
the HA, etc) knows that so there is no problem. Perhaps this explanation
is missing but draft 15 is right.

Regards

[email-masked]

PS: in practice either the host can be on the home link and the interface ID
is built from the MAC address, either the host cannot be on the home link
and one may use 1, 2, ... as the interface ID for the home address (with
prefix length 0). So what you described should not happen.

---

From: Francis Dupont <[email-masked]>
Date: Fri, 07 Dec 2001 11:59:09 +0100

=> but 'X' MAY configure a link-local address with a different interface ID
(even if this is silly and confusing). To say that stateless address
autoconfiguration is used is not enough because of routers (so in the quote
there is an explicit assumption which applies to all nodes on the link:

        duplicates).

Regards

PS: there was a proposal to change DAD by a duplicate Interface-ID Detection
but it seems too hard to change RFC 2462 even if DIidD is strickly better.