HA_3_1_12 - Valid De-Registration A=0 (Lifetime=0 & CoA!=HoA)
Router
MN1X
|
--------+-------+------- Link1X
|
R1
|
--------+-------+--------------- Link1
|
NUT
|
--------+---------------+------- Link0
|
MN0
Link0 global 3ffe:501:ffff:100::/64 home link Link1 global 3ffe:501:ffff:101::/64 foreign link Link1X global 3ffe:501:ffff:1101::/64 foreign link R1 (Link1) global 3ffe:501:ffff:101::a1a1 ether 00:00:00:00:a1:a1 MN0 global 3ffe:501:ffff:100:200:ff:fe00:a2a2 home address MN1X global 3ffe:501:ffff:1101:200:ff:fe00:a2a2 care-of address
Check Link1 routing tableNUT (Link0) MN1X | | | <---- | Echo Request | ----> | Echo Reply | |
1. MN1X sends Echo Request 2. MN1X receives Echo Reply
home registrationNUT (Link0) MN1X | | | <---- | BU (SN=1, A=1, lifetime=0x0010) (SPI=0x101) | ----> | BA (SN=1) (SPI=0x102) | | | <---- | Echo Request w/ HaO | ----> | Echo Reply w/ RH | |
1. MN1X sends BU 2. MN1X receives BA 3. MN1X sends Echo Request w/ HaO 4. MN1X receives Echo Reply w/ RH
Check home de-registrationNUT (Link0) MN1X | | | <---- | BU (SN=2, A=0, lifetime=0) (SPI=0x101) | ----> | BA (SN=2) (SPI=0x102) (*1) | | | <---- | Echo Request w/ HaO | ----> | BE (status=1) (*2) | |
1. MN1X sends BU packet format is: Binding_Update_message_format_from_MN_to_HA_ESP.gif 2. MN1X receives BA (*1) packet format is: Binding_Acknowledgement_message_format_from_HA_toMN_ESP.gif 3. MN1X sends Echo Request w/ HaO 4. MN1X receives BE (*2) packet format is: Binding_Error_message_from_HA_to_MN.gif
(*1) PASS: MN1X receives BA (*2) PASS: MN1X receives BE
9.5.4 Sending Binding AcknowledgementsThe 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.
10.3.2 Primary Care-of Address De-RegistrationIf the Source Address field of the IPv6 header that carried the Binding Update does not contain a unicast address, the Binding Acknowledgement MUST NOT be sent, and the Binding Update packet MUST be silently discarded. Otherwise, the acknowledgement MUST be sent to the Source Address. Unlike the treatment of regular packets, this addressing procedure does not use information from the Binding Cache. However, a routing header is needed in some cases. If the Source Address is the home address of the mobile node, i.e., the Binding Update did not contain a Home Address destination option, then the Binding Acknowledgement MUST be sent to that address, and the routing header MUST NOT be used. Otherwise, the Binding Acknowledgement MUST be sent using a type 2 routing header which contains the mobile node's home address.
A binding may need to be de-registered when the mobile node returns home, or when the mobile node knows that it will soon not have any care-of addresses in the visited network.A Binding Update is validated and authorized in the manner described in the previous section. This section describes the processing of a valid Binding Update that requests the receiving node to no longer serve as its home agent, de-registering its primary care-of address.To begin processing the Binding Update, the home agent MUST perform the following test:o If the receiving node has no entry marked as a home registration in its Binding Cache for this mobile node, then this node MUST reject the Binding Update and SHOULD return a Binding Acknowledgement to the mobile node, in which the Status field is set to 133 (not home agent for this mobile node).If the home agent does not reject the Binding Update as described above, then it MUST delete any existing entry in its Binding Cache for this mobile node. Then, the home agent MUST return a Binding Acknowledgement to the mobile node, constructed as follows:o The Status field MUST be set to a value 0, indicating success.o The Key Management Mobility Capability (K) bit is set or cleared, and actions based on its value are performed as described in the previous section. The mobile node's home address is used as its new care-of address for the purposes of moving the key management connection to a new endpoint.o The Sequence Number field MUST be copied from the Sequence Number given in the Binding Update.o The Lifetime field MUST be set to zero.o The Binding Refresh Advice mobility option MUST be omitted.In addition, the home agent MUST stop intercepting packets on the mobile node's home link that are addressed to the mobile node (Section 10.4.1).The rules for selecting the Destination IP address (and, if required, routing header construction) for the Binding Acknowledgement to the mobile node are the same as in the previous section. When the Status field in the Binding Acknowledgement is greater than or equal to 128 and the Source Address of the Binding Update is on the home link, the home agent MUST send it to the mobile node's link layer address (retrieved either from the Binding Update or through Neighbor Solicitation).