Abstract:
An apparatus, method and system for acquiring IPV6 address is described. The apparatus includes a request module ( 101 ) and an allocation module ( 102 ), the request module ( 101 ) is adapted to send an IPV6 address allocation request to the allocation module ( 102 ), and acquire an allocated IPV6 address from an IPV6 address allocation acknowledgement returned from the allocation module ( 102 ); the allocation module ( 102 ) is adapted to allocate an IPV6 address according to the IPV6 address allocation request, make the allocated IPV6 address to be carried in the IPV6 address allocation acknowledgement, and return the IPV6 address allocation acknowledgement to the request module ( 101 ). The system includes a user terminal and an IPV6 address management device. The apparatus, method and system improve the security of IPV6 address in use while ensure the uniqueness of IPV6 address.

Description:
CROSS-REFERENCE TO RELATED APPLICATION 
     This application is a continuation of International Patent Application No. PCT/CN2006/003576, filed Dec. 25, 2006, which claims priority to Chinese Patent Application No. 200610056750.6, filed Mar. 6, 2006, and Chinese Patent Application No. 200610056741.7, filed Mar. 6, 2006, each of which is hereby incorporated by reference in its entirety. 
    
    
     FIELD OF THE INVENTION 
     The present invention relates to broadband access technology, particularly, to an apparatus, method and system for acquiring an Internet Protocol Version 6 (IPV6) address. 
     BACKGROUND 
     The 32-bit IPV4 address resources become insufficient increasingly as the size of Internet becomes larger and larger. In order to solve the problem once and forever, the Internet Engineering Task Force (IETF) is proposed to employ 128-bit IPV6 address in the IPV6 protocol. 
     The existing protocol only defines the IPV6 address but does not define the specific manner for a user terminal to acquire an IPV6 address, so that the approach for a user terminal to acquire an IPV6 address is out of control and management, which results in security vulnerabilities easily, for example, the threat of imitational user terminals, and so on. 
     SUMMARY 
     The present invention provides an apparatus, method and system for acquiring an IPV6 address. 
     According to one aspect of the invention, an apparatus for acquiring IPV6 address is provided, the apparatus includes a request module and an allocation module; the request module is adapted to send an IPV6 address allocation request to the allocation module, and acquire an allocated IPV6 address from an IPV6 address allocation acknowledgement returned from the allocation module; the allocation module is adapted to allocate the IPV6 address according to the IPV6 address allocation request, and make the allocated IPV6 address to be carried in the IPV6 address allocation acknowledgement for returning to the request module. 
     According to another aspect of the invention, a method for acquiring an IPV6 address is provided, the method includes: receiving an IPV6 address allocation request sent from a user terminal, allocating an IPV6 address for the user terminal according to the IPV6 address allocation request, and returning an IPV6 address allocation acknowledgement carrying the allocated IPV6 address to the user terminal. 
     According to another aspect of the invention, a system for allocating IPV6 address is provided, the system includes a user terminal and an IPV6 address management device; the user terminal is adapted to send an IPV6 address allocation request, and acquire an allocated IPV6 address from an received IPV6 address allocation acknowledgement; the IPV6 address management device is adapted to receive the IPV6 address allocation request, allocate the IPV6 address according to the IPV6 address allocation request, and send the IPV6 address allocation acknowledgement carrying the allocated IPV6 address to the user terminal. 
     It can be seen from above technical solutions in the apparatus, method and system for acquiring IPV6 address, according to the invention, IPV6 addresses are allocated to user terminals uniformly by a Broadband Remote Access Server (BRAS) or a network server, so that the BRAS or network server is allowed to effectively arrange and manage the IPV6 address, improving the security of IPV6 address in use and decreasing the probability of appearing imitational user terminals in Internet while ensuring the uniqueness of IPV6 address. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  is a structure diagram illustrating an apparatus for acquiring IPV6 address according to an embodiment of the invention; 
         FIG. 2  is a flowchart diagram illustrating a method for acquiring IPV6 address with the apparatus as shown in  FIG. 1 ; 
         FIG. 3  is a structure diagram illustrating an apparatus for acquiring IPV6 address according to another embodiment of the invention; 
         FIG. 4  is a flowchart diagram illustrating a method for acquiring IPV6 address with the apparatus as shown in  FIG. 3 ; and 
         FIG. 5  is a structure diagram illustrating a system for allocating IPV6 address according to an embodiment of the invention. 
     
    
    
     DETAILED DESCRIPTION 
     The present invention is described in detail with specific embodiments in the accompanying drawings. 
     In embodiments of the present invention, a BRAS or a network server is responsible for performing uniform arrangement and management for IPV6 address and providing IPV6 address according to a request from a user terminal, so as to improve the security of IPV6 address in use. In the following description, an IPV6 address may simply refer to an IPV6 prefix, or simply refer to an IPV6 interface identification (ID), or include both the IPV6 prefix and the IPV6 interface ID. 
     The network server may be a Remote Authentication Dial In User Service (RADIUS) server, a Terminal Access Controller Access Control System (TACACS) server, or a Dynamic Host Configure Protocol (DHCP) server, and so on. 
     In an embodiment of the invention, a BRAS is responsible for performing uniform arrangement and management for IPV6 address and allocating IPV6 address according to a request from a user terminal.  FIG. 1  is a structure diagram illustrating an apparatus for acquiring IPV6 address according to the embodiment. The apparatus includes a request module  101  and an allocation module  102 . The request module  101  is set in a user terminal, and the allocation module  102  is set in a BRAS. The request module  101  and the allocation module  102  interact with each other via Internet. 
     The request module  101  sends an IPV6 address allocation request to the allocation module  102 , and acquires an allocated IPV6 address from an IPV6 address allocation acknowledgement returned from the allocation module  102 . 
     The allocation module  102  determines the IPV6 address according to a strategy, and informs the request module  101  of the allocated IPV6 address via an IPV6 address allocation acknowledgement. 
     If the IPV6 address refers to an IPV6 prefix, since the allocation module  102  may set at least one IPV6 prefix in advance for every interface or every Internet Service Provider (ISP) domain, the method for determining the IPV6 prefix according to the strategy includes: after identifying an interface or ISP domain to which the user terminal belongs, the allocation module  102  acquires the IPV6 prefix of the interface or the ISP domain set by the allocation module  102  itself. What is set in advance by the allocation module  102  may also be attribute information of the IPV6 prefix, including prefix address, length, preferred lifetime, valid lifetime, autoconfiguration (L/A) label, and so on. The prefix address is the IPV6 prefix. The length, preferred lifetime, valid lifetime, L/A label and so on are additional information of the IPV6 prefix. 
     If the IPV6 address refers to an IPV6 interface ID, there are various methods for the allocation module  102  to determine the IPV6 interface ID according to a strategy. For example, the allocation module  102  selects an IPV6 interface ID for a user terminal based on an interface or ISP domain to which the user terminal belongs, or generates an IPV6 interface ID using a random number or a MAC address of the user terminal. In practical application, strategies for determining an IPV6 interface ID are flexible, and no more description will be given. 
       FIG. 2  is a flowchart diagram illustrating a method for acquiring IPV6 address according to an embodiment of the invention. The method includes the following steps. 
     Step  201 : A request module  101  at a user terminal sends an IPV6 address allocation request to an allocation module  102  at a BRAS. 
     Step  202 : The allocation module  102  allocates an IPV6 address for the request module  101 . 
     At this step, if the IPV6 address is an IPV6 prefix, the allocation module  102  identifies an interface or ISP domain to which the user terminal containing the request module  101  belongs, and then searches for attribute information of the IPV6 prefix set for the interface or the ISP domain by the allocation module  102  itself. 
     If the IPV6 address is an IPV6 interface ID, before the request module  101  requests to acquire the IPV6 interface ID, the BRAS typically has performed authentication for the user terminal and has recorded information of the user terminal such as user name, MAC address, interface or ISP domain to which the user terminal belongs, and so on. When allocating the IPV6 interface ID, the BRAS may generate the IPV6 interface ID using a random number and/or the MAC address of the user terminal, or select an IPV6 interface ID for the user terminal based on the interface or ISP domain to which the user terminal belongs. 
     Step  203 : The allocation module  102  returns an IPV6 address allocation acknowledgement to the request module  101 , the IPV6 address allocation acknowledgement carrying the allocated IPV6 address. 
     In another embodiment of the invention, a network server is responsible for performing uniform arrangement and management for IPV6 address and allocating IPV6 address according to a request from a user terminal.  FIG. 3  is a structure diagram illustrating an apparatus for acquiring IPV6 address according to the embodiment. The apparatus includes a request module  301  and an allocation module  302 . The request module  301  is set in a user terminal, and the allocation module  302  is set in a network server. The request module  301  and the allocation module  302  interact with each other via Internet. In practice, the request module  301  and the allocation module  302  may interact with each other via a BRAS or without a BRAS, so the BRAS is not shown in  FIG. 3 . 
       FIG. 4  is a flowchart diagram illustrating a method for acquiring IPV6 address according to another embodiment of the invention. The method includes: 
     Step  401 : A request module  301  at a user terminal sends an IPV6 address allocation request to an allocation module  302  at a network server. 
     At this step, the request module  301  may send the IPV6 address allocation request to the allocation module  302  via a BRAS or directly without a BRAS. In a specific example of the invention, when the IPV6 address allocation request is sent via the BRAS, the BRAS may perform authentication on the user terminal which sends the request, and send the request to the allocation module  302  after a successful authentication. 
     Step  402 : The allocation module  302  allocates an IPV6 address for the request module  301 . This step is similar to step  202 . If the IPV6 address is an IPV6 prefix, the allocation module  302  determines the IPV6 prefix based on the interface or ISP domain to which the user terminal containing the request module  301  belongs. If the IPV6 address is an IPV6 interface ID, the allocation module  302  generates the IPV6 interface ID using a random number and/or the MAC address of the user terminal. 
     Step  403 : The allocation module  302  returns an IPV6 address allocation acknowledgement to the request module  301 , the IPV6 address allocation acknowledgement carrying the allocated IPV6 address. 
     Similarly, the IPV6 address allocation acknowledgement may also be returned to the request module  301  via the BRAS or directly without the BRAS. 
       FIG. 5  is a structure diagram illustrating a system for allocating IPV6 address according to another embodiment of the invention. The system includes a user terminal  501  and a BRAS  502 . 
     The user terminal  501  is further provided with a request module other than functions of a common user terminal. The request module sends an IPV6 address allocation request, receives an IPV6 address allocation acknowledgement, and acquires a desired IPV6 address from the acknowledgement. The BRAS  502  determines the IPV6 address according to the IPV6 address allocation request, and returns the determined IPV6 address to the user terminal  501  via the IPV6 address allocation acknowledgement. 
     In a specific example of the invention, the system may be further provided with a network server  503 . The network server  503  receives an IPV6 address allocation request and allocates an IPV6 address. At this time, the BRAS  502  forwards the IPV6 address allocation request and the IPV6 address allocation acknowledgement between the user terminal  501  and the network server  503 . In another specific example of the invention, the user terminal  501  may interact directly with the network server  503  without the BRAS  502 . 
     In other words, either of the network server and the BRAS may have the function of uniform arrangement and management for IPV6 address. A device having the function of uniform arrangement and management for IPV6 address is called as an IPV6 address management device. 
     In the system for allocating IPV6 address as shown in  FIG. 5 , if the IPV6 prefix set for an interface or ISP domain by an IPV6 address management device changes, the IPV6 address management device may periodically send IPV6 address allocation acknowledgements to all user terminals belonging to the interface or ISP domain, the IPV6 address allocation acknowledgements carrying changed attribute information of the IPV6 prefix. The change of the IPV6 prefix refers to deletion of the current set IPV6 prefix or addition of a new IPV6 prefix, and so on. Further, if a user terminal switches to another interface or ISP domain, the user terminal may send an IPV6 address allocation request to the IPV6 address allocation management device. 
     In embodiments of the invention, the IPV6 address management device allocates different IPV6 prefixes for user terminals belonging to different ISP domains, so that the possibility of address conflict decreases. All user terminals belonging to a same ISP domain use a same IPV6 address, so that routings of these user terminals may be collected with the IPV6 prefix and then performed, which results in the decrease of routing amount of the Internet. Moreover, once the IPV6 prefix of an ISP domain changes or a user terminal switches to another ISP domain, the user terminal may readily acquire a new IPV6 prefix from an IPV6 address management device. 
     Embodiments of the invention are applicable to any kinds of user terminal, such as Neighbor Discovery Protocol (NDP) user terminal, Point-to-Point Protocol (PPP) user terminal, Dynamic Host Configure Protocol (DHCP) user terminal, Extensible Authentication Protocol (EAP) user terminal, or Layer 2 Tunneling Protocol (L2TP) user terminal, and so on. 
     Different kinds of user terminals have different requirements for acquiring IPV6 address. 
     For example, an IPV6 interface ID of an IPV6 address used by an NDP user terminal is generated randomly by the NDP user terminal. The NDP user terminal needs acquire an IPV6 prefix from an IPV6 address management device. 
     For example, a PPP user terminal needs acquire both an IPV6 prefix and an IPV6 interface ID from an IPV6 address management device, but the IPV6 prefix and the IPV6 interface ID are acquired separately. 
     In a specific example, a PPP user terminal may send an IPV6 prefix allocation request and an IPV6 interface ID allocation request to an IPV6 address management device, the IPV6 address management device separately allocates an IPV6 prefix and an IPV6 interface ID after receiving the two requests, and returns the IPV6 prefix via an IPV6 prefix allocation acknowledgement and the IPV6 interface ID via an IPV6 interface ID allocation acknowledgement to the PPP user terminal, the IPV6 prefix allocation acknowledgement carrying attribute information of the IPV6 prefix and the IPV6 interface ID allocation acknowledgement carrying the IPV6 interface ID. 
     For example, an IPV6 prefix and an IPV6 interface ID of an IPV6 address used by a DHCP user terminal supporting IPV6 are also acquired from an IPV6 address management device. In a specific example, the DHCP user terminal may send an IPV6 address allocation request to the IPV6 address management device, the IPV6 address management device allocates an IPV6 prefix and an IPV6 interface ID according to the request, and returns an IPV6 address allocation acknowledgement to the DHCP user terminal, the IPV6 address allocation acknowledgement carrying both the IPV6 prefix and the IPV6 interface ID. 
     In above process, the IPV6 address management device should guarantee that the allocated IPV6 address is unique. For example, when two user terminals have the same IPV6 prefix, they should be allocated with different IPV6 interface ID. On the contrary, when two user terminals have different IPV6 prefixes, the IPV6 address management device may allocate the same IPV6 interface ID for them. 
     The preferred embodiments described herein intends to illustrate the invention, rather than limit the protect scope of the invention.