NAME

MN-2-1-2-3-001 - Sending CoT by reverse tunneling (after receiving the tunneled CoTI)


TARGET

Host


TOPOLOGY

                    
                                  |
                                 HAcn     CN0     NUTZ
                                  |        |        |
                     -----+-------+--------+--------+------- LinkZ
                          |
                          R2              CN0Y    NUTY
                          |                |        |
                     -----+-------+--------+--------+------- LinkY
                                  |
                                  R1      CN0X    NUTX
                                  |        |        |
             -----+-------+-------+--------+--------+------- LinkX
                  |       |
                 HA1     HA0    Node0     CN00    NUT0
                  |       |       |        |        |
    --------------+-------+-------+--------+--------+------- 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 CN0 home link
HA0(Link0) 3ffe:501:ffff:100:200:ff:fe00:a0a0  
HA1(Link0) 3ffe:501:ffff:100:200:ff:fe00:a1a1  
Node0(Link0) 3ffe:501:ffff:100:200:ff:fe00:a3a3  
R1(LinkX) 3ffe:501:ffff:102:200:ff:fe00:a4a4  
R2(LinkY) 3ffe:501:ffff:103:200:ff:fe00:a6a6  
CN0(LinkZ) 3ffe:501:ffff:104:200:ff:fe00:a8a8  
HAcn(LinkZ) 3ffe:501:ffff:104:200:ff:fe00:aaaa  


INITIALIZATION

 1. Selection Option
    - IPsec Support between MN and HA: YES or NO
    - Route Optimization support: YES
 2. Position of Mobile Node
                    
       HA0     NUT0     R1      R2     CN0     HAcn
        |       |       |       |       |       |
        | ----> |       |       |       |       |  1.Router Advertisement
        |       |       |       |       |       |
        |      NUTX     |       |       |       |
        |       |       |       |       |       |
        |       | <---- |       |       |       |  2.Router Advertisement
        | <---- |       |       |       |       |  3.Neighbor Solicitations
        |       |       |       |       |       |  4.(no reply:3 seconds)
        |       |       |       |       |       |
        | <---- |       |       |       |       |  5.Binding Update
        | ----> |       |       |       |       |  6.Binding Acknowledgement
        |       |       |       |       |       |
                    
        1. Send Router Advertisement. (HA0 -> HA0_allnode_multi)
        2. Send Router Advertisement. (R1 -> R1_allnode_multi)
        3. Receive Neighbor Solicitations. (NUT0 -> HA0)
        4. (no reply)
            # Wait during a maximum of 3 seconds(RFC2461).
        5. Receive Binding Update to HA0. (NUTX -> HA0)
        6. Send Binding Acknowledgement. (HA0 -> NUTX)


TEST PROCEDURE

                    
       HA0     NUT0     R1      R2     CN0     HAcn
        |       |       |       |       |       |
        | ====> | <-------------------- |       |  1.ICMP Echo Request
        |       |       |       |       |       |
        | <==== | --------------------> |       |  2.Home Test Init
        |       | --------------------> |       |  3.Care-of Test Init
        |       | <-------------------- |       |  4.Care-of Test
        | ====> | <-------------------- |       |  5.Home Test
        |       |       |       |       |       |
        | <==== | --------------------> |       |  6.ICMP Echo Reply
        |       |       |       |       |       |
        |       | --------------------> |       |  7.Binding Update
        |       | --------------------> |       |  8.ICMP Echo Reply
        |       |       |       |       |       |
