Method for automatically updating IP addresses in batches and control end server
Through the automated batch update method of IP address, the server BMC IP address is automatically configured and verified by the identification mapping relationship, which solves the problems of inefficient configuration and errors in the existing technology, and realizes efficient and accurate IP address management.
Patent Information
- Application Number
- CN202411377330.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-30
- Publication Date
- 2025-01-10
AI Technical Summary
In the prior art, the configuration of the server BMC IP address is inefficient, error-prone and lacks verification processes, resulting in operation and maintenance personnel needing manual setup and verification, which is time-consuming and inaccurate.
Provide an automated batch update method of IP address, by obtaining the identification mapping relationship in the IP address configuration file, modifying the BMC IP address using the first network port, and verifying it through the second network port to ensure that the IP address is updated correctly.
It improves the efficiency of configuring the server BMC IP address, reduces errors, and realizes an automated IP address configuration and verification process.
Smart Images

Figure CN119299430A_ABST
Abstract
Description
Technical Field
[0001] The embodiments of the present application relate to the field of server technology, and in particular to an automated batch updating method for IP addresses and a control-end server. Background Art
[0002] In the prior art, for servers shipped by the company, the BMC account, password, and static BMC IP (such as 192.168.0.101) are uniformly set. However, in actual customer room deployment, the BMC port of the server must be a different IP for each server. The operation and maintenance personnel need to manually enter the BMC page or BIOS interface to set the BMC IP according to the configuration table provided by the customer. This is very inefficient, the configuration is prone to errors, and it is very time-consuming. In addition, there is a lack of verification process. Summary of the invention
[0003] The embodiment of the present application provides an automated batch updating method for IP addresses and a control end server, which can improve the efficiency of configuring the BMC IP of the server.
[0004] A first aspect of an embodiment of the present application provides an automatic batch updating method for IP addresses, which is applied to a control end server, wherein the control end server includes a first network port and a second network port, and the method includes:
[0005] Get the IP address configuration file;
[0006] Acquire an identification mapping relationship from the configuration file, wherein the identification mapping relationship includes an identification of the BMC whose IP address is to be modified and an IP address corresponding to the identification;
[0007] According to the identification mapping relationship, modify the IP address of the BMC through the first IP address, where the first IP address is the IP address of the first network port of the control end server;
[0008] The IP address of the BMC is verified by using the identification mapping relationship and the second IP address to obtain a verification result, where the second IP address is the IP address of the second network port of the control end server.
[0009] Optionally, after acquiring the identification mapping relationship from the configuration file, the method further includes:
[0010] Determine whether all IP addresses in the identification mapping relationship belong to the same network segment;
[0011] If yes, then obtain the target network segment, which is the common network segment of all IP addresses in the identification mapping relationship;
[0012] The second IP address is modified through the target network segment.
[0013] Optionally, modifying the IP address of the BMC by using the first IP address according to the identification mapping relationship includes:
[0014] Connect to the target BMC through the first IP address;
[0015] Obtaining a target identification code of the target BMC;
[0016] Determine the target IP address corresponding to the target identification code according to the identification mapping relationship;
[0017] The IP address of the target BMC is modified to the target IP address.
[0018] Optionally, the verifying the IP address of the BMC by using the identification mapping relationship and the second IP address to obtain a verification result includes:
[0019] Determine whether the network segment of the second IP address is the same as the network segment of the target IP address;
[0020] If not, modify the second IP address according to the network segment of the target IP address;
[0021] The IP address of the target BMC is verified by using the modified second IP address to obtain a verification result.
[0022] Optionally, the verifying the IP address of the target BMC by using the modified second IP address to obtain a verification result includes:
[0023] Performing a ping test on the target IP address through the modified second IP address;
[0024] If the ping succeeds, a verification result indicating that the verification has passed is generated;
[0025] If the ping fails, a verification result indicating that the verification failed is generated.
[0026] A second aspect of an embodiment of the present application provides a control end server, the control end server comprising a first network port and a second network port, the control end server comprising:
[0027] A first acquisition unit, used to acquire an IP address configuration file;
[0028] A second acquisition unit is used to acquire an identification mapping relationship from the configuration file, where the identification mapping relationship includes an identification of the BMC whose IP address is to be modified and an IP address corresponding to the identification;
[0029] A first modification unit, configured to modify the IP address of the BMC through a first IP address according to the identification mapping relationship, where the first IP address is the IP address of the first network port of the control end server;
[0030] The verification unit is used to verify the IP address of the BMC through the identification mapping relationship and the second IP address to obtain a verification result, wherein the second IP address is the IP address of the second network port of the control end server.
[0031] Optionally, the control end server further includes:
[0032] A judging unit, used to judge whether all IP addresses in the identification mapping relationship belong to the same network segment;
[0033] A third acquisition unit, configured to acquire a target network segment when the judgment unit determines that all IP addresses in the identifier mapping relationship belong to the same network segment, wherein the target network segment is a common network segment of all IP addresses in the identifier mapping relationship;
[0034] The second modification unit is used to modify the second IP address through the target network segment.
[0035] Optionally, the first modifying unit is specifically configured to:
[0036] Connect to the target BMC through the first IP address;
[0037] Obtaining a target identification code of the target BMC;
[0038] Determine the target IP address corresponding to the target identification code according to the identification mapping relationship;
[0039] The IP address of the target BMC is modified to the target IP address.
[0040] Optionally, the inspection unit includes:
[0041] A determination module, used to determine whether the network segment of the second IP address is the same as the network segment of the target IP address;
[0042] a modification module, configured to modify the second IP address according to the network segment of the target IP address when the judgment module determines that the network segment of the second IP address is different from the network segment of the target IP address;
[0043] The verification module is used to verify the IP address of the target BMC through the modified second IP address to obtain a verification result.
[0044] Optionally, the verification module is specifically used for:
[0045] Performing a ping test on the target IP address through the modified second IP address;
[0046] If the ping succeeds, a verification result indicating that the verification has passed is generated;
[0047] If the ping fails, a verification result indicating that the verification failed is generated.
[0048] A third aspect of the embodiment of the present application provides a control end server, including:
[0049] Processor, memory, input-output unit, and bus;
[0050] The processor is connected to the memory, the input and output unit, and the bus;
[0051] A program is stored in the memory, and the processor calls the program to execute the method in the first aspect and any possible implementation manner of the first aspect.
[0052] A fourth aspect of an embodiment of the present application provides a computer-readable storage medium, on which a program is stored. When the program is executed on a computer, the computer executes the method in the first aspect and any possible implementation of the first aspect.
[0053] It can be seen from the above technical solutions that the embodiments of the present application have the following advantages:
[0054] In the embodiment of the present application, the control end server first obtains the IP address configuration file, and then obtains the identification mapping relationship from the IP address configuration file. The identification mapping relationship includes the identification number of the BMC and the corresponding IP address. The IP address is the IP address of the BMC after the IP address is updated. The control end server first uses the first IP address of the first network port to access the BMC, and modifies the IP address of the BMC according to the identification mapping relationship, and then uses the second IP address of the second network port and the identification mapping relationship to verify the IP address of the BMC. If the IP address of the BMC is successfully modified, a verification result of passing the verification can be obtained, and if it fails, a verification result of failing the verification can be obtained. Through the method provided in the embodiment of the present application, the IP address of the BMC can be automatically configured, which improves the efficiency of configuring the IP address of the BMC of the server. At the same time, the modified IP address of the BMC is verified using the second IP address, which reduces the situation of errors in configuring the IP address. BRIEF DESCRIPTION OF THE DRAWINGS
[0055] Figure 1 This is a flow chart of an embodiment of a method for automatically updating IP addresses in batches in an embodiment of the present application;
[0056] Figure 2 A flowchart of an embodiment of determining whether all IP addresses in the identification mapping relationship belong to the same network segment in an embodiment of the present application;
[0057] Figure 3 A flowchart of an embodiment of modifying the IP address of the BMC through the first IP address in an embodiment of the present application;
[0058] Figure 4 A flowchart of an embodiment of verifying the IP address of the BMC in the embodiment of our company;
[0059] Figure 5 This is a schematic diagram of the structure of an embodiment of a control end server in an embodiment of the present application;
[0060] Figure 6 This is a structural diagram of another embodiment of the control end server in the embodiment of the present application. DETAILED DESCRIPTION
[0061] The embodiment of the present application provides an automated batch updating method for IP addresses and a control-end server, which are used to improve the efficiency of configuring the BMC IP of a server.
[0062] The embodiments of the present application will be described below in conjunction with the accompanying drawings.
[0063] See also Figure 1 In the embodiment of the present application, an embodiment of the method for automatically updating IP addresses in batches includes:
[0064] 101. Get the IP address configuration file;
[0065] 102. Obtaining an identification mapping relationship from the configuration file;
[0066] 103. Modify the IP address of the BMC by using the first IP address according to the identification mapping relationship;
[0067] 104. Verify the IP address of the BMC using the identification mapping relationship and the second IP address to obtain a verification result.
[0068] In this embodiment, the control end server first obtains the IP address configuration file, and then obtains the identification mapping relationship from the IP address configuration file. The identification mapping relationship includes the identification number of the BMC and the corresponding IP address. The IP address is the IP address of the BMC after the IP address is updated. The control end server first uses the first IP address of the first network port to access the BMC, and modifies the IP address of the BMC according to the identification mapping relationship, and then uses the second IP address of the second network port and the identification mapping relationship to verify the IP address of the BMC. If the IP address of the BMC is successfully modified, a verification result of passing the verification can be obtained, and if it fails, a verification result of failing the verification can be obtained. In this embodiment, the IP address of the BMC can be automatically configured, which improves the efficiency of configuring the IP address of the BMC of the server. At the same time, the modified IP address of the BMC is verified using the second IP address, which reduces the error in configuring the IP address.
[0069] See also Figure 2 In some embodiments of the present application, after the step 102 in the above example obtains the identification mapping relationship from the configuration file, the following steps 201 to 203 may also be included:
[0070] 201. Determine whether all IP addresses in the identification mapping relationship belong to the same network segment. If not, execute step 202.
[0071] The control server checks the IP addresses of all BMCs in the identification mapping relationship to determine whether they belong to the same network segment. The network segment of the IP address is usually determined by the first few digits of the IP address and the subnet mask. Devices in the same network segment can usually communicate directly without going through a router.
[0072] 202. Obtain the target network segment;
[0073] If it is determined in step 201 that the IP addresses in the identification mapping relationship are not in the same network segment, the control end server will obtain a target network segment, which is extracted based on the common network segment of all IP addresses in the identification mapping relationship.
[0074] 203. Modify the second IP address through the target network segment.
[0075] The control end server will modify the second IP address that is not in the network segment according to the obtained target network segment to ensure that the second network port of the control end server and the BMC are all in the target network segment. Specifically, this step mainly involves updating the network segment part of the second IP address (i.e. the updated BMC IP address) in the identification mapping relationship.
[0076] By modifying the IP address to match the target network segment, you can ensure the network connectivity and unified management of the BMC device. This adjustment can reduce the risk of network configuration errors, ensure that all devices in the system can communicate efficiently, and facilitate subsequent maintenance and management.
[0077] In this embodiment, it is ensured that the second IP address of the second network port of the control end server and the BMC device are in the same network segment, so that the second network port can directly access the BMC device for verification, thereby simplifying network management.
[0078] See also Figure 3 In some embodiments of the present application, step 103 in the above example modifies the IP address of the BMC through the first IP address according to the identification mapping relationship, and may include the following steps 301 to 304:
[0079] 301. Connect to the target BMC through the first IP address;
[0080] The control end server uses the IP address of the first network port (ie, the first IP address) to establish a connection with the target BMC device. The first network port is usually used for network management, so the connection is made through this IP address to ensure that the control end server can communicate with the target BMC smoothly.
[0081] Connect to the target BMC through the IP address of the first network port to ensure smooth communication between the server and the BMC, providing a stable foundation for subsequent IP address modification operations.
[0082] 302. Obtain a target identification code of the target BMC;
[0083] After the connection is successful, the control server obtains the unique identification code from the target BMC device. This identification code is used to uniquely identify the BMC device to ensure that the subsequent IP address modification operation is performed on the correct device. It should be noted that the identification code of the BMC can be an SN code, a MAC address, or other information that can serve as the unique identity of the BMC, and this application does not limit this.
[0084] By obtaining the BMC identification code, the control server can accurately identify and manage the target device, avoid device identification errors, and improve operation accuracy.
[0085] 303. Determine the target IP address corresponding to the target identification code according to the identification mapping relationship;
[0086] The control end server uses the existing identification mapping relationship to find the corresponding target IP address according to the identification code of the target BMC. This target IP address is the updated IP address pre-assigned to the BMC device.
[0087] Accurately match the target IP address with the identification code to ensure that the IP address update of the BMC device meets the predetermined network planning and configuration requirements and avoid IP conflicts.
[0088] 304. Modify the IP address of the target BMC to the target IP address.
[0089] The control end server uses the IP address of the first network port to connect to the target BMC and updates its IP address to the target IP address. The first network port is used to perform the actual IP address modification operation to ensure that the IP configuration of the BMC device complies with the network planning.
[0090] Use the first network port to modify the IP address to ensure that the configuration change of the device can be successfully executed and the BMC device can communicate normally in the updated network environment.
[0091] In this embodiment, a possible implementation method is that the control end server is connected to the target BMC through the SSH protocol and uses the BMC background super user to log in, and then the user enters a query command such as "ipmitool fru print 0" to query the relevant information of the target BMC, and the relevant information includes the "Product Serial" field, which is the SN code of the target BMC, and then the user queries according to the identification mapping relationship of the SN code in the configuration file to obtain the query result. The query result includes the IP address, gateway, subnet mask, etc. corresponding to the SN code, and then the IP address of the target BMC is changed according to the query result.
[0092] In this embodiment, it is ensured that the control-end server can effectively update the IP address of the target BMC, thereby ensuring that the network configuration of the device meets expectations and operates normally.
[0093] See also Figure 4 In some embodiments of the present application, step 104 in the above example verifies the IP address of the BMC through the identification mapping relationship and the second IP address to obtain a verification result, which may include the following steps 401 to 403:
[0094] 401. Determine whether the network segment of the second IP address is the same as the network segment of the target IP address. If so, execute step 402.
[0095] The control server checks whether the IP address of the second network port (i.e., the second IP address) and the target IP address belong to the same network segment. If their network segments are the same, it means that the second network port of the control server and the target BMC device can communicate in the same network.
[0096] By determining whether the network segments are the same, ensure that the second network port of the control server and the BMC device can communicate directly, laying the foundation for subsequent verification operations.
[0097] 402. Modify the second IP address according to the network segment of the target IP address;
[0098] If the network segment of the second IP address is different from that of the target IP address, the control server will adjust the second IP address according to the network segment of the target IP address. This is to ensure that the second network port of the control server can communicate with the BMC device in the same network segment.
[0099] By adjusting the network segment of the second IP address, it is ensured that the control server and the BMC device communicate within the same network segment, thereby improving the success rate of subsequent verification operations.
[0100] 403. Verify the IP address of the target BMC using the modified second IP address to obtain a verification result.
[0101] The control server uses the modified second IP address to connect to the target BMC through the second network port and verify its IP address. In this way, it is confirmed whether the IP address of the BMC device has been correctly updated and ensure that the device runs normally in the new network configuration.
[0102] By using the second network port to verify the IP address, you can confirm whether the IP address of the BMC device is updated successfully, thereby verifying the accuracy of the entire configuration process and the validity of the network configuration.
[0103] In this embodiment, it is ensured that the control-end server can effectively verify the IP address of the target BMC, thereby ensuring that the network configuration of the device meets expectations and operates normally.
[0104] The above describes the method for automatically updating IP addresses in batches in the embodiment of the present application. The following describes the control end server in the embodiment of the present application:
[0105] See also Figure 5 In the embodiment of the present application, an embodiment of the control end server includes:
[0106] The first acquisition unit 501 is used to acquire an IP address configuration file;
[0107] A second acquisition unit 502 is configured to acquire an identifier mapping relationship from the configuration file, wherein the identifier mapping relationship includes an identifier of the BMC whose IP address is to be modified and an IP address corresponding to the identifier;
[0108] A first modifying unit 503 is configured to modify the IP address of the BMC by using a first IP address according to the identification mapping relationship, where the first IP address is the IP address of the first network port of the control end server;
[0109] The verification unit 504 is used to verify the IP address of the BMC through the identification mapping relationship and the second IP address to obtain a verification result, where the second IP address is the IP address of the second network port of the control end server.
[0110] In this embodiment, the first acquisition unit 501 first acquires the IP address configuration file, and then the second acquisition unit 502 acquires the identification mapping relationship from the IP address configuration file, the identification mapping relationship includes the identification number of the BMC and the corresponding IP address, and the IP address is the IP address of the BMC after the IP address is updated. The first modification unit 503 uses the first IP address of the first network port to access the BMC, and modifies the IP address of the BMC according to the identification mapping relationship, and then the verification unit 504 uses the second IP address of the second network port and the identification mapping relationship to verify the IP address of the BMC. If the IP address of the BMC is successfully modified, a verification result of passing the verification can be obtained, and if it fails, a verification result of failing the verification can be obtained. In this embodiment, the IP address of the BMC can be automatically configured, which improves the efficiency of configuring the IP address of the BMC of the server. At the same time, the modified IP address of the BMC is verified using the second IP address, which reduces the error in configuring the IP address.
[0111] Optionally, the control end server further includes:
[0112] A judging unit, used to judge whether all IP addresses in the identification mapping relationship belong to the same network segment;
[0113] A third acquisition unit, configured to acquire a target network segment when the judgment unit determines that all IP addresses in the identifier mapping relationship belong to the same network segment, wherein the target network segment is a common network segment of all IP addresses in the identifier mapping relationship;
[0114] The second modification unit is used to modify the second IP address through the target network segment.
[0115] Optionally, the first modifying unit 503 is specifically configured to:
[0116] Connect to the target BMC through the first IP address;
[0117] Obtaining a target identification code of the target BMC;
[0118] Determine the target IP address corresponding to the target identification code according to the identification mapping relationship;
[0119] The IP address of the target BMC is modified to the target IP address.
[0120] Optionally, the inspection unit 504 includes:
[0121] A determination module, used to determine whether the network segment of the second IP address is the same as the network segment of the target IP address;
[0122] a modification module, configured to modify the second IP address according to the network segment of the target IP address when the judgment module determines that the network segment of the second IP address is different from the network segment of the target IP address;
[0123] The verification module is used to verify the IP address of the target BMC through the modified second IP address to obtain a verification result.
[0124] Optionally, the verification module is specifically used for:
[0125] Performing a ping test on the target IP address through the modified second IP address;
[0126] If the ping succeeds, a verification result indicating that the verification has passed is generated;
[0127] If the ping fails, a verification result indicating that the verification failed is generated.
[0128] In this implementation, the functions of each unit and module are the same as those described above. Figures 1 to 4 The steps in the illustrated embodiments correspond to each other and will not be described again here.
[0129] See also Figure 6 Another embodiment of the control end server in the embodiment of the present application includes:
[0130] Processor 601, memory 602, input and output unit 603 and bus 604;
[0131] The processor 601 is connected to the memory 602, the input and output unit 603 and the bus 604;
[0132] The memory 602 stores a program, and the processor 601 calls the program to execute Figures 1 to 4 Steps in the illustrated embodiment.
[0133] In this embodiment, the function of the processor 601 is the same as that of the aforementioned Figures 1 to 4 The steps in the illustrated embodiments correspond to each other and will not be described again here.
[0134] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0135] In the several embodiments provided in the present application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of the units is only a logical function division. There may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be an indirect coupling or communication connection through some interfaces, devices or units, which can be electrical, mechanical or other forms.
[0136] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0137] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.
[0138] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application is essentially or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions to enable a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM, read-only memory), random access memory (RAM, random access memory), disk or optical disk and other media that can store program code.
Claims
1. An automated batch updating method for IP addresses, applied to a control end server, characterized in that: The control end server includes a first network port and a second network port, and the method includes: Get the IP address configuration file; Acquire an identification mapping relationship from the configuration file, wherein the identification mapping relationship includes an identification of the BMC whose IP address is to be modified and an IP address corresponding to the identification; According to the identification mapping relationship, modify the IP address of the BMC through the first IP address, where the first IP address is the IP address of the first network port of the control end server; The IP address of the BMC is verified by using the identification mapping relationship and the second IP address to obtain a verification result, where the second IP address is the IP address of the second network port of the control end server.
2. The method according to claim 1, characterized in that After obtaining the identification mapping relationship from the configuration file, the method further includes: Determine whether all IP addresses in the identification mapping relationship belong to the same network segment; If yes, then obtain the target network segment, which is the common network segment of all IP addresses in the identification mapping relationship; The second IP address is modified through the target network segment.
3. The method according to claim 1, characterized in that The modifying the IP address of the BMC by using the first IP address according to the identification mapping relationship includes: Connect to the target BMC through the first IP address; Obtaining a target identification code of the target BMC; Determine the target IP address corresponding to the target identification code according to the identification mapping relationship; The IP address of the target BMC is modified to the target IP address.
4. The method according to claim 4, characterized in that: The verifying the IP address of the BMC by using the identification mapping relationship and the second IP address to obtain the verification result includes: Determine whether the network segment of the second IP address is the same as the network segment of the target IP address; If not, modify the second IP address according to the network segment of the target IP address; The IP address of the target BMC is verified by using the modified second IP address to obtain a verification result.
5. The method according to claim 4, characterized in that The verifying the IP address of the target BMC by using the modified second IP address to obtain a verification result includes: Performing a ping test on the target IP address through the modified second IP address; If the ping succeeds, a verification result indicating that the verification has passed is generated; If the ping fails, a verification result indicating that the verification failed is generated.
6. A control end server, characterized in that: The control end server includes a first network port and a second network port, and the control end server includes: A first acquisition unit, used to acquire an IP address configuration file; A second acquisition unit is used to acquire an identification mapping relationship from the configuration file, where the identification mapping relationship includes an identification of the BMC whose IP address is to be modified and an IP address corresponding to the identification; A first modification unit, configured to modify the IP address of the BMC through a first IP address according to the identification mapping relationship, where the first IP address is the IP address of the first network port of the control end server; The verification unit is used to verify the IP address of the BMC through the identification mapping relationship and the second IP address to obtain a verification result, wherein the second IP address is the IP address of the second network port of the control end server.
7. The control end server according to claim 6, characterized in that: The control end server also includes: A judging unit, used to judge whether all IP addresses in the identification mapping relationship belong to the same network segment; A third acquisition unit, configured to acquire a target network segment when the judgment unit determines that all IP addresses in the identifier mapping relationship belong to the same network segment, wherein the target network segment is a common network segment of all IP addresses in the identifier mapping relationship; The second modification unit is used to modify the second IP address through the target network segment.
8. The control end server according to claim 6, characterized in that: The first modification unit is specifically used for: Connect to the target BMC through the first IP address; Obtaining a target identification code of the target BMC; Determine the target IP address corresponding to the target identification code according to the identification mapping relationship; The IP address of the target BMC is modified to the target IP address.
9. A control end server, characterized in that: The control end server includes a first network port and a second network port, and the control end server includes: Processor, memory, input-output unit, and bus; The processor is connected to the memory, the input and output unit, and the bus; A program is stored in the memory, and the processor calls the program to execute the method according to any one of claims 1 to 5. 10 . A computer-readable storage medium having a program stored thereon, wherein when the program is executed on a computer, the computer is caused to execute the method according to claim 1 .