Abstract:
A method is provided for use in a Mobile IP network in which it is determined whether a Mobile Node ( 10 ) in a visited network is reachable on a new claimed Care-of Address for the Mobile Node ( 10 ) using information relating to a pre-established cryptographic relationship between the Mobile Node ( 10 ) and an Access Router ( 20 ) of the visited network. It may be determined, through communication between a Home Agent ( 30 ) for the Mobile Node ( 10 ) in the Mobile Node  10 &#39;s home network and the Access Router ( 20 ), whether such a pre-established cryptographic relationship exists. The existence of such a pre-established relationship would indicate that the Mobile Node ( 10 ) is reachable on the claimed Care-of Address.

Description:
TECHNICAL FIELD 
       [0001]    The present invention relates to a method and apparatus for use in telecommunications network. In particular, the present invention relates to a method and apparatus for use in a Mobile IP network to determine whether a Mobile Node in a visited network is reachable on a new claimed Care-of Address for the Mobile Node. 
       BACKGROUND 
       [0002]    When the Internet was originally devised, hosts were fixed in location and there was implicit trust between users despite the lack of real security or host identification protocols, and this situation continued even upon wider uptake and use of the technology. There was little need to consider techniques for dealing with host mobility since computers were relatively bulky and immobile. 
         [0003]    With the revolution in telecommunications and computer industry in the early 1990&#39;s, smaller communication equipment and computers became more widely available and the invention of the World Wide Web, and all the services that emerged with it, finally made the Internet attractive for the average person. The combination of increasing usage of the network and mobile telecommunications created the need for secure mobility management in the Internet. 
         [0004]    Taking into account the above mobility management, the Mobile IP standard (C. Perkins, “IP Mobility Support for IPv4”, RFC 3220, IETF, 2002) and the Mobile IPv6 standard (D. Johnson, C. Perkins, J. Arkko, “Mobility Support in IPv6”, RFC3775, IETF, 2004) have been introduced. Extensions to the Mobile IPv6 standard have also been developed and standardised (e.g. see J. Arkko, C. Vogt, W. Haddad, “Enhanced Route Optimization for Mobile IPv6”, IETF, RFC 4866, May 2007). Together these specifications are planned to provide mobility support for the next generation Internet. 
         [0005]    An IP address describes a topological location of a node in the network. The IP address is used to route the packet from the source node to the destination. At the same time, the IP address is generally also used to identify the node, providing two different functions in one entity. This can be considered to be akin to a person responding with their home address when asked who they are. When mobility is also considered, the situation becomes even more complicated: since IP addresses act as host identifiers in this scheme, they must not be changed; however, since IP addresses also describe topological locations, they must necessarily change when a host changes its location in the network. 
         [0006]    With Mobile IP, the solution is to use a fixed home location providing a “home address” for the node. The home address both identifies the node and provides a stable location for it when it is at home. The current location information is available in the form of a care-of address, which is used for routing purposes when the node is away from home. 
         [0007]    Cellular networks provide roaming capabilities, where visited networks provide connectivity to roaming users. The traffic of roaming users may be tunnelled back to the home network or it may leave or be terminated in the visited network. Possible reasons for using home tunnelling include: the ability to charge at home; enabling policy control at home; having a mobility anchor at home; providing location privacy; and allowing for the possibility that servers providing user service are in the home network. Possible reasons for local breakout include: optimal routing; shorter (and hence cheaper) access to the Internet; and access to services provided locally in the visited network. 
         [0008]    The following two mechanisms for providing home tunnelling and optimal routing (local breakout) dynamically while being reachable at the same IP address are known:
       IP2, where route optimization is entirely network centric.   The Mobile IP standard, as mentioned above, where Mobile Nodes (MN) themselves send location update messages (Binding Updates, BU) to Correspondent Nodes (CN). Then Correspondent Nodes direct their traffic to the current location of the MN.       
 
         [0011]    While IP2 allows full control for the network to decide routing (including home tunnelling or route optimization), it is a complex system requiring IP2 to be implemented at the visited and home networks and also in the network of the CN. Its complexity makes it unsuitable for a number of purposes. 
         [0012]    Another form of route optimization (albeit a less powerful one) is the use of a locally-assigned IP address for communication by the MN instead of the home address. In this case, no specific mechanisms are needed to ensure direct routing between the CN and the MN; however, the transport session may break if the MN moves away. The MN may choose to initiate communication using a locally-assigned address at its own discretion. 
         [0013]    The Mobile IP standard will now be described in more detail with reference to  FIGS. 1 and 2  of the accompanying drawings. 
         [0014]    Mobile IP is a mechanism for maintaining transparent network connectivity to and from a Mobile Node (MN), such as a mobile terminal or telephone over an IP based network. Mobile IP enables a Mobile Node to be addressed by the IP address it uses in its home network (Home Address), regardless of the network to which it is currently physically attached. Therefore, ongoing network connections to and from a Mobile Node can be maintained even as the Mobile Node is moving from one subnet to the other. Mobile IP can be implemented using IP protocol version 4, IPv4 or IP protocol version 6, IPv6. IPv6 is generally preferred as IPv4 has a number of limitations in a mobile environment. The IPv6 protocol as such is specified in RFC 2460. 
         [0015]    In Mobile IPv6, each Mobile Node is always identified by its Home Address. While away from its home IP subnet (Home Subnet) a Mobile Node is also associated with a Care-of Address which indicates the Mobile Node&#39;s current location. The association of the Mobile Node&#39;s Home Address and the Care-of Address is known as Binding. A router in the Home Subnet, known as the Home Agent, maintains a record of the current Binding of the Mobile Node. The Mobile Node can acquire its Care-of Address through conventional IPv6 mechanisms called auto-configuration at the visited (or foreign) IP subnet. 
         [0016]    Any node with which a Mobile Node is communicating is referred to as a Correspondent Node. The Correspondent Node could itself be either mobile or stationary. 
         [0017]    There are two possible modes for communications between the Mobile Node and the Correspondent Node. The first mode, bidirectional tunnelling to/from the Home Agent, does not require Mobile IPv6 support from the Correspondent Node and is available even if the Mobile Node has not registered its current Binding with the Correspondent Node. The first mode is illustrated in  FIG. 1  of the accompanying drawings. IP packets from the Correspondent Node are routed to the Home Agent and then tunnelled to the Mobile Node. Packets to the Correspondent Node are tunnelled from the Mobile Node to the Home Agent (“reverse tunnelled”) and then routed normally from the Home Network to the Correspondent Node. In this mode, the Home Agent intercepts any IPv6 packets addressed to the Mobile Node&#39;s Home Address and each intercepted packet is tunnelled to the Mobile Node&#39;s primary Care-of Address. This tunnelling is performed using IPv6 encapsulation. 
         [0018]    The second mode, referred to as ‘route optimization’, requires the Mobile Node to register its current binding at the Correspondent Node. The second mode is illustrated in  FIG. 2  of the accompanying drawings. Packets from the Correspondent Node can be routed directly to the Care-of Address of the Mobile Node. When sending a packet to an IPv6 destination, the Correspondent Node checks its cached bindings for an entry for the packet&#39;s destination address. If a cached binding for this destination address is found, the node uses a new type of IPv6 routing header to route the packet to the Mobile Node by way of the Care-of Address indicated in this binding. 
         [0019]    In this regard, a routing header may be present as an IPv6 header extension, and indicates that the payload has to be delivered to a destination socket in some way that is different from what would be carried out by standard receiver host processing. Mobile IPv6 defines a new routing header variant, the type 2 routing header, to allow the packet to be routed directly from a Correspondent Node to the Mobile Node&#39;s care-of address. Use of the term “routing header” typically refers to use of a type 2 routing header. The Mobile Node&#39;s care-of address is inserted into the IPv6 Destination Address field. Once the packet arrives at the care-of address, the Mobile Node extracts the final destination address (equal to its home address) from the routing header, and delivers the packet to the appropriate socket as if the packet were addressed to the extracted address. 
         [0020]    The new routing header uses a different type than defined for “regular” IPv6 source routing, enabling firewalls to apply different rules to source routed packets than to Mobile IPv6. This routing header type (type 2) is restricted to carry only one IPv6 address and can only be processed by the final destination and not intermediate routers. 
         [0021]    All IPv6 nodes which process this routing header must verify that the address contained within is the node&#39;s own home address in order to prevent packets from being forwarded outside the node. The IP address contained in the routing header, since it is the mobile node&#39;s home address, must be a unicast routable address. 
         [0022]    Furthermore, if the scope of the home address is smaller than the scope of the care-of address, the mobile node must discard the packet. 
         [0023]    With route optimization, the Mobile Node registers its current binding at the Correspondent Node using a Binding Update message sent from the Mobile Node to the Correspondent Node (which the Correspondent Node acknowledges with a Binding Update Acknowledgement message). The Binding Update message contains as its destination address the address of the Correspondent Node. The source address of the message is the Care-of Address of the Mobile Node, whilst the home address of the Mobile Node is contained within a home address field of the message header. Route optimisation requires the inclusion of a routing header (a type 2 routing header) in the packet headers, indicating that the packets must be dealt with in a special way. 
         [0024]    In order to enhance security of the Optimised Routing process, a “proof-of-address” mechanism may be employed. One such mechanism requires that, prior to issuing a (first) Binding Update message, a roaming Mobile Node send to a Correspondent Node a first message (HoTI) to the Correspondent Node employing route optimisation and a second message (CoTI) not employing route optimisation. The second message travels via the Home Agent whilst the second does not. The Correspondent Node replies to the first message with a first part of a random number generated by the Correspondent Node, and replies to the second message with a second part of the random number. The Mobile Node will only receive both parts of the random number if it has given both a valid Care-of Address and a valid Home Address. When the Binding Update is subsequently sent to the Correspondent Node, the Mobile Node includes both parts of the random number in the message to prove ownership of the Care-of and Home Addresses. 
         [0025]    Once implemented, Route Optimisation allows the Mobile Node to send packets directly to the Correspondent Node. The Care-of Address is included as the source address in these “outgoing” packets. This is done by the Mobile IP protocol layer at the Mobile Node, which replaces the home address with the Care-of Address as the source address in outgoing packets. The Home Address is included in a further header field. The Mobile IP protocol layer at the Correspondent Node screens incoming mails by comparing the source addresses of the packets with Care-of Addresses held in its binding cache. If a match is found, the Care-of Address is replaced with the corresponding Home address, in the source address field, before passing the message to higher layers. Transit through the home network is thus avoided. 
         [0026]    Considering the reverse direction, packets from the Correspondent Node can be routed directly to the Care-of Address of the Mobile Node. When sending a packet to an IPv6 destination, the Correspondent Node checks its cached bindings for an entry for the packet&#39;s destination address. If a cached binding for this destination address is found, the node substitutes the destination address for the corresponding Care-of Address, whilst including the destination address (i.e. the Home address) in a further header field. Upon receipt of a packet at the Mobile Node, the Mobile IP protocol layer replaces the Care-of Address in the destination field with the home address of the Mobile Node. The packet is then passed to higher protocol layers. Again, transit through the home network is avoided. 
         [0027]    Routing packets directly to the Mobile Node&#39;s Care-of Address with ‘route optimization’ allows the shortest communications path to be used. It also eliminates congestion at the Mobile Node&#39;s Home Agent. In addition, the impact of any possible failure of the Home Agent or networks on the path to or from it is reduced. However, the possibility of ‘route optimization’ that MIPv6 provides does lead to a terminal centric solution, as the establishment of home address to care-of address bindings in the correspondent node is decided, initiated and executed by the mobile node itself. This does not allow network operators to influence whether traffic is tunnelled home or routed locally. For example, home networks have no influence if a particular piece of traffic is route via them or not. This is true even if the visited network fully co-operates with the home network in this regard. The simple use of a local IP address is also decided by the terminal. If (home) network control of route optimization is requested, the use of local addresses needs to be controlled too. 
         [0028]    The design of Mobile IPv6 did not include performing a care-of address (CoA) reachability test each time the mobile node (MN) updates its home agent (HA) with a new CoA. One possible reason for leaving such a test out of the specification is that with MIPv6 the focus is more on the route optimization (RO) mode, which involves performing a return routability (RR) procedure every seven minutes as long as the MN is located in a foreign network (while having ongoing session(s)). However, the RR procedure alone consists of exchanging four signalling messages (namely, HoTI/HoT and CoTI/CoT) between the MN and each CN. The RR procedure is followed by sending a binding update (BU) message to each CN to update it with the new MN&#39;s CoA (and probably receiving a binding acknowledgment (BA)). It follows that updating two CNs with the new CoA requires the MN to exchange at least ten mobility signalling messages after having updated its own HA with the new CoA, which in turn requires exchanging a BU/BA messages. In total, 12 signalling messages are needed before resuming the data packets exchange. After that, the MN needs to repeat the RR with each CN every 7 minutes. 
         [0029]    While the CoA reachability test is mandatory in the RO mode, it has been neglected when it comes to updating the HA. One reason advanced for this is that, in case of an attack, the HA will get a call (from someone or discover it by itself) and punish the attacker. Another reason could be considered to be avoiding increasing the burden of signalling messages on the MN, which is already burdened with the main task of actually exchanging data packets. 
         [0030]    On the other side, performing the same CoA reachability test on the HA side, prior to updating it with the new CoA, requires two additional mobility signalling. However, in order to be efficient, the CoA test must be repeated periodically as is the case with each CN. Otherwise a multi-homed MN can perform a successful CoA reachability test then update its HA with its new CoA then use another interface to launch a network flooding attack against the foreign network. In summary, this means a significant increase of signalling messages on the MN side. In order to avoid such scenario, it has been decided that the MN does not need a CoA reachability test when updating the HA. 
         [0031]    In order to cut the number of signalling messages, the enhanced mobile IPv6 RO mode (see J. Arkko, C. Vogt, W. Haddad, “Enhanced Route Optimization for Mobile IPv6”, IETF, RFC 4866, May 2007) has been designed and standardized. EMIPv6 relies on the cryptographically generated address (see T. Aura, “Cryptographically Generated Addresses”, IETF, RFC 3972, March 2005) to bootstrap a long lifetime bidirectional security association (BSA) between the MN and the CN instead of relying on routing properties to establish a temporary BSA as is the case in MIPv6 protocol. Consequently, EMIPv6 succeeds in substituting the RR with a CGA technique but at the expense of abandoning the protection against network flooding attack. In order to counter such threat without re-introducing the periodic RR, a defence mechanism based on establishing a cryptographic relationship (also know as a ‘symbiotic’ relationship) between the MN and the access router (AR) in the visited network has been recently introduced in W. Haddad, M. Naslund, “Using ‘Symbiotic’ Relationship to Repel Network Flooding Attack”, IETF, draft-haddad-mipshop-netflood-defense-00, December 2007; this will be referred to herein as the “NFD” protocol (Network Flooding Defence). 
         [0032]    The NFD protocol enables the visited network to repel a network flooding attack, which can be launched via using the RO mode. However, it does not provide any protection to the visited network in case the attack is launched via using the bidirectional tunneling (BT) mode where all data packets exchanged between the MN and the CN(s) are tunneled via the MN&#39;s HA. Furthermore, as the main goal in EMIPv6 was to cut the number of mobility signalling messages on the MN side as much as possible, it is not appropriate to clone a CoTI/CoT exchange between the MN and the HA prior to sending a BU message. In fact, doing that will make EMIPv6 no different than MIPv6 RO mode in case the MN is exchanging data packets with the CN and is constantly on the move. Note that the situation may become further aggravated when the MN is registering multiple CoAs with its HA. 
         [0033]    It is desirable to address the above-mentioned issues concerning the existing approaches. 
       SUMMARY 
       [0034]    According to a first aspect of the present invention there is provided a method for use in a Mobile IP network, comprising determining whether a Mobile Node in a visited network is reachable on a new claimed Care-of Address for the Mobile Node using information relating to a pre-established cryptographic relationship between the Mobile Node and an Access Router of the visited network. 
         [0035]    The method may comprise determining through communication between a Home Agent for the Mobile Node in the Mobile Node&#39;s home network and the Access Router whether such a pre-established cryptographic relationship exists, the existence of such a pre-established relationship indicating that the Mobile Node is reachable on the claimed Care-of Address. 
         [0036]    The method may comprise communicating the Care-of Address in a message from the Home Agent to the Access Router, for use at the Access Router in the determining of whether the Access Router has a pre-established cryptographic relationship with the Mobile Node. 
         [0037]    The method may comprise checking whether the Care-of Address is stored at the Access Router as a result of the pre-established relationship. 
         [0038]    The method may comprise communicating a link to a certificate for the Access Router in a Binding Update message from the Mobile Node to the Home Agent. 
         [0039]    The method may comprise sending a Binding Complete message from the Access Router to the Home Agent, wherein the Binding Complete message comprises the information relating to the pre-established relationship, and wherein the method comprises checking the information at the Home Agent as part of the determining of whether the Access Router has a pre-established cryptographic relationship with the Mobile Node. 
         [0040]    The Binding Complete message may be signed by the Access Router, and the method may comprise checking the signature of the Binding Complete message at the Home Agent as part of the determining of whether the Access Router has a pre-established cryptographic relationship with the Mobile Node. 
         [0041]    It may be that the Secure Neighbor Discovery, SeND, protocol is deployed in the visited network. 
         [0042]    An embodiment of the present invention is also applicable in a case where there are a plurality of new claimed Care-of Addresses for the Mobile Node, with each supposedly being associated with a corresponding pre-established cryptographic relationship between the Mobile Node and the Access Router. In such a case, a reachability test as described above in accordance with the invention may be performed in respect of fewer than all of, such as only one of, the pre-established cryptographic relationships. 
         [0043]    If the test against a certain number (e.g. one) of these fails, then the Mobile Node could be assumed to be a rogue node without performing any further tests. 
         [0044]    According to a second aspect of the present invention there is provided an apparatus for use as or in a node of a Mobile IP network, comprising means for determining whether a Mobile Node in a visited network is reachable on a new claimed Care-of Address for the Mobile Node using information relating to a pre-established cryptographic relationship between the Mobile Node and an Access Router of the visited network, or means for providing such information to enable such a determination to be made. The node may be the Mobile Node, the Access Router, or a Home Agent for the Mobile Node in the Mobile Node&#39;s home network. 
         [0045]    The apparatus may comprise means for determining through communication between a Home Agent for the Mobile Node in the Mobile Node&#39;s home network and the Access Router whether such a pre-established cryptographic relationship exists, the existence of such a pre-established relationship indicating that the Mobile Node is reachable on the claimed Care-of Address. The node may be the Access Router or the Home Agent. 
         [0046]    The apparatus may comprise means for receiving a Binding Complete message from the Access Router, the Binding Complete message comprising the information relating to the pre-established relationship, and further comprising means for checking the information as part of the determining of whether the Access Router has a pre-established cryptographic relationship with the Mobile Node. The node may be the Home Agent. 
         [0047]    The Binding Complete message may be signed by the Access Router, and the apparatus may comprise means for checking the signature of the Binding Complete message as part of the determining of whether the Access Router has a pre-established cryptographic relationship with the Mobile Node. The node may be the Home Agent. 
         [0048]    The apparatus may comprise means for sending a Binding Complete message to the Home Agent, the Binding Complete message comprising the information relating to the pre-established relationship. The node may be the Access Router. 
         [0049]    The apparatus may comprise means for signing the Binding Complete message. The node may be the Access Router. 
         [0050]    The apparatus may comprise means for communicating a link to a certificate for the Access Router in a Binding Update message from the Mobile Node to the Home Agent. The node may be the Mobile Node. 
         [0051]    According to a third aspect of the present invention, there is provided a program for controlling an apparatus to perform a method according to the first aspect of the present invention. 
         [0052]    The program may be carried on a carrier medium, where the carrier medium may be a storage medium or a transmission medium. 
         [0053]    According to a fourth aspect of the present invention, there is provided a storage medium containing a program according to the third aspect of the present invention. 
         [0054]    An embodiment of the present invention is applicable to the enhanced Mobile IPv6 route optimization mode. It addresses the lack of any care-of address reachability test on the home agent side, which was justified by poor non-technical arguments and to avoid imposing additional mobility signalling messages on the mobile node itself. It enables the home agent to test the reachability of the claimed care-of address in a new way, which addresses implicitly the multi-homing scenario and enables the foreign network to repel a flooding attack but without involving the mobile node in any signalling message exchange. 
         [0055]    An embodiment of the present invention aims to improve Mobile IPv6 protocol security by enabling an enhanced care-of address reachability test for the home agent. The main goals are to discourage a rogue mobile node from misleading its home agent to flood a targeted foreign network and to empower the latter to thwart this type of attack if launched at a later stage. 
         [0056]    As mentioned above, the two different modes in the Mobile IPv6 protocol for handling data packet exchange when the mobile node (MN) is located in a foreign network, bidirectional tunneling (BT) and route optimization (RO), have two commonalities. The first one is the mechanism used to update the HA after each IP handoff and requires the MN to send a binding update (BU) message to its HA immediately after configuring a care-of address (CoA). A second commonality is the HA&#39;s reaction upon receiving a valid BU message and can be described as a blind trust in the MN claim(s) regarding its new CoA(s). The common consequence is that the HA will always tunnel data packets to the MN&#39;s new location without conducting any reachability test on the new claimed CoA. 
         [0057]    An embodiment of the present invention aims to avoid the potential consequences of a lack of CoA reachability test on the HA side. For this purpose, an enhanced and seamless CoA test is introduced which makes launching a network flooding attack complicated enough to discourage a rogue MN from misleading its HA to flood a particular target. In addition, it empowers the targeted network to thwart such attack if launched at a later stage. 
         [0058]    An embodiment of the present invention introduces an enhanced and seamless CoA reachability test which has been designed to address uncertainties surrounding a potential threat in MIPv6 protocol. Consequently, the main goal is to improve MIPv6 overall security in a way which does not require a periodic exchange of signalling messages and does not involve the MN in the exchange. 
         [0059]    The suggested reachability test does not directly involve the MN and does not affect the HA&#39;s basic treatment of the BU message (as described in RFC 3775) nor does it increase the overall latency. An embodiment of the present invention allows the visited network to protect itself regardless of whether the MN  10  behaves properly in performing the CoA reachability test. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0060]      FIG. 1 , discussed hereinbefore, illustrates the bidirectional tunnelling mode of Mobile IP; 
           [0061]      FIG. 2 , also discussed hereinbefore, illustrates the route optimization mode of Mobile IP; 
           [0062]      FIGS. 3A to 3C  contain a schematic flowchart illustrating steps performed in an embodiment of the present invention; 
           [0063]      FIG. 4  is a message exchange diagram providing an overview of the messages exchanged during the steps of  FIGS. 3A to 3C ; and 
           [0064]      FIG. 5  is a schematic illustration of parts of an embodiment of the present invention for performing the method of  FIGS. 3A to 3C . 
       
    
    
     DETAILED DESCRIPTION 
       [0065]    An embodiment of the present invention will now be described with reference to  FIGS. 3A ,  3 B,  3 C,  4  and  5 .  FIGS. 3A to 3C  provide a schematic flowchart showing the steps performed by a MN  10 , an AR  20  and a HA  30 ; in general, the steps of  FIG. 3B  follow on from those of  FIG. 3A , and the steps of  FIG. 3C  follow on from those of  FIG. 3B .  FIG. 4  provides an overview of the signalling messages exchanged between the MN  10 , AR  20  and HA  30 .  FIG. 5  is a schematic block diagram showing parts of the MN  10 , AR  20  and HA  30  for performing the method of  FIGS. 3A to 3C . 
         [0066]    In order to address the issues and uncertainties described earlier, a CoA reachability test is introduced in an embodiment of the present invention which is triggered by the HA  30  associated with the MN  10  receiving a valid BU message from the MN  10 . 
         [0067]    Before that, however, the MN  10  is involved in establishing a cryptographic or symbiotic relationship (SR) with the AR  20 , as illustrated in  FIG. 3A , for example as in the NFD protocol mentioned above (see also W. Haddad, and M. Naslund, “On Secure Neighbor Discovery Proxying Using ‘Symbiotic’ Relationship”, Internet Draft, draft-haddad-cgaext-symbiotic-sendproxy-00.txt, January 2008). 
         [0068]    Establishing a SR with the AR  20  involves the MN  10  incorporating special parameters in order to generate the 128-bit random parameter, RAND( 128 ), to be used to configure its CGA address. As described in the “On Secure Neighbor Discovery Proxying Using ‘Symbiotic’ Relationship” reference mentioned above, this means that the RAND( 128 ), used together with the MN  10 &#39;s public key and other parameters to generate the 64-bit interface identifier (IID) should, in turn, be generated from the AR  20 &#39;s public key and another random 128-bit parameter, IRAND( 128 ); this is done in step P 1  of  FIG. 3A  by generating portion AP 1  of the MN  10 . The parameter IRAND( 128 ) can be considered as being an inner RAND( 128 ), with RAND( 128 ) being generated from IRAND( 128 ) for example by RAND( 128 )=First( 128 , Hash(IRAND( 128 )|AR_Public_Key). 
         [0069]    In step P 2 , an encrypting portion AP 2  of the MN  10  then encrypts the IRAND( 128 ) with the AR  20 &#39;s public key and in step P 3  an information sending portion AP 3  of the MN  10  sends it to the AR  20  in an NDP (Neighbour Discovery Protocol) message signed with the MN  10 &#39;s CGA private key. In addition, the MN  10  also includes two other parameters in the sending step P 3  that are also required by the AR  20 : the HA  30 &#39;s IPv6 address and the HA  30 &#39;s public key; this information can be sent in new options carried in a message used during a NDP exchange, e.g. the router solicitation (RtSol) message. Following receipt at an information receiving portion AP 4  of the AR  20  in step P 4 , these two parameters are stored by the AR  20  in step P 5  in an information storage portion AP 5  together with the MN  10 &#39;s SR (basically IRAND( 128 )) and the HA  30 &#39;s public key, as well as the CoA of the MN  10 . The IRAND( 128 ) can be considered to be an authentication token or shared secret, to be used later in an embodiment of the present invention. 
         [0070]    For the purpose of an embodiment of the present invention, the MN  10  is denied access in the visited network, as in the NFD protocol described above, until it establishes such a cryptographic relationship SR with the AR  20 . This cryptographic relationship enables the MN  10  to provide the HA  30  with information in order to enable the HA  30  to securely contact the AR  20  and to determine whether the MN  10  is reachable on the claimed CoA, as is explained below. 
         [0071]    Once the cryptographic relationship has been established between the MN  10  and the AR  20 , a secure CoA reachability test is triggered when the MN  10  sends, in step S 1  of  FIG. 3B , a BU message M 1  to the HA  30  to update it with its new CoA, using BU sending portion AS 1 . 
         [0072]    In the BU message M 1 , the MN  10  discloses to its HA  30  information relating to the cryptographic relationship. The MN  10  includes in the BU message M 1  the AR  20 &#39;s IPv6 address, the AR  20 &#39;s public key and a link to the AR  20 &#39;s certificate, i.e. the same as the one obtained by the MN  10  when attaching to the AR  20  link. In addition, the MN  10  includes, in an encrypted form, a parameter derived from hashing IRAND( 128 ), referred to here as HRAND( 128 ); this may be a 64 bit parameter, or may greater in length, for example at least 96 bits. 
         [0073]    The information relating to the cryptographic relationship (128-bit random parameter) is encrypted in the BU message M 1  with the key shared with the HA  30  from running IKEv2 (see C. Kaufman, “Internet Key Exchange (IKEv2) Protocol”, IETF, RFC 4306, December 2005), i.e. when bootstrapping the IKE SA between the two nodes. The two parameters, i.e. the AR&#39;s IPv6 address and the HRAND( 128 ), are sent in two new options carried by the BU message M 1 . 
         [0074]    The BU message M 1  is received by the HA  30  in step S 2 . This sets off an exchange of new signalling messages between the HA  30  and the AR  20  of the MN  10 , which will now be explained in more detail. 
         [0075]    Following receipt in step S 2  of the BU message M 1  carrying the new parameters (by a BU receiving portion AS 2  of the HA  30 ), in step S 3  a BCR sending portion AS 3  of the HA  30  sends a new message called a “Binding Complete Request (BCR)” message M 2  to the AR  20  using the IPv6 address sent in the BU message. For this purpose, the HA  30  authenticates the BCR message M 2  with the HRAND( 128 ) sent by the MN  10  in the BU message M 1 . The BCR message M 2  carries the MN  10 &#39;s CoA as sent in the BU message M 1 , and is authenticated with the cryptographic relationship established between the MN  10  and the AR  20 . The BCR message M 2  contains a nonce which is to be subsequently returned in the BC/BR message (see step S 9  below), and discloses what it knows about the SR established between the MN  10  and its AR  20 , i.e. HRAND( 128 ). In addition, the HA  30  signs the BCR message M 2 . The nonce is a random number generated by the HA  30  (by any means), which is then returned in the BC/BR message (see below); it serves to tell the HA  30  that the message has been sent by a node which is not anywhere in the Internet, so it narrows the possibility of an attack to just the nodes located on-path between the HA  30  and the AR  20 . 
         [0076]    It is to be noted that the BCR message M 2  does not need explicitly to contain HRAND( 128 ) in a new option. The HA  30  can authenticate the BCR message M 2  with HRAND( 128 ), but the HRAND does not need to be sent in the message itself. The nonce, which is separate, is a way to protect against flooding the HA  30  with fake BC messages, and hence the reason why the AR  20  copies the nonce and inserts it in the BC message (see below). The nonce is different to the HRAND( 128 ). The nonce can be a random number generated by the HA  30  and is returned by the AR  20  in the BC/BR message. 
         [0077]    Upon receiving the BCR message M 2  in step S 4  (at a BCR receiving portion AS 4  of the AR  20 ), the AR  20  determines whether or not it believes that the MN  10  is still attached to its link. 
         [0078]    A CoA checking portion AT 1  of the AR  20  can start by checking in step T 1  if the queried CoA is stored in its cache memory. Then in step T 2  a fetching portion AT 2  of the AR  20  fetches the MN  10 &#39;s corresponding SR (i.e. IRAND( 128 )) and HA  30 &#39;s public key. In step T 3  the former is used by a validating and checking portion AT 3  of the AR  20  to validate the HA knowledge, and the latter to check the signature of the BCR message M 2 . Validation of the HA knowledge means to check if the HA  30  has really received HRAND( 128 ); the validation is done by checking the authentication carried in the BCR message M 2 —if the authentication is done with HRAND( 128 ) as being the key, then the HA  30  knows it, so it is valid. If the signature is valid, then the AR  20  should immediately reply by sending a “Binding Confirm (BC)” message (see step S 9  below) in which it inserts its own SR, the nonce and signs the message with its private key. Note that the AR  20  should encrypt the SR with the HA  30 &#39;s public key. 
         [0079]    The AR  20  may perform a procedure to re-check the attachment of the MN  10 , e.g., using a neighbour discovery (ND) message (see T. Narten, E. Nordmark, W. Simpson, H. Soliman, “Neighbor Discovery for IP version 6 (IPv6)”, IETF, RFC 4861, September 2007). 
         [0080]    Using a neighbour discovery procedure, the AR  20  sends in step S 5  a ND message M 3  towards the CoA of the MN  10  as received in step S 4  in the BCR message M 2 . This message M 3  is received by the MN  10  in step S 6  (assuming the message M 3  actually arrives at the MN  10 ), and in step S 7  a ND reply message M 4  is sent back to the AR  20  and received in step S 8 . 
         [0081]    This procedure (involving messages M 3  and M 4 ) is optional. For example, the AR  20  does not need to check if the MN  10  is on-link or not if it finds that there is an SR concerning this node stored in its cache memory. In fact, the MN  10  may be out of reach for some time (for example due to bad coverage) but it does not matter since in case of an attack, the AR  20  can use the SR only to alert the HA  30 . 
         [0082]    In the case where the AR  20  believes that the MN  10  is still attached to its link, a BC/BR sending portion AS 9  of the AR  20  sends in step S 9  a “Binding Complete (BC)” message M 5 , which is authenticated with the same RAND( 128 ). 
         [0083]    Otherwise, the BC/BR sending portion AS 9  of the AR  20  instead sends in step S 9  an authenticated “Binding Reject (BR)” message M 5  to the HA  30 . 
         [0084]    The BC/BR message M 5  is therefore sent by the AR  20  to the HA  30  of the MN  10  as a response to the BCR message M 2 . The BC message M 5  is authenticated with the cryptographic relationship or SR (essentially, (RAND( )) and is signed with the AR  20 &#39;s private key (i.e. that which has been used to establish the cryptographic relationship). The BR message M 5  is authenticated whenever possible (i.e. if the MN  10  has established the cryptographic relationship then left the network). Otherwise, the AR  20  signs the BR message M 5  (which carries the nonce sent in the BCR message M 2 ) with its private key (note that the AR  20  should have a CGA address built from the public key pair). 
         [0085]    The BC or BR message M 5  is received by a BC/BR receiving portion AS 10  of the HA  30  in step S 10 . When the HA  30  receives a BC message from the AR  20 , a nonce checking portion AG 1  of the HA  30  starts by checking the nonce (step G 1 ), then a SR decrypting portion AG 2  of the HA  30  decrypts the SR and validates it (step G 2 ). Then a signature verifying portion AG 3  of the HA  30  verifies the signature by using the AR  20 &#39;s public key already stored in the MN  10 &#39;s corresponding entry (step G 3 ). 
         [0086]    The AR  20 &#39;s signature allows the HA  30  to validate the certificate provided by the MN  10 . Hence, if the signature is valid, then in step G 4  a decision making portion AG 4  of the HA  30  can consider with enough confidence that the MN  10  has indeed visited the AR  20  and exchanged NDP messages with it and an SR has been accepted. Furthermore, it also allows the HA  30  to validate the AR  20 &#39;s certificate sent by the MN  10 , which also serves as an indication to the HA  30  that the AR  20  is now empowered to repel any malicious behaviour that can emanate from the MN  10 , e.g. launching a flooding attack at a later stage. It follows that the CoA reachability test does not need to be repeated periodically. 
         [0087]    After completing a successful reachability test, i.e., performed in parallel with the DAD procedure in the home network, the HA  30  starts tunnelling data packets to the MN  10 &#39;s new CoA. As already mentioned, the presence of the SR between the MN  10  and its AR  20  will prevent the MN  10  from moving away at some point, and launching a flooding attack by keeping sending acknowledgment messages to the CN, e.g. using another interface. In fact, in case such an attack is launched, the AR  20  will quickly detect the MN  10 &#39;s absence on the link and securely request the HA  30  to halt the data packets flow to the MN  10 &#39;s CoA. Note that, in this context, making a secure request means that the AR  20  must re-send the SR established by the MN  10  without encryption and must sign the message with its private key. 
         [0088]    In step S 11  a BA message M 6  is sent by a BA sending portion AS 11  of the HA  30  to the MN  10 , in response to the BU message received in step S 2 , which is received by a BA receiving portion AS 12  of the MN  10  in step S 12 . This message M 6  can be sent immediately after the BU message M 1  or in parallel with sending the BCR message M 2  (or it could be piggybacked with the BCR message M 2 ). The BA message is authenticated. 
         [0089]      FIG. 4  provides an overview of the signalling messages exchanged between the MN  10 , AR  20  and HA  30  in the method illustrated in  FIGS. 3A to 3C . In addition,  FIG. 4  shows ND message A 1  and A 2  sent prior to message M 1 . Message A 1  is sent by the MN  10  to the AR  20 , in which it includes the SR and HA parameters. Message A 2  is the reply the MN  10  gets from the AR  20 . These two messages can be a Router Solicitation sent by the MN  10  and a Router Advertisement sent by the AR  20 . 
         [0090]    It may be considered why the signalling message exchange between the HA  30  and the AR  20  is needed if the MN  10  is required to establish a cryptographic relationship with the AR  20 . In fact, limiting the protection to establishing a cryptographic relationship only will indeed provide a significant improvement as it makes the flooding attack more difficult to launch, but this is not enough to eliminate it entirely. The remaining vulnerability in this case emanates from the potential ability of the MN  10  to use an interface where no ingress filtering is provided and update the HA  30  with a CoA configured with the targeted prefix. In such a scenario, the AR  20  located in the targeted network will be able to detect the attack and drop the incoming packets but it will not be able to stop the flooding as it has no mechanism to alert the HA  30  about the fake CoA. 
         [0091]    A malicious MN may try to bypass the AR by sending another IPv6 address in the BU message, which is not configured on the AR. This may be the case, for example, when using more than one interface to perform the update. In such a case, the HA will always believe that it can check the MN&#39;s reachability by sending a BCR message to the IPv6 address sent in the BU message M 1 . However, when the AR receives the BCR message, it needs to use ND to learn the MAC address associated with the IP address. 
         [0092]    In an embodiment of the present invention, prior to discovering the MAC address, the AR first checks if the IPv6 address is stored in its cache memory, which also means checking whether or not a cryptographic relationship has been established. If not, the AR should drop the incoming BCR message, and this prevents the malicious MN performing the reachability test. In this scenario, the only consequence is that the HA will reject the binding and no data packets will be tunnelled to the targeted network, so the attack will be foiled by the HA. 
         [0093]    However, in the case where the IPv6 destination address sent in the BCR message has a cryptographic relationship with the AR then the latter will forward the BCR message to its destination and it is up to the MN as to whether or not to respond to the HA. It follows immediately that the MN has no interest in performing the reachability test exchange by itself as it won&#39;t bring it any benefit except additional signalling message and delay the whole procedure. 
         [0094]    Although it might be thought that performing a mechanism embodying the present invention will increase the IP handoff latency, as it is necessary to update the HA  30  prior to updating the CN  40  (when the RO mode is used), in fact the CoA reachability test according to an embodiment of the present invention can be performed in parallel with exchanging data packets on the HA  30  to MN  10  path (for example, if the BT mode is enabled) or in parallel with updating the CN  40  (for example, when the RO mode is used and no data packets are sent via the HA  30 ). Moreover, when IP mobility is in use, a mechanism for handling fast mobility becomes unavoidable in order to guarantee an acceptable latency. Otherwise, it is well known that the latency induced by MIPv6/EMIPv6 protocols remains largely unacceptable to offer time sensitive applications. 
         [0095]    It is possible that the MN  10  configures more than one CoA on the same foreign link and sends all of them to the HA  30  in one BU message. In such a scenario, the MN  10  would establish an SR per CoA, but the HA  30  would only need to check one particular CoA with the AR  20 ; if there is an attack, the AR  20  can use the particular CoA to alert the HA  30  that the MN  10  is an attacker and thus all its CoAs should be rejected. 
         [0096]    As mentioned above, an embodiment of the present invention aims to improve MIPv6 overall security without increasing the signalling message load on the MN. For this purpose, the key exchange in the proposed mechanism is performed between the MN&#39;s HA and the new AR. It should be noted that repeating the same CoA reachability test as the one which is periodically performed between the MN and its CN(s), i.e. as part of the return routability procedure, will result in a significant increase in the amount of signalling messages on the MN side as it needs also to be repeated periodically in order to be efficient. 
         [0097]    The resulting improvement from the proposed mechanism should also benefit other protocols which have been designed around MIPv6, e.g. network mobility protocol (described in V. Devarapalli, R. Wakikawa, A. Petrescu, and P. Thubert, “Network Mobility (NEMO) Basic Support Protocol”, RFC 3963, January 2005). Another goal is to strengthen the network&#39;s ability to thwart network flooding attack launched via the MN&#39;s HA by improving the network protective means, in the same way as has already been suggested in the network flooding defence mechanism (as in NFD) for the enhanced route optimization (described in the “Enhanced Route Optimization for Mobile IPv6” detailed above). 
         [0098]    Another implicit goal is to provide yet another strong incentive to deploy the secure neighbor (SeND) discovery protocol (described in J. Arkko, J. Kempf, B. Sommerfield, B. Zill, and P. Nikander, “Secure Neighbor Discovery (SeND)”, RFC 3971, March 2005), as the proposed mechanism assumes that SeND is deployed. This means that the MN is CGA enabled and is able to exploit all protective features provided by SeND on the link. 
         [0099]    As mentioned earlier, the design of the suggested CoA reachability test should avoid increasing the latency. For this purpose, it is recommended that the HA triggers the CoA reachability test immediately after launching the DAD procedure for the MN&#39;s IPv6 home address, i.e. following the receipt of a valid BU message. 
         [0100]    It will be appreciated that operation of one or more of the above-described components can be controlled by a program operating on the device or apparatus. Such an operating program can be stored on a computer-readable medium, or could, for example, be embodied in a signal such as a downloadable data signal provided from an Internet website. The appended claims are to be interpreted as covering an operating program by itself, or as a record on a carrier, or as a signal, or in any other form.