# NAME

MoveFromForeignToForeign - MN detects movement from foreign to foreign

# TARGET

    Host

# SYNOPSIS

    MoveFromForeignToForeign.seq [-tooloption ...] -pkt MN_Common.def

>     -tooloption: v6eval tool option

# TOPOLOGY

                                          |
                                          R       TN
                                          |       |
                                  --------+-------+--------------- LinkZ

                                          |
                                          R2             NUT2
                                          |               |
                                  --------+---------------+------- LinkY

                                          |       |
                                          HA2     R1     NUT1
                                          |       |       |
                                  --------+-------+-------+------- LinkX

                              |           |
                 NUT0        HA1          HA0
                  |           |           |
    Link0 --------+-----------+-----------+-----------------------

> `Link0` | `3ffe:501:ffff:100::/64` | `home link`
> `LinkX` | `3ffe:501:ffff:102::/64` | ``
> `LinkY` | `3ffe:501:ffff:103::/64` | ``
> `LinkZ` | `3ffe:501:ffff:104::/64` | ``
> `HA0(Link0)` | `3ffe:501:ffff:100:200:ff:fe00:a1a1/64` | ``
> `HA1(Link0)` | `3ffe:501:ffff:100:200:ff:fe00:a2a2/64` | ``
> `HA2(LinkX)` | `3ffe:501:ffff:102:200:ff:fe00:a3a3` | ``
> `R1(LinkX)` | `3ffe:501:ffff:102:200:ff:fe00:a4a4` | ``
> `R2(LinkY)` | `3ffe:501:ffff:103:200:ff:fe00:a5a5` | ``
> `TN(LinkZ)` | `3ffe:501:ffff:104:200:ff:fe00:a6a6` | ``

# TEST PROCEDURE

    MN detects movement from foreign to foreign

            HA0    NUT0     R1      R2
            |       |       |       |
            | ----> |       |       | RA
            |      NUT1     |       |
            |       | <---- |       | RA
            | <---- |       |       | Binding Update (*1)
            | ----> |       |       | Binding Acknowledgement
            |      NUT2     |       |
            |       | <------------ | RA
            | <---- |       |       | Binding Update (*2)
            | ----> |       |       | Binding Acknowledgement
            |      NUT1     |       |
            |       | <---- |       | RA
            | <---- |       |       | Binding Update (*3)
            | ----> |       |       | Binding Acknowledgement
            |      NUT2     |       |
            |       | <------------ | RA
            | <---- |       |       | Binding Update (*4)
            | ----> |       |       | Binding Acknowledgement

# JUDGEMENT

    (*1) PASS: HA0 receives Binding Update

    (*2) PASS: HA0 receives Binding Update

    (*3) PASS: HA0 receives Binding Update

    (*4) PASS: HA0 receives Binding Update

# REFERENCE

    draft-ietf-mobileip-ipv6-20.txt

    11.5 Movement

    11.5.1 Movement Detection

       The primary movement detection mechanism for Mobile IPv6 defined in
       this section uses the facilities of IPv6 Neighbor Discovery,
       including Router Discovery and Neighbor Unreachability Detection.
       The mobile node SHOULD supplement this mechanism with other
       information whenever it is available to the mobile node (e.g., from
       lower protocol layers).  The description here is based on the
       conceptual model of the organization and data structures defined by
       Neighbor Discovery [12].

       Mobile nodes SHOULD use Router Discovery to discover new routers and
       on-link subnet prefixes; a mobile node MAY send Router Solicitations,
       or MAY wait for unsolicited (periodic) multicast Router
       Advertisements, as specified for Router Discovery [12].  Based on
       received Router Advertisements, a mobile node maintains an entry in
       its Default Router List for each router, and an entry in its Prefix
       List for each subnet prefix that it currently considers to be
       on-link.  Each entry in these lists has an associated invalidation
       timer value.  While away from home, a mobile node typically selects
       one default router and one subnet prefix to use as the subnet prefix
       in its primary care-of address.  A mobile node MAY also have
       associated additional care-of addresses, using other subnet prefixes
       from its Prefix List.  The method by which a mobile node selects and
       forms a care-of address from the available subnet prefixes is
       described in Section 11.5.2.  The mobile node registers its primary
       care-of address with its home agent, as described in Section 11.7.1.