#-------------------------------------------------------------------------------
#       |       |       |       |       | <---- |  9-1.Router Advertisement
#       |       |       |       |       |       |
#       |       |       |       |      CN0Y     |
#       |       |       |       |       |       |
#       |       |       |       | ----> |       |  9-2.Router Advertisement
#       |       |       |       |       | ----> |  9-3.Neighbor Solicitations
#       |       |       |       |       |       |  9-4.(no reply:3 seconds)
#       |       |       |       |       |       |
#       |       |       |       |       | ----> |  9-5.Binding Update
#       |       |       |       |       | <---- |  9-6.Binding Acknowledgement
#-------------------------------------------------------------------------------
        |       |       |       |       |       |
        | ====> | <-------------------- |       | 10. Care-of Test Init
        | <==== | --------------------> |       | 11. Care-of Test(*1)
        |       |       |       |       |       |
        |       |       |       |       |       |
                    
        1. Send tunneled ICMP Echo Request. (out: HA0 -> NUTX, in: CN0 -> NUT0)
        2. Receive reverse tunneled Home Test Init. 
                                    (out: NUTX -> HA0, in: NUT0 -> CN0)
        3. Receive Care-of Test Init. (NUTX -> CN0)
        4. Send Care-of Test. (CN0 -> NUTX)
        5. Send tunneled Home Test. (out: HA0 -> NUTX, in: CN0 -> NUT0)
        6. Receive reverse tunneled ICMP Echo Reply or [8]. 
                                    (out: NUTX -> HA0, in: NUT0 -> CN0)
        7. Receive Binding Update to CN0. (NUTX -> CN0)
        8. [6] or Receive ICMP Echo Reply. (NUTX -> CN0)
            # Home Address destination option is included.
#-------------------------------------------------------------------------------
#       9-1. Send Router Advertisement. (HAcn -> HAcn_allnode_multi)
#       9-2. Send Router Advertisement. (R2 -> R2_allnode_multi)
#       9-3. Receive Neighbor Solicitations. (CN0 -> HAcn)
#       9-4. (no reply)
#           # Wait during a maximum of 3 seconds(RFC2461).
#       9-5. Receive Binding Update to HA0. (CN0Y -> HAcn)
#       9-6. Send Binding Acknowledgement. (HAcn -> CN0Y)
#-------------------------------------------------------------------------------
       10. Send tunneled Care-of Test Init. (out: HA0->NUTX, in: CN0Y->NUT0)
       11. Receive reverse tunneled care-of Test. (out: NUTX->HA0, in: NUT0->CN0Y)
                    
        Packet Format is:
                    
          10.Care-of Test Init
          11.Care-of Test
                    


JUDGEMENT

 (*1) PASS: HA0 receives the Care-of Test by reverse tunneling.
            Then, check whether this packet fills all of the following.
             - The Source Address(outer) is set to primary care-of address.
             - The Destination Address(outer) is set to HA address.
             - The Destination Address(inner) is set to the Source Address(inner)
               of Care-of Test Init[10]. 
             - The Source Address(inner) is set to home address.
             - The Type2 routing header option is not included.
             - The Home Address destination option is not included.
                    


REFERENCE

                    
(draft-ietf-mobileip-ipv6-24.txt)
                    
6.1 Mobility Header
                    
   The Mobility Header is an extension header used by mobile nodes,
   correspondent nodes, and home agents in all messaging related to the
   creation and management of bindings.  The subsections within this
   section describe the message types that may be sent using the
   Mobility Header.
                    
   Mobility Header messages MUST NOT be sent with a type 2 routing
   header, except as described in Section 9.5.4 for Binding
   Acknowledgement.  Mobility Header messages also MUST NOT be used with
   a Home Address destination option, except as described in Section
   11.7.1 and Section 11.7.2 for Binding Update.  Binding Update List or
   Binding Cache information (when present) for the destination MUST NOT
   be used in sending Mobility Header messages.  That is, Mobility
   Header messages bypass both the Binding Cache check described in
   Section 9.3.2 and the Binding Update List check described in Section
   11.3.1 which are normally performed for all packets.  This applies
   even to messages sent to or from a correspondent node which is itself
   a mobile node.
                    
9.4.2 Receiving Care-of Test Init Messages
                    
   Upon receiving a Care-of Test Init message, the correspondent node
   verifies the following:
                    
   o  The packet MUST NOT include a Home Address destination option.
                    
   Any packet carrying a Care-of Test Init message which fails to
   satisfy all of these tests MUST be silently ignored.
                    
   Otherwise, in preparation for sending the corresponding Care-of Test
   Message, the correspondent node checks that it has the necessary
   material to engage in a return routability procedure in the manner
   described in Section 9.4.1.
                    
   Section 9.4.4 specifies further processing.
                    
9.4.4 Sending Care-of Test Messages
                    
   The correspondent node creates a care-of nonce and uses the current
   nonce index as the Care-of Nonce Index.  It then creates a Care-of
   Test message (Section 6.1.6) and sends it to the mobile node at the
   latter's care-of address.