Domain name resolution method and device, computer equipment and storage medium
By querying and replacing the IPv6 address with the IPv4 address of the same line in the DNS recursive server, the problem of low domain name resolution accuracy in the existing technology is solved, especially when processing the IPv6 format ECS IP address, it achieves higher resolution success rate and accuracy.
Patent Information
- Application Number
- CN202310675628.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-06-08
- Publication Date
- 2024-12-10
AI Technical Summary
The existing domain name resolution methods are low in accuracy, especially when dealing with ECS IP addresses carrying IPv6 format, authoritative servers may not be able to accurately identify IPv6 line information, resulting in failed resolution or inaccurate resolution.
By querying the line information of the ECS IP address in the DNS recursive server, and replacing the IPv4 address of the same line with the IPv6 address, an updated domain name resolution request is formed and sent to an authoritative server to improve resolution accuracy.
It improves the success rate and accuracy of domain name resolution, especially when dealing with ECS IP addresses in IPv6 format, and solves the problem of inaccurate identification of IPv6 addresses by authoritative servers.
Smart Images

Figure CN119109901A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of computer technology, and in particular to a domain name resolution method, apparatus, computer equipment, storage medium and computer program product. Background Art
[0002] With the development of computer technology, the number of various IP (Internet Protocol) addresses is increasing. In order to facilitate people's memory and use, the domain name system has emerged. The domain name system is a system that maps domain names that are easy for people to understand to corresponding IP addresses. The role of the domain name system is to allow users to access computers and services on the Internet through more friendly names without having to remember complex IP addresses.
[0003] Currently, when a client needs to resolve a domain name, it will directly send a domain name resolution request to the local recursive server. If the local recursive server cannot resolve the domain name, it will forward the domain name resolution request to other recursive servers, and so on, until it is forwarded to the authoritative server, which returns the IP address corresponding to the domain name resolution request. However, the accuracy of domain name resolution for domain name resolution requests is currently low. Summary of the invention
[0004] Based on this, it is necessary to provide a domain name resolution method, apparatus, computer device, computer readable storage medium and computer program product that can improve the accuracy of domain name resolution in response to the above technical problems.
[0005] In a first aspect, the present application provides a domain name resolution method. The method comprises:
[0006] Get domain name resolution request;
[0007] When the requesting end network address carried in the domain name resolution request belongs to the address format to be converted, determining the address line information to which the requesting end network address belongs;
[0008] Determine a request side translation address belonging to the address line information; the request side translation address belongs to an address format suitable for domain name resolution;
[0009] The requesting end network address carried in the domain name resolution request is updated by converting the requesting end address to obtain an updated domain name resolution request;
[0010] The updated domain name resolution request is sent to the domain name resolution server; the updated domain name resolution request is used to instruct the domain name resolution server to perform domain name resolution processing based on the updated domain name resolution request.
[0011] In a second aspect, the present application also provides a domain name resolution device. The device comprises:
[0012] Request acquisition module, used to obtain domain name resolution requests;
[0013] A line information determination module, used to determine the address line information to which the requesting end network address belongs when the requesting end network address carried in the domain name resolution request belongs to the address format to be converted;
[0014] A conversion address determination module is used to determine a request end conversion address belonging to address line information; the request end conversion address belongs to an address format suitable for domain name resolution;
[0015] An address update module is used to update the requesting end network address carried in the domain name resolution request by converting the address of the requesting end to obtain an updated domain name resolution request;
[0016] The request sending module is used to send the updated domain name resolution request to the domain name resolution server; the updated domain name resolution request is used to instruct the domain name resolution server to perform domain name resolution processing based on the updated domain name resolution request.
[0017] In a third aspect, the present application further provides a computer device, wherein the computer device comprises a memory and a processor, wherein the memory stores a computer program, and when the processor executes the computer program, the steps in the above domain name resolution method are implemented.
[0018] In a fourth aspect, the present application further provides a computer-readable storage medium having a computer program stored thereon, and when the computer program is executed by a processor, the steps in the above domain name resolution method are implemented.
[0019] In a fifth aspect, the present application further provides a computer program product, which includes a computer program, and when the computer program is executed by a processor, the steps in the above domain name resolution method are implemented.
[0020] The above-mentioned domain name resolution method, device, computer equipment, storage medium and computer program product obtain a domain name resolution request, when the requesting end network address carried in the domain name resolution request belongs to the address format to be converted, determine the address line information to which the requesting end network address belongs, determine the requesting end conversion address belonging to the address line information and whose address format is suitable for domain name resolution, update the requesting end network address carried in the domain name resolution request through the requesting end conversion address, obtain the updated domain name resolution request, and after the updated domain name resolution request is sent to the domain name resolution server, it is used to instruct the domain name resolution server to perform domain name resolution processing based on the updated domain name resolution request. In the domain name resolution process, when the requesting end network address carried in the domain name resolution request belongs to the address format to be converted, determine the requesting end conversion address belonging to the same address line information and whose address format is suitable for domain name resolution through the address line information to which the requesting end network address belongs, and update the requesting end network address according to the requesting end conversion address, obtain the updated domain name resolution request, and by sending the requesting end conversion address whose address format is suitable for domain name resolution to the domain name resolution server, it is beneficial for the domain name resolution server to perform domain name resolution processing based on the requesting end conversion address suitable for domain name resolution, thereby improving the accuracy of domain name resolution. BRIEF DESCRIPTION OF THE DRAWINGS
[0021] Figure 1 A diagram of an application environment of a domain name resolution method in an embodiment;
[0022] Figure 2 A schematic diagram of a flow chart of a domain name resolution method in one embodiment;
[0023] Figure 3 A flow chart of a domain name resolution method in one embodiment;
[0024] Figure 4 A flowchart of a step of determining address line information in one embodiment;
[0025] Figure 5 A flowchart of a domain name resolution method in one embodiment;
[0026] Figure 6 A flowchart of a domain name resolution method according to another embodiment;
[0027] Figure 7 A flowchart of building an information database in one embodiment;
[0028] Figure 8 A flowchart of a domain name resolution method in another embodiment;
[0029] Fig. 9 is a structural block diagram of a domain name resolution device in one embodiment;
[0030] Fig.10 FIG. 4 is a diagram showing the internal structure of a computer device in one embodiment. DETAILED DESCRIPTION
[0031] In order to make the purpose, technical solution and advantages of the present application more clearly understood, the present application is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.
[0032] The domain name resolution method provided in the embodiment of the present application can be applied to Figure 1 In the application environment shown. Among them, the terminal 102 communicates with the server 104 through the network. The data storage system can store the data that the server 104 needs to process. The data storage system can be integrated on the server 104, or it can be placed on the cloud or other servers. Among them, the terminal 102 can generate a domain name resolution request when there is a domain name resolution demand, and send the domain name resolution request to the server 104, and the server 104 will process the domain name resolution request. Optionally, in addition to the terminal 102 can generate and send a domain name resolution request, when there is any computer device in the Internet that has a domain name resolution demand, such as a client server has a domain name resolution demand, it can send a domain name resolution request to the server 104. If the server 104 does not cache the query result of the client server, the server 104 can forward the domain name resolution request to a higher-level domain name resolution server for resolution until the domain name resolution server containing the required information is found, and the query result is returned to the client server. In the process of specifically implementing the domain name resolution request, the server 104 can obtain the domain name resolution request sent by the terminal 102. When the requesting end network address carried in the domain name resolution request, that is, the network address of the client 102 carried by the requesting end network address belongs to the address format to be converted, the address line information to which the requesting end network address belongs is determined, and the requesting end conversion address belonging to the address line information is determined. The requesting end conversion address belongs to an address format suitable for domain name resolution. The server 104 updates the requesting end network address carried in the domain name resolution request through the requesting end conversion address, obtains an updated domain name resolution request, and sends the updated domain name resolution request to the domain name resolution server. The updated domain name resolution request is used to instruct the domain name resolution server to perform domain name resolution processing based on the updated domain name resolution request.
[0033] Among them, the terminal 102 can be, but is not limited to, various desktop computers, laptops, smart phones, tablet computers, Internet of Things devices and portable wearable devices. The Internet of Things devices can be smart speakers, smart TVs, smart air conditioners, smart car-mounted devices, etc. Portable wearable devices can be smart watches, smart bracelets, head-mounted devices, etc. The server 104 can be implemented with an independent server or a server cluster composed of multiple servers, and can also be a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, CDN, and big data and artificial intelligence platforms. The terminal and the server can be directly or indirectly connected via wired or wireless communication. Among them, the server 104 can specifically be a local DNS (Domain Name System, Domain Name System) recursive server (recursive DNS server), which can resolve domain names by sending domain name resolution requests to other DNS servers, such as authoritative servers (authoritative DNS server).
[0034] The cloud technology involved here refers to a hosting technology that unifies hardware, software, network and other resources within a wide area network or local area network to achieve data calculation, storage, processing and sharing. Cloud technology is a general term for network technology, information technology, integration technology, management platform technology, application technology, etc. based on the cloud computing business model. It can form a resource pool that can be used on demand and is flexible and convenient. Cloud computing technology will become an important support. The background services of the technical network system require a large amount of computing and storage resources, such as video websites, picture websites and more portal websites. With the high development and application of the Internet industry, in the future, each item may have its own identification mark, and all need to be transmitted to the background system for logical processing. Data of different levels will be processed separately. All kinds of industry data require strong system backing support, which can only be achieved through cloud computing.
[0035] Specifically, cloud computing refers to the delivery and use model of IT infrastructure, which means obtaining required resources through the network in an on-demand and easily scalable manner; in a broad sense, cloud computing refers to the delivery and use model of services, which means obtaining required services through the network in an on-demand and easily scalable manner. This service can be related to IT and software, the Internet, or other services. Cloud computing is the product of the development and integration of traditional computer and network technologies such as grid computing, distributed computing, parallel computing, utility computing, network storage technologies, virtualization, and load balancing. With the development of the Internet, real-time data streams, and the diversification of connected devices, as well as the promotion of search services, social networks, mobile commerce, and open collaboration, cloud computing has developed rapidly. Different from the previous parallel and distributed computing, the emergence of cloud computing will promote revolutionary changes in the entire Internet model and enterprise management model in terms of concept.
[0036] Cloud storage is a new concept that extends and develops from the concept of cloud computing. A distributed cloud storage system (hereinafter referred to as storage system) refers to a storage system that uses cluster applications, grid technology, and distributed storage file systems to bring together a large number of storage devices of various types (storage devices are also called storage nodes) in the network to work together through application software or application interfaces to provide data storage and business access functions. At present, the storage method of the storage system is to create a logical volume. When creating a logical volume, a physical storage space is allocated for each logical volume. The physical storage space may be composed of disks of a storage device or several storage devices. The client stores data on a logical volume, that is, the data is stored on the file system. The file system divides the data into many parts, each of which is an object. The object contains not only data but also additional information such as data identification (ID, ID entity). The file system writes each object into the physical storage space of the logical volume, and the file system records the storage location information of each object. Therefore, when the client requests to access the data, the file system can allow the client to access the data according to the storage location information of each object. The process of the storage system allocating physical storage space to a logical volume is as follows: based on the estimated capacity of the objects stored in the logical volume (this estimate often has a large margin relative to the actual capacity of the objects to be stored) and the grouping of independent redundant disk arrays (RAID, Redundant Array of Independent Disks), the physical storage space is pre-divided into stripes. A logical volume can be understood as a stripe, thereby allocating physical storage space to the logical volume.
[0037] In one embodiment, Figure 2 As shown, a domain name resolution method is provided. The method can be executed by a computer device. The computer device can include a server or a terminal. Specifically, it can be executed by a recursive server. In the embodiment of the present application, the method is applied to Figure 1 The server 104 in the example is used as an example to illustrate, and the following steps are included:
[0038] Step 202: Obtain a domain name resolution request.
[0039] Among them, the domain name resolution request can be issued by any computer device in the Internet when there is a need for domain name resolution, and can be used to request domain name resolution. Through domain name resolution, the domain name can be pointed to the Internet Protocol address corresponding to the domain name in the network, so that users can easily access computers and services on the Internet through the domain name. Domain name resolution can include the process of converting the domain name into a more computer-friendly address. The more computer-friendly address can be an address used to identify each site in the network, specifically an Internet Protocol address, that is, an IP address. Among them, the Internet Protocol address can be used to identify computer devices in the network. Each computer device connected to the network can be assigned an Internet Protocol address. Through the Internet Protocol address, the difference between each computer device in the network can be determined, and the connection between each computer device can also be determined.
[0040] The Internet Protocol address is not easy to remember, and it cannot display the name and nature of the address organization. The domain name is a character address corresponding to the Internet Protocol address on the network. It is easier to understand and remember than the Internet Protocol address. The domain name can be used to represent the name of a computer or computer group on the Internet, and is used to identify the electronic location of the computer during data transmission. The domain name can be composed of any combination of specific character sets of various languages, English letters, numbers and hyphens. When dividing domain names, there are many ways to divide them. Domain names can be divided into Chinese domain names, English domain names, Japanese domain names and domain names in other languages according to different languages; they can be divided into top-level domain names, second-level domain names and third-level domain names according to different domains where the domain names are located; they can be divided into commercial institutions or companies (.COM), non-profit organizations (.ORG), government departments (.GOV) and mainly for educational institutions (.EDU) according to different suffix forms, which can be used by universities and other institutions, as well as generic top-level domain names suitable for personal registration (.name).
[0041] The mapping relationship between domain names and Internet Protocol addresses is achieved through DNS (Domain Name System). DNS can be a service of the Internet and can be used as a distributed database to map domain names and Internet Protocol addresses. In the distributed database, the length of each level of domain name is limited to 63 characters, and the total length of the domain name can be kept within 253 characters. DNS maps domain names and Internet Protocol addresses to each other, allowing clients to access the Internet more conveniently without having to remember the Internet Protocol address string that can be directly read by computer devices.
[0042] Specifically, the server can obtain a domain name resolution request, and the domain name resolution request can be issued by any computer device on the Internet when accessing computers and services on the Internet. When a computer device needs to perform domain name resolution, it can generate a DNS message for transmission according to a pre-configured network protocol, that is, the DNS message is generated according to a pre-configured network protocol. The network protocol can specifically include ECS (EDNS Client Subnet, a protocol extension of DNS) protocol, TCP (Transmission Control Protocol, transmission control protocol), SFlow (Sample Flow, high-speed network monitoring), etc. For example, when the network protocol is the ECS protocol, the ECS protocol can allow the client to include information about its subnet in the domain name resolution request. The ECS protocol is very useful for using content distribution networks and other applications that need to be routed based on client location. It can help content distribution networks provide more efficient content distribution services and help other applications respond to user requests more accurately. In a specific implementation, the client accesses the domain name through a domain name that has a mapping relationship with the Internet Protocol address. For example, a domain name resolution request can be issued for the domain name www.example.com. In the DNS, the Internet Protocol address that has a mapping relationship with the domain name www.example.com, that is, the IP address, can be 192.0.2.1. For another example, a domain name resolution request can be issued for the domain name www.qq.com. In the DNS, the Internet Protocol address that has a mapping relationship with the domain name www.qq.com, that is, the IP address, can be 220.181.6.6.
[0043] Step 204: When the requesting end network address carried in the domain name resolution request belongs to the address format to be converted, determine the address line information to which the requesting end network address belongs.
[0044] Among them, the requesting end network address can be the network protocol address of the requesting end that issues the domain name resolution request. The requesting end can specifically be various types of computer devices in the network, such as a server or a terminal. The network protocol address can assign a logical address to each network and each host in the Internet to shield the difference in physical addresses. The network protocol address can specifically be an IP address (Internet Protocol Address). IP addresses can mainly include two major categories: IPv6 addresses (Internet Protocol Version 6) and IPv4 addresses (Internet Protocol Version 4). Different requesting ends can correspond to corresponding IP addresses. When the requesting end sends a domain name resolution request, the requesting end network address it carries is related to the communication protocol adopted by the requesting end, that is, the requesting end network address carried in the domain name resolution request can be an IPv4 address or an IPv6 address.
[0045] Among them, the address format to be converted may include an address format that needs to be converted, and the address format that needs to be converted may be an address format that is not suitable for domain name resolution, and specifically may be an address format that cannot be identified or cannot be accurately identified. Determining whether a request end conversion address needs to be converted is related to the actual request end conversion address resolution end. For some request end conversion address resolution ends, it is possible that the IPv6 format address needs to be converted in format. For some request end conversion address resolution ends, it is also possible that the IPv4 format address needs to be converted in format. When specifically determining whether the request end network address belongs to the address format to be converted, it can be determined in combination with the actual request end conversion address resolution end, domain name resolution scenario, etc. Among them, the address line information can be a general reference to information related to the ownership of the network protocol address, and the information related to the ownership of the network protocol address can include the region where the network protocol address is located, the operator to which the network protocol address belongs, etc. For example, when the information related to the ownership of the network protocol address is the region where the network protocol address is located and the operator to which the network protocol address belongs, the address line information can include China Guangdong Electric Power, China Shanghai Unicom, China Wuhan Telecom, etc. In addition to the region and operator, the information related to the ownership of the network protocol address may also include the time zone, postal code, coordinate geographical location, etc. to which the network protocol address belongs. The coordinate geographical location may include the longitude and latitude of the network protocol address. For example, when the information related to the ownership of the network protocol address includes the time zone and coordinate geographical location where the network protocol address is located, the address line information may include Beijing time zone, longitude: -73.9904, latitude: 40.7539; East 8th District, longitude: -23.4578, latitude: 19.8342, etc.
[0046] Specifically, the server obtains the domain name resolution request sent by the requester, and resolves the domain name resolution request to obtain the requester network address carried by the domain name resolution request. The requester network address obtained by resolution can be an address in IPv4 format or an address in IPv6 format. Further, the server can directly perform line analysis on the requester network address to determine the address line information to which the requester network address belongs. The server can also obtain a pre-set database storing the association relationship between the address line information and the requester network address, and determine the address line information to which the requester network address belongs in combination with the database. The server can obtain a pre-set determination condition for the address format to be converted, and determine whether the requester network address belongs to the address format to be converted according to the determination condition for the address format to be converted, such as when the requester network address is an address in IPv4 format, it is determined that the requester network address does not belong to the address format to be converted, and when the requester network address is an address in IPv6 format, it is determined that the requester network address belongs to the address format to be converted. If the requester network address belongs to the address format to be converted, the server can determine information related to the attribution of the requester network address. Among them, when the server determines the format of the requesting end network address carried in the domain name resolution request, it can make a judgment based on the attribute characteristics of the requesting end network address, such as distinguishing according to the byte length, character type, etc. of the requesting end network address, or it can make a judgment based on the identification information of the requesting end network address. When judging based on the byte length, the requesting end address greater than the byte length threshold can be determined as a first-class address by pre-setting a byte length threshold, and the requesting end address less than the byte length threshold can be determined as a second-class address. The first-class address can be an address in IPv6 format, and the second-class address can be an address in IPv4 format.
[0047] In the specific implementation, the server obtains the domain name resolution request 1 sent by device A in the network and the domain name resolution request 2 sent by device B in the network. The server resolves the domain name resolution request 1 of device A to obtain the requesting end network address of device A, which may be an address in IPv6 format; and resolves the domain name resolution request 2 of device B to obtain the requesting end network address of device B, which may be an address in IPv4 format. In the case where the IPv6 format address belongs to the address format to be converted, the server can directly send the domain name resolution request 2 of device B to the requesting end conversion address resolution end for resolution processing. For the requesting end network address in IPv6 format of device A, the server can determine the address line information to which the requesting end network address of device A belongs. For example, the address line information to which the requesting end network address of device A belongs may be China Wuhan Telecom.
[0048] Step 206, determining a requesting end conversion address belonging to the address line information; the requesting end conversion address belongs to an address format suitable for domain name resolution.
[0049] Among them, the address format of the request side conversion address can be an address format that can be accurately identified by the request side conversion address resolution end. Whether an address belongs to the request side network address suitable for domain name resolution is also related to the actual request side conversion address resolution end. For some request side conversion address resolution ends, the IPv6 format address may be the address format suitable for domain name resolution, then the IPv6 format address can be used as the request side conversion address; for some request side conversion address resolution ends, the IPv4 format address may be the address format suitable for domain name resolution, then the IPv4 format address can be used as the request side conversion address. When specifically determining whether a certain address format is a request side conversion address suitable for domain name resolution, it can be determined in combination with the actual request side conversion address resolution end, domain name resolution scenario, etc.
[0050] There may be a corresponding association relationship between the address line information and the request end conversion address. The association relationship may be specifically manifested as the same address line information may correspond to multiple request end conversion addresses. The multiple request end network addresses corresponding to the same address line information may be in different formats, while the same request end conversion address may correspond to only one address line information. For example, the same address line may include multiple IP address segments, and each address segment may correspond to multiple addresses. For example, for China Guangdong Telecom lines, three IP address segments such as 1.0.16.0 / 24, 1.0.17.0 / 24, and 1.0.18.0 / 24 may be included. In these three IP address segments, as long as the first 24 bits are 1.0.16, 1.0.17 or 1.0.18, and the last 8 bits are any number of IP addresses, they can all belong to China Guangdong Telecom lines.
[0051] Specifically, the server can directly determine the request-side conversion address that belongs to the same address line as the request-side network address and is in an address format suitable for domain name resolution based on the address line information. In specific implementation, when obtaining the request-side conversion address, the server can query and obtain the request-side conversion address corresponding to the request-side conversion address according to the address line information. For example, the server can pre-build a corresponding information library for the request-side conversion addresses corresponding to each type of address line information. When the server obtains the request-side conversion address, it can query and obtain it from the information library according to actual needs. The specific server can determine the address line information. After determining the address line information, the server can match the address line information with the pre-built information library to determine the request-side conversion address.
[0052] Step 208: Update the requesting end network address carried in the domain name resolution request by converting the requesting end address to obtain an updated domain name resolution request.
[0053] Specifically, updating the requester network address carried in the domain name resolution request may include a process of replacing the requester network address. The server may specifically use the requester conversion address to replace the requester network address carried in the domain name resolution request to obtain an updated domain name resolution request. In a specific application, when the address in the IPv6 address format belongs to the address format to be converted and the address in the IPv4 address format belongs to the address format applicable to domain name resolution, if the requester network address is an address in the IPv4 format, no replacement is required; if the requester network address is an address in the IPv6 format, the server determines the address line information to which the requester network address in the IPv6 format belongs, determines the requester conversion address in the IPv4 format that belongs to the same address line as the requester network address in the IPv6 format, and uses the requester conversion address in the IPv4 format to replace the requester network address in the IPv6 format to obtain an updated domain name resolution request. For another example, when an address in IPv4 address format belongs to an address format to be converted, and an address in IPv6 address format belongs to an address format suitable for domain name resolution, if the requesting end network address is an address in IPv6 format, no replacement is required; if the requesting end network address is an address in IPv4 format, the server determines the address line information to which the requesting end network address in IPv4 format belongs, and determines the requesting end conversion address in IPv6 format that belongs to the same address line as the requesting end network address in IPv4 format, and uses the requesting end conversion address in IPv6 format to replace the requesting end network address in IPV4 format to obtain an updated domain name resolution request.
[0054] Step 210, sending the updated domain name resolution request to the domain name resolution server; the updated domain name resolution request is used to instruct the domain name resolution server to perform domain name resolution processing based on the updated domain name resolution request.
[0055] The domain name resolution server may refer to a server used to resolve the updated domain name resolution request to obtain the network protocol address corresponding to the updated domain name resolution request. The domain name resolution server may be an authoritative DNS server, which may also be a DNS server responsible for maintaining DNS records under a specific domain name. The DNS records may include a mapping relationship between a domain name and an IP address, a mail server record, a TXT (Plain Text File) record, and the like.
[0056] Specifically, when the server sends the updated domain name resolution request to the domain name resolution server, if the resolution server address of the domain name resolution server has been determined in advance, the domain name resolution request can be directly forwarded to the domain name resolution server according to the resolution server address; if the local server is not clear about the resolution server address of the domain name resolution server, the local server can seek help from the root domain name server, and the root domain name server can tell the local server which top-level domain name server to query next. The top-level domain name server is responsible for managing the second-level domain names registered with the top-level domain name server. Through the top-level domain name server, the resolution server address of the resolution domain name server can be determined.
[0057] In specific implementation, if a host in the Internet needs to perform domain name resolution, for example, a host with a domain name of m.xyz.com intends to send an email to another host with a domain name of y.abc.com in the Internet, in this case, it is necessary to know the IP address of the host y.abc.com before the email can be sent. The host m.abc.com can first send a domain name resolution request to the server. If the domain name resolution request needs to be updated, the server can update the domain name resolution request to obtain the updated domain name resolution request. Further, the server can use iterative query to first query a root domain name server, and the root domain name server can return the IP address of the top-level domain name server to be queried next time. The server queries the top-level domain name server according to the IP address of the top-level domain name server, and the top-level domain name server can return the IP address of the authoritative server to be queried next time. The server can send an updated domain name resolution request to the authoritative server based on the IP address of the authoritative server, and the authoritative server can return the IP address of the host m.abc.com queried by the server based on the updated domain name resolution request. The server can tell the host with the domain name of m.xyz.com the IP address of the host m.abc.com obtained by the query.
[0058] In a specific application, such as Figure 3As shown, the domain name resolution request is processed by a recursive server, and the recursive server can generally be provided by a local network access server provider where the client is located, such as China Mobile, China Unicom, etc. In this embodiment, there are five modules, including a client, a recursive server, a database, a root server, a top-level domain name server, and an authoritative server. Among them, the client may include a computer device on the Internet that needs to perform domain name resolution, such as a terminal or a server. The recursive server is a server that recursively forwards the client's domain name resolution request to the domain name resolution server, obtains the domain name resolution result, caches the domain name resolution result, and returns the domain name resolution result to the client at the same time. Data related to the address can be stored in the database, such as address information data including the association relationship between the network protocol address and the address line information. The root server can be a main directory for managing the Internet. The root domain name server can store the address information of the top-level domain name server of each top-level domain name. The top-level domain names can include .edu for education, .cn for national, .com for functional, and .org for non-profit organizations. For example, for the domain name www.qq.com, after the recursive server sends a query request to the root domain name server, the root domain name server can return the top-level domain name server address of the top-level domain name server where .com is located. The top-level domain name server can be responsible for managing the second-level domain names registered under the top-level domain name server. For example, for the domain name www.qq.com, .com is the top-level domain name. After the recursive server sends a query request to the top-level domain name server, the top-level domain name server can return the authoritative server address of the authoritative server where qq.com is located. The authoritative server can be a server responsible for maintaining the correspondence between domain names and IP addresses in a certain area. The authoritative server can be used to resolve the domain name, obtain the corresponding IP address and return it to the recursive server, and finally return it to the terminal.
[0059] In the specific process of domain name resolution, when the client has a domain name resolution requirement, a domain name resolution request can be generated based on a network protocol, such as the ECS protocol, and the domain name resolution request can be sent to the recursive server. The domain name resolution request can carry the client's own IP address and the domain name to be queried. After obtaining the domain name resolution request, the recursive server can first query whether the domain name resolution result corresponding to the domain name carried in the domain name resolution request is stored in its own cache. For example, when the server receives a domain name resolution request for the domain name www.qq.com, it can first query whether there is an IP address corresponding to the domain name www.qq.com in its own cache. If so, the recursive server can directly return the domain name resolution result and explain the domain name resolution process.
[0060] When the recursive server determines that the domain name resolution result corresponding to the domain name carried in the domain name resolution request is not stored in its own cache, the domain name resolution request can be resolved to obtain the network protocol address of the client carried in the domain name resolution request, and combined with the characteristics of the network protocol address, the network protocol address is analyzed to determine whether it belongs to the address format to be converted. In this embodiment, if the network protocol address of the client is an address in IPv6 format, it is determined to be an address format to be converted. When the network protocol address of the client is a network protocol address in IPv6 format, the recursive server can send a query request to the database to query the address line information to which the network protocol address of the client in IPv6 format belongs, and determine the client conversion address in IPv4 format that belongs to the same address line as the network protocol address of the client in IPv6 format, and use the client conversion address in IPv4 format to replace the network protocol address of the client in IPv6 format, and obtain an updated domain name resolution request. Among them, the database can be a database stored in the cloud, or it can be a local database of the recursive server.
[0061] Based on the updated domain name resolution request obtained, the recursive server can adopt iterative query and obtain the domain name resolution result by forwarding the domain name resolution request. Among them, the recursive server can first query the top-level domain name server address of the top-level domain name server from a root domain name server. The root domain name server can return the IP address of the top-level domain name server related to the recursive server in combination with the domain name information in the domain name resolution request. The recursive server accesses the top-level domain name server according to the IP address of the top-level domain name server. The top-level domain name server can feedback the IP address of the authoritative server that the recursive server should query next in combination with the domain name information in the domain name resolution request. The recursive server sends a domain name resolution request to the authoritative server according to the IP address of the authoritative server. The authoritative server can perform resolution processing in combination with the client address and domain name in the domain name resolution request to obtain the domain name resolution result. Among them, when the authoritative server performs resolution processing based on the client address and domain name, it can determine the ownership of the client address, and then find the address line information corresponding to the client address according to the address information database corresponding to the client address, such as the ownership information including the country, province and operator, so as to determine what IP address should be responded to the client. It is very useful for using CDN (Content Delivery Network) and other applications that need to be routed based on the client location. The client address can help CDN provide more efficient content distribution services and help other applications respond to user requests more accurately. Combined with the client address, the authoritative server can eventually return the resource record that best matches the domain name.
[0062] The authoritative server feeds back the resolution result to the recursive server, and the recursive server finally tells the client the resolution result. The figure does not show the situation where the network protocol address does not belong to the address format to be converted. When the network protocol address does not belong to the address format to be converted, the recursive server can directly query the root domain name server and the top-level domain name server to find the authoritative server, and send the domain name resolution request to the authoritative server, which performs domain name resolution and obtains the domain name resolution result.
[0063] In the above domain name resolution method, a domain name resolution request is obtained, and when the requesting end network address carried in the domain name resolution request belongs to the address format to be converted, the address line information to which the requesting end network address belongs is determined, and the requesting end conversion address belonging to the address line information and whose address format is applicable to domain name resolution is determined, and the requesting end network address carried in the domain name resolution request is updated by the requesting end conversion address to obtain an updated domain name resolution request, and the updated domain name resolution request is sent to the domain name resolution server to instruct the domain name resolution server to perform domain name resolution processing based on the updated domain name resolution request. In the domain name resolution process, when the requesting end network address carried in the domain name resolution request belongs to the address format to be converted, the requesting end conversion address belonging to the same address line information and whose address format is applicable to domain name resolution is determined by the address line information to which the requesting end network address belongs, and the requesting end network address is updated according to the requesting end conversion address to obtain an updated domain name resolution request, and by sending the requesting end conversion address whose address format is applicable to domain name resolution to the domain name resolution server, it is beneficial for the domain name resolution server to perform accurate domain name resolution processing based on the requesting end conversion address applicable to domain name resolution, thereby improving the accuracy of domain name resolution.
[0064] In one embodiment, Figure 4 As shown, the step of determining the address line information, when the requesting end network address carried by the domain name resolution request belongs to the address format to be converted, determining the address line information to which the requesting end network address belongs includes:
[0065] Step 402: When the requesting end network address carried in the domain name resolution request belongs to the address format to be converted, an address information base is obtained; the address information base includes address line information to which various network addresses belong respectively.
[0066] Among them, the address information library can be an information library including address line information to which various network addresses belong respectively, and the network address can be a network protocol address, and each network protocol address can correspond to corresponding address line information. Through the address information library, the server can determine the address line information to which any network address belongs. The address information library can be a database stored in the cloud or a database stored locally. Specifically, when the server determines that the requesting end network address belongs to the address format to be converted, it can obtain the address information library from the cloud or from the local cache of the server.
[0067] Step 404, querying from the address information database to obtain the address line information to which the requesting end network address belongs.
[0068] Specifically, when the address information database is a database stored in the cloud, when the address line information query is needed, the server can first query whether there is address line information to which the requesting end network address belongs in its own local cache. If the address information to which the requesting end network address belongs does not exist in the local cache, then query from the address information database stored in the cloud, thereby obtaining the address line information to which the requesting end network address belongs. When the address information database is a database stored locally on the server, the server can first query the address information database. If the address information to which the requesting end network address belongs does not exist in the local address information database, then query from the database stored in the cloud, thereby obtaining the address line information to which the requesting end network address belongs. In a specific application, when the server queries the address line information of the requesting end network address from the address information database, the requesting end network address can be matched with the network address in the address information database. If it is determined that there is a network address matching the requesting end network address in the address information database, the server can determine the address line information corresponding to the network address matching the requesting end network address as the address line information to which the requesting end network address belongs.
[0069] In this embodiment, when the requesting end network address carried in the domain name resolution request belongs to the address format to be converted, the server obtains the address information library and directly queries the address information library to obtain the address line information to which the requesting end network address belongs. Determining the address line information by querying the address information library not only has an advantage in query speed, but also improves the accuracy of the determined address line information, thereby improving the accuracy of domain name resolution as a whole.
[0070] In one embodiment, the address information database includes a local address information database; the domain name resolution method also includes: constructing a local initial address information database; obtaining address information data from a cloud address information database according to an address information acquisition cycle; and updating the local initial address information database based on the address information data to obtain a local address information database.
[0071] Among them, the local address information base can be an address information base stored locally, and the local address information base can be specifically stored in the shared memory of the server. The local initial address information base can be an address information base established according to certain standards. Due to the iterative update of address information data, the local initial address information base can be updated in a timely manner to obtain a local address information base that can support domain name resolution requests. Among them, updating the local initial address information base can include directly adding address information data in the local address information base, and can also include deleting inactive network addresses and their corresponding address line information and then adding address information data. Inactive network addresses can include network addresses in remote areas and network addresses that are basically not matched during the query process.
[0072] The cloud address information database may be a database stored in the cloud, and the cloud address information database may include relatively comprehensive address information data. The address information data of the cloud database may come from a third-party platform, and the third-party platform may include an IP address database, a Geo IP address database (geographic IP, geographic location address database), etc. The address information data may be data used to characterize the association between a network protocol address and address line information. The address information acquisition cycle may be a set cycle for updating the local initial address information database of the cloud address information database. The address information acquisition cycle may be a set time interval or a set time point. When it is determined that the address information acquisition cycle has been reached, the address information data may be obtained from the cloud address information database, and the local initial address information database may be updated to obtain the local address information database.
[0073] Specifically, the server can construct a local initial address information database according to a preset information database construction condition, wherein when setting the information database construction condition, it can be set in combination with the amount of data that the address information database can support, the address range of the network protocol address that needs to be included in the address information database, the type of address line information, etc. Further, when the server determines that the address information acquisition cycle has been reached, it can obtain address information data from the cloud address information database, and add the obtained address information data to the local initial address information database, thereby updating the local initial information database to obtain the local address information database. Among them, when the address information acquisition cycle is set according to the time interval, such as the time interval is 48 hours, then when the time interval between the last update time and the current time is 48 hours, it is determined that the address information acquisition cycle has been reached. When the address information acquisition cycle is a set time point, such as 9 am every day, it is determined that the address information acquisition cycle has been reached when the time is 9 am every day.
[0074] In one embodiment, the server may also be provided with a data byte length threshold. The server may determine the amount of data in the local initial address information base, that is, the data byte length in the local initial address information base, and compare the data byte length in the local initial address information base with the data byte length threshold. When it is determined that the data byte length in the local initial address information base is greater than or equal to the data byte length threshold, it indicates that the update condition of the local initial address information base is met. The server may delete the address information data in the local initial address information base in accordance with the actual situation to obtain an updated local address information base, thereby releasing the resources of the local address information base in a timely manner and optimizing the storage performance of the information base.
[0075] In this embodiment, when the server determines that the address information acquisition cycle has been reached, the server acquires the address information data, and updates the constructed local initial address information database according to the acquired address information data to obtain the local address information database. By timely updating the local initial address information database, a local address information database that can support the domain name resolution request is obtained, thereby improving the accuracy of the domain name resolution.
[0076] In one embodiment, the domain name resolution method also includes: when there is a network address to be corrected in the address information base, obtaining address line information matching the network address to be corrected; the network address to be corrected does not match the address line information to which the network address to be corrected recorded in the address information base belongs; in the address information base, updating the address line information matching the network address to be corrected to the address line information to which the network address to be corrected belongs.
[0077] Among them, when the network address recorded in the address information database does not match the address line information, that is, there is an error in the association relationship between the network address and the address line information, it can be characterized that there is a network address to be corrected in the address information database. Among them, when determining whether there is an error in the association relationship between the network address and the address line information, it can be determined by a higher-level server, and the higher-level server can be an authoritative server. For example, the authoritative server determines that the association relationship between the network address and the address line information is wrong after parsing the network address. When determining whether there is an error in the association relationship between the network address and the address line information, it can also be determined in combination with the association relationship between the network address and the address line information stored in a more credible database; when determining whether there is an error in the association relationship between the network address and the address line information, it can also be determined after comparing based on the network resources of the third-party platform. The specific method of determining whether the network address recorded in the address information database matches the address line information can be adaptively set in combination with actual server resources, accuracy requirements, etc.
[0078] Specifically, the server may be preset with a network address detection cycle. Each time the network address detection cycle is reached, the network address in the address information database and its associated address line information are detected to determine whether the address information database contains the network address to be corrected, wherein the server may determine whether the address information database contains the network address to be corrected based on the network resources of the third-party platform. When the server determines that there is an error in the association between the network address and the address line information in the address information database, the address line information matching the network address may be retrieved from a more reliable database, thereby updating the retrieved address line information to the address line information to which the network address to be corrected belongs. For example, in the address information database, there is a network address 1.1.1.1, and its associated address line information is the Guangdong Radio and Television line. The server detects that the address line information associated with the network address 1.1.1.1 should actually be the Guangdong Telecom line. In this case, the Guangdong Telecom line may be used to replace the Guangdong Radio and Television line to which the network address 1.1.1.1 belongs.
[0079] In a specific application, the authoritative server can issue instructions to the address information database, thereby dynamically adjusting the line information in the address information database through instructions. For example, the IP address 2.2.2.2 is identified as a Shanghai Telecom line in the address database, but the authoritative server identifies the address line information of the IP address 2.2.2.2 as a Shanghai Unicom line during the domain name resolution process. The authoritative server can issue instructions to the address database to correct the address line information of the IP address 2.2.2.2, that is, to update the Shanghai Telecom line to which the IP address 2.2.2.2 belongs to a Shanghai Unicom line.
[0080] In this embodiment, when the server determines that there is an error in the association between the network address and the address line information in the address information database, it obtains the address line information and promptly updates the address line information to which the network address to be corrected belongs, thereby ensuring the accuracy of the address database and improving the accuracy of domain name resolution.
[0081] In one embodiment, when the requesting end network address carried by the domain name resolution request belongs to the address format to be converted, determining the address line information to which the requesting end network address belongs, including: when the domain name resolution request carries a requesting end extension field, obtaining the requesting end extension information associated with the requesting end extension field from the domain name resolution request; when the address indication information included in the requesting end extension information indicates that the requesting end network address carried by the domain name resolution request belongs to an address format not suitable for domain name resolution, determining the address line information to which the requesting end network address carried by the domain name resolution request belongs.
[0082] Among them, the requester extension field can be a newly added field based on the existing fields of the requester, and the requester extension field can store additional address-related information of the domain name requester. The requester extension field can be implemented based on the ECS protocol. The ECS protocol is very useful for using content distribution networks and other applications that need to be routed based on client locations. It can help CDN provide more efficient content distribution services and help other applications respond to user requests more accurately. Among them, the requester extension information can be information extracted from the requester extension field, and the requester extension information can be information related to the address of the domain name requester. The information related to the address of the domain name requester can include the domain name requester network information of the domain name requester, and the domain name requester network information can include the IP address and subnet mask of the domain name requester. Through the domain name extension information, the authoritative server can better determine what IP address should be responded to the domain name requester, and improve the accuracy and response speed of the DNS query. The address indication information can be information used to determine whether the requester network address is an address format that is not suitable for domain name resolution. The address indication information can be specifically used to indicate whether the domain name resolution request is a message generated based on a preset network protocol, and indicate the format of the domain name requester address carried in the domain name resolution request.
[0083] Among them, the existing fields on the request side may include header fields, query area fields, answer area fields, and authorization area fields. The header field may be a field carried by each domain name resolution request. The header field may be used to determine the structure of the domain name resolution request and the response content. Different domain name resolution requests may carry different header fields. The query area field may be used to display the problem of the domain name resolution request. The query area field may include the host name being queried, the query type, and the query class. Among them, the queried host name may be the domain name to be queried, or it may be an IP address. The IP address may be used for reverse query. The query type may be the resource type of the domain name resolution request. When the query type is A type request, it may indicate that the corresponding IP address is obtained from the domain name. The query class may refer to the address type, usually an Internet address, and the value may be 1. The answer area field may include a resource record for the domain name resolution request. The resource record may include information such as the requested domain name, query type, data length, and resource data. The authorization area field may be a record of relevant information of the authoritative server corresponding to the domain name in the domain name resolution request.
[0084] Specifically, the server obtains a domain name resolution request, and performs resolution processing on the domain name resolution request to determine whether the domain name resolution request includes a request side extension field, wherein the request side extension field may specifically refer to an EDNS0 (Extension mechanisms for DNS, DNS extension mechanism) option field, and when the domain name resolution request carries a request side extension field, obtains request side extension information associated with the request side extension field from the domain name resolution request. Further, the server may extract address indication information from the request side extension information, and based on the extracted address indication information, determine whether the request side network address is in an address format that is not suitable for domain name resolution. The address indication information may specifically be a field value, and the server may determine whether the domain name resolution request is a message sent based on a preset network protocol, and determine the format of the request side network address carried by the domain name resolution request, through the field value. When the server determines that the domain name resolution request is a message sent based on the ECS protocol, and the format of the requester network address carried in the domain name resolution request is the set address format that requires address conversion, if the format that requires address conversion is an address in IPv6 format, then the requester network address is determined to be an address format that is not suitable for domain name resolution, and the address line information to which the requester network address carried in the domain name resolution request belongs is determined.
[0085] In a specific implementation, the server can determine whether to include the EDNS0 option based on a preset identifier, and the preset identifier can be any identifier that can be used for identification, such as numbers, letters, and feature codes, as long as the extended field and the existing field can be distinguished. When the server determines that the EDNS0 option is included, the address indication information can be extracted according to the address indication field in the EDNS0 option, wherein the address indication field can include the OPTION-CODE (option code) field and the FAMILY (address family) field. The server can extract the values of the OPTION-CODE (option code) field and the FAMILY (address family) field as the address indication information. Specifically, when the value of OPTION-CODE is 0x08, it can be indicated that the domain name resolution request is a query message containing ECS related information, and when the value of the FAMILY field is 0x02, it can be indicated that the requesting end network address carried is in IPv6 format. If there is no EDNS0 option in the domain name resolution request, or the domain name resolution request is not a query message containing ECS related information, or the IP address in the EDNS0 option is not in IPv6 format, the server can directly forward the domain name resolution request to the authoritative server.
[0086] In this embodiment, the server obtains the request side extension information associated with the request side extension field, and determines whether the request side network address carried by the domain name resolution request belongs to the address format to be converted through the address indication information included in the request side extension information, which can improve the success rate and accuracy of domain name resolution in the domain name resolution scenario.
[0087] In one embodiment, determining the address line information to which the requesting end network address carried in the domain name resolution request belongs includes: obtaining the requesting end address information and address valid bit information from the requesting end extension information; obtaining the requesting end network address carried in the domain name resolution request according to the requesting end address information and address valid bit information, and determining the address line information to which the requesting end network address belongs.
[0088] The requester address information may include the requester IP address actually carried by the domain name resolution request. For example, the requester IP address actually carried by the domain name resolution request may include addresses in various formats such as 1.1.1.1, ffff:192.168.89.9, 2000:0:0:0:0:0:0:0:1, etc. The address valid bit information may be used to describe the valid bits of the requester IP address. For addresses of different formats, the corresponding address valid bit information may be different. For example, for an address in IPv6 format, the valid bits of the address may be the left eight bits of the IPv6 address, while for an address in IPv4 format, the valid bits of the address may be the left 24 bits of the IPv6 address.
[0089] Specifically, the server can parse the requester extension information, thereby extracting the requester address information and address valid bit information from the requester extension information, and both the requester address information and address valid bit information can be field values. Through the requester address information and address valid bit information, the requester network address actually used in the address line information query process can be determined. By determining the requester network address actually used in the query process, on the one hand, the amount of data can be reduced and the query efficiency can be improved; on the other hand, the interference caused by invalid information can be reduced, and the query accuracy can be improved, thereby improving the accuracy of domain name resolution. In a specific application, the requester address information can be the field value extracted by the server from the address field, and the address valid bit information can be the field value extracted by the server from the SOURCE PREFIX-LENGTH (the leftmost valid bit of the address covered by the response) field. The server can determine the ECS IP actually used in the query process according to the field value of the ADDRESS field and the field value of the SOURCE PREFIX-LENGTH field in the EDNS0 option. The ECS IP refers to the IP address information of the requester included in the ECS protocol.
[0090] In this embodiment, the server can parse the requester extension information, extract the requester address information and address valid bit information from the requester extension information, and determine the requester network address actually used in the address line information query process according to the requester address information and address valid bit information. This can not only reduce the amount of data during the query and improve the query efficiency, but also reduce the interference caused by invalid information, improve the query accuracy, and thus improve the accuracy of domain name resolution.
[0091] In one embodiment, the requesting side network address carried in the domain name resolution request is updated by converting the address of the requesting side to obtain an updated domain name resolution request, including: in the domain name resolution request, determining the requesting side address field carrying the requesting side network address; updating the field content of the requesting side address field by converting the address of the requesting side to obtain an updated domain name resolution request.
[0092] Among them, the request end address field may be a field included in the request end extension field, and the request end address field may include the request end address information, that is, the request end address information can be read from the request end address field, and the field content of the request end address field may include the request end network address. Specifically, the server may determine the request end address field carrying the request end network address in the domain name resolution request according to the pre-set request end address field identifier, and the request end address field may specifically be the ADDRESS field, and further update the field content of the ADDRESS field in combination with the determined request end conversion address to obtain an updated domain name resolution request.
[0093] In this embodiment, the server converts the address based on the requesting end, updates the field content of the ADDRESS field, implements the update of the domain name resolution request, and obtains the updated domain name resolution request, so that the address sent to the authoritative server is an address in an address format suitable for domain name resolution, which can improve the accuracy of domain name resolution.
[0094] In one embodiment, the field content of the request side address field is updated by converting the address of the request side, including: updating the field content of the request side address field to the request side conversion address; updating the field content of the address indication field in the domain name resolution request to the field content indicating the address format of the request side conversion address; updating the field content of the address valid bit field in the domain name resolution request to the field content indicating the address valid bit information of the request side conversion address.
[0095] Among them, the field content of the address indication field may include address indication information, and the field content of the address valid bit field may include address valid bit information. The field content of the address indication field and the field content of the address valid bit field may be closely related to the content of the request end address field. When the field content of the request end address field changes, the field content of the address indication field and the field content of the address valid bit field may also be synchronously updated based on the field content of the updated request end address field to ensure that the request end address related information for the same request end in the request end extension field is accurate.
[0096] Specifically, the server can replace the field content of the request side address field based on the request side conversion address, that is, replace the request side network address in the request side address field to update the field content of the request side address field. After the request side network address in the request side address field is replaced, the address indication information of the address indication field and the address valid bit information of the address valid bit field in the domain name resolution request can be updated to information that matches the request side conversion address. In a specific application, when the request side network address is an address in IPv6 format and the request side conversion address is an address in IPv4 format, the server can replace the request side network address in IPv6 format of the request side address field according to the request side conversion address in IPv4 format, and the address indication information and address valid bit information originally related to the request side network address in IPv6 format will also be updated synchronously. For example, when the requesting side network address is in IPv6 format, the value of the FAMILY field is 0x02, the left eight bits of the effective number of the SOURCE PREFIX-LENGTH field, and when the requesting side network address in IPv6 format is replaced with the requesting side conversion address in IPv4 format, the value of the FAMILY field can be updated to 0x04, the left 24 bits of the effective number of the SOURCE PREFIX-LENGTH field.
[0097] In this embodiment, the server can replace the field content of the request side address field based on the request side conversion address. After the request side network address in the request side address field is replaced, the address indication information and the address valid bit information can be updated to information that matches the request side conversion address. Through this update mechanism, when the subsequent authoritative server performs domain name resolution based on the request side extension information, it can accurately determine the actual use address of the request side conversion address through the updated address indication information and address valid bit information, thereby improving the accuracy of domain name resolution.
[0098] In one embodiment, determining the request end conversion address belonging to the address line information includes: obtaining a conversion address library; the conversion address library includes the conversion address belonging to each address line information; and querying and obtaining the request end conversion address belonging to the address line information from the conversion address library.
[0099] The conversion address library may refer to a database that may include the association between address line information and conversion addresses, and the conversion address library may be stored in the cloud or locally. Specifically, when the server queries the request-side conversion address belonging to the address line information according to the conversion address library, the address line information to which the request-side network address belongs may be matched with various types of address line information in the conversion address library. If it is determined that there is address line information in the conversion address library that matches the address line information to which the request-side network address belongs, the server may determine the conversion address corresponding to the address line information as the request-side conversion address.
[0100] In this embodiment, when determining the request end conversion address belonging to the address line information, the server obtains the conversion address library and directly queries the conversion address library to obtain the request end conversion address. Determining the request end conversion address by querying the conversion address library not only has an advantage in query speed, but also improves the accuracy of the determined request end conversion address, thereby improving the accuracy of domain name resolution as a whole.
[0101] In one embodiment, the domain name resolution method also includes: obtaining an address information database, the address information database including address line information to which various network addresses belong respectively; determining conversion addresses belonging to various address line information according to the association relationship between various network addresses and the address line information in the address information database; and obtaining a conversion address database based on the conversion addresses belonging to various address line information.
[0102] The conversion address library may be an address library obtained based on the address information library, such as filtering the network addresses in the address information library according to the preset address filtering conditions to obtain the conversion address library. The conversion address library stores the network addresses in the address format applicable to the domain name resolution and the address line information to which they belong respectively. If the address format applicable to the domain name resolution is the network address in IPv6 format, the conversion address library may store the network addresses in IPv6 format and the address line information to which they belong respectively; if the address format applicable to the domain name resolution is the network address in IPv4 format, the conversion address library may store the network addresses in IPv4 format and the address line information to which they belong respectively.
[0103] Specifically, the server can screen the network addresses in the address information library according to the pre-set address generation conditions, determine the conversion addresses belonging to various address line information, and obtain the conversion address library based on the conversion addresses belonging to various address line information. Among them, the address generation conditions can limit the address format of the network address in the conversion address library, the number of network addresses corresponding to the same address line information, and the selection method of the network address associated with the address line information. When setting the address generation conditions, they can be set in combination with the actual domain name resolution scenario, domain name resolution accuracy requirements, etc.
[0104] In a specific application, the server can generate an IPv4 address set based on the local IP address information database according to the set address generation conditions. The address generation conditions may include: each line of the IP address information database corresponds to an IPv4 address in the address set; each line of the information database may have multiple corresponding IPv4 address segments, and the DNS recursive server randomly selects one of the address segments and adds it to the set as the IPv4 address of the line; the address set is stored in the shared memory of the server, and when the local IP address information database is adjusted, the system will also update the IPv4 address set accordingly.
[0105] In this embodiment, the server determines the conversion addresses belonging to various address line information according to the association between various network addresses and the address line information in the address information library, and obtains the conversion address library based on the conversion addresses belonging to various address line information. By determining the conversion address library, the request end conversion address belonging to the same line as the request end network address can be accurately determined, thereby improving the accuracy of domain name resolution.
[0106] In one embodiment, the domain name resolution method also includes: when the requesting end network address carried by the domain name resolution request does not belong to the address format to be converted, or the domain name resolution request does not carry the requesting end network address, sending the domain name resolution request to the domain name resolution server; the domain name resolution request is used to instruct the domain name resolution server to perform domain name resolution processing based on the domain name resolution request.
[0107] Among them, when the network address of the requesting end does not belong to the address to be converted, it may mean that the network address of the requesting end does not need to be converted in format. The server can directly send the domain name resolution request carrying the domain name resolution request that does not need to be converted in format to the domain name resolution server, thereby instructing the domain name resolution server to perform domain name resolution processing based on the domain name resolution request. The domain name resolution request does not carry the network address of the requesting end, which may mean that the network address of the requesting end is not resolved from the domain name resolution request. In this case, the server can also directly send the domain name resolution request to the domain name resolution server, thereby instructing the domain name resolution server to perform domain name resolution processing based on the domain name resolution request.
[0108] Specifically, when the server determines that the requesting end network address carried by the domain name resolution request does not belong to the address format to be converted, or determines that the domain name resolution request does not carry the requesting end network address, the server can directly send the domain name resolution request to the authoritative server for processing. In a specific application, in the case where the domain name resolution request does not carry the requesting end network address, the server can also first determine the requesting end network address of the requesting end, and after determining the requesting end network address of the requesting end, regenerate the message according to the ECS protocol. Among them, if the requesting end network address of the requesting end is an address in IPv6 format, the server can convert the PV6 format address into an IPv4 format address and add it to the message, and then forward it to the domain name resolution server. If the requesting end network address of the requesting end is an address in IPv4 format, the server can directly add the PV4 format address to the message and forward it to the domain name resolution server.
[0109] In this embodiment, when the server determines that the requesting end network address carried in the domain name resolution request does not belong to the address format to be converted, or the domain name resolution request does not carry the requesting end network address, it will directly send the domain name resolution request to the domain name resolution server for domain name resolution processing, which can improve the efficiency of domain name resolution.
[0110] In one embodiment, the domain name resolution method further includes: obtaining a domain name resolution result returned by a domain name resolution server; and forwarding the domain name resolution result to a requesting end that issues a domain name resolution request.
[0111] Specifically, the server may send the updated domain name resolution request to the domain name resolution server, which may be an authoritative server. The server may send a domain name resolution request to the authoritative server according to the IP address of the authoritative server, and the authoritative server may perform resolution processing in combination with the client address and the domain name in the domain name resolution request to obtain the domain name resolution result. When the authoritative server performs resolution processing according to the conversion address and the domain name of the requesting end, it may determine the ownership of the conversion address of the requesting end, and then search for the address line information corresponding to the conversion address of the requesting end according to the address information library corresponding to the conversion address of the requesting end, such as the ownership information including the country, province and operator, and finally return the resource record that best matches the domain name, that is, the IP address with a mapping relationship with the domain name to be queried, such as the IP address of a certain website. When the server receives the domain name resolution result returned by the authoritative server, it may store the domain name query result of the domain name, and forward the domain name resolution result to the requesting end that issued the domain name resolution request, thereby completing the domain name resolution process, and the requesting end may access the website based on the IP address of the website.
[0112] In this embodiment, the server can obtain the domain name resolution result returned by the domain name resolution server, and forward the domain name resolution result to the requesting end that issued the domain name resolution request, thereby completely completing the domain name resolution.
[0113] The present application also provides an application scenario, and the application scenario applies the above domain name resolution method. Specifically, the application of the domain name resolution method in the application scenario is as follows:
[0114] In the domain name resolution scenario, when any computer device on the Internet, such as a user terminal or server, needs to resolve a domain name, it can initiate a DNS request to a DNS recursive server. DNS refers to the Domain Name System, which can map domain names that are easy for people to understand, such as the domain name www.example.com, to corresponding IP addresses, such as 192.0.2.1. The role of DNS is to allow users to access computers and services on the Internet through more friendly names without having to remember complex IP addresses. Among them, a DNS recursive server is a DNS server that can resolve domain names by forwarding DNS requests to other DNS servers. A DNS request is a domain name resolution request. In the process of using a DNS recursive server to process a domain name resolution request, if there is a client that needs to resolve a domain name, it can send a query request to a local DNS recursive server. If the local DNS recursive server does not cache the query result of the domain name resolution request, the DNS recursive server can send a domain name resolution request to a higher-level DNS server, such as an authoritative server, until a DNS server containing the required information is found, and the domain name resolution result is returned to the client. Among them, the DNS authoritative server can also be a DNS server that is responsible for maintaining the DNS records under a specific domain name, including the mapping relationship between the domain name and the IP address, the records of the mail server, TXT records, etc. When the DNS recursive server receives a query request, if it is not in the local cache, it will send a query request to the DNS authoritative server to obtain the DNS record of the domain name.
[0115] When a client initiates a DNS resolution request, if the DNS resolution request message carries an ECS (EDNS Client Subnet, a protocol extension in DNS) IP in IPv6 format, it often faces resolution failure or inaccurate resolution. In DNS, ECS IP refers to the client's IP address information included in the ECS protocol. ECS allows DNS clients to include information about their subnets in DNS queries. This subnet information can help DNS servers identify and respond to DNS queries more accurately. When a DNS client sends a query request to a DNS server, the ECS protocol can include information about the client's subnet in the EDNS0 option field, such as the client's IP address and subnet mask. This information can help the DNS server better determine what IP address should be responded to the client and improve the accuracy and response speed of DNS queries. The ECS protocol is very useful for using content distribution networks and other applications that need to be routed based on client location. It can help content distribution networks provide more efficient content distribution services and help other applications respond to user requests more accurately.
[0116] When the current authoritative DNS server processes resolution requests, there are usually the following two problems: some authoritative servers only support processing ECS messages with IPv4 format; compared with IPv4 addresses, the total amount of IPv6 addresses is larger and the scale of use is smaller, which results in most authoritative servers not having a sound IPv6 address information database and being unable to accurately identify IPv6 line information. Currently, for DNS messages that already carry ECS IP, when obtaining the resolution result, the DNS recursive server will choose to directly forward the DNS message to the authoritative server as is, and will not modify the ECS IP of the message.
[0117] Among them, in the current domain name resolution process, after receiving the resolution request from the client each time, the DNS recursive server will add the IP address with the same geographical location as the client IP as the ECS address to the query message, and forward the modified query message to the authoritative server. The authoritative server can return a more accurate resolution result by identifying the ECS address in the message. In this domain name resolution process, there is no special processing for the DNS message that already carries the ECS IP, but the ECS address is added to the DNS query message to improve the resolution quality.
[0118] In response to the above situation, the present application proposes a domain name resolution method suitable for IPv6, which is applied on a DNS recursive server. Through the DNS recursive server in the present application, it is possible to effectively process ECS messages in IPv6 format contained in client requests, thereby improving the success rate and accuracy of resolving such messages.
[0119] The domain name resolution method proposed in this application can be applied in the scenario of domain name resolution. Figure 5 As shown in the figure, when a client server has a domain name resolution requirement, the client server uses its own IPv6 address as the ECS IP, that is, Figure 5 240e: xx; xx, and DNS query information are filled into the message, and then sent to the DNS recursive server to obtain the corresponding resolution result. Figure 5 The following shows the differences in the processing flow of a DNS recursive server before and after adopting the domain name resolution method proposed in this application:
[0120] Among them, before adopting the domain name resolution method proposed in this application to perform domain name resolution, when the DNS recursive server receives a message sent by the client server, it will directly forward the message to the DNS authoritative server. After adopting the domain name resolution method proposed in this application to perform domain name resolution, when the DNS recursive server receives a message sent by the client server, the DNS recursive server will query the ECS IP line information and replace the ECS IP with the IPv4 of the same line, such as Figure 5 In the process, the DNS recursive server obtains the updated message by replacing 240e:xx;xx in IPv6 format with 1.2.xx in IPv4 format, and forwards the updated message to the DNS authoritative server.
[0121] The ECS protocol implementation process of the domain name resolution method proposed in this application is as follows Figure 6 As shown. Figure 6 As can be seen from the figure, when the DNS recursive server is started, it can first establish a local IP address information base and an IPv4 address set. The specific flow chart of establishing the local IP address information base and the IPv4 address set is as follows: Figure 7As shown, the address line information corresponding to the IP address is stored in a cloud database, and the DNS recursive server can periodically pull the content of the cloud database and store it in the shared memory of the server for building a local IP address information library. Among them, the initial data of the cloud database, that is, the IP line information, can come from a third-party data platform, and the third-party data platform can include an IP address library, a Geo IP address library, etc. Secondly, the server can build an IPv4 address set based on the local IP address information library or the cloud database. When the DNS recursive server generates an IPv4 address set based on the line list in the local IP address information library, the following generation conditions of the IPv4 address set can be met: first, each address line of the IP address information library corresponds to an IPv4 address in the address set; secondly, each address line of the IP address information library may have multiple corresponding IPv4 address segments, and the DNS recursive server will randomly select one of the address segments and add it to the set as the IPv4 address of the line; finally, the IPv4 address set is stored in the shared memory of the recursive server, and when the local IP address information library is adjusted, the system will also update the IPv4 address set accordingly.
[0122] When the DNS recursive server receives a DNS query message, that is, when it receives a domain name resolution request from a client, it determines whether the DNS query message contains the EDNS0 option and whether the IP address in the EDNS0 option is in IPv6 format. If there is no EDNS0 option in the request message, or the IP address in the EDNS0 option is not in IPv6 format, the DNS recursive server directly forwards the request message to the authoritative server without making any modifications. If there is an EDNS0 option in the request message, and the IP address in the EDNS0 option is in IPv6 format, the DNS recursive server queries the address line information corresponding to the IPv6 address in the local IP address information database, and then selects an IPv4 address with the same address line from the IPv4 address set based on the address line information. The DNS recursive server replaces the IP address in the EDNS0 option in the request message with the IPv4 address with the same address line, and then forwards the modified request message to the authoritative server, and waits for the resolution result to be returned.
[0123] In addition, in order to ensure the accuracy of the line information in the local IP address information database and IPv4 address collection, manual instructions are allowed to dynamically adjust the line information in the cloud database. For example, the IP address 1.1.1.1 is identified as a Guangdong Telecom line in the database, but during the analysis process it is found that it is identified as a Guangdong Radio and Television line by the authoritative server, then instructions can be issued to the cloud database to correct the line information of the IP segment where 1.1.1.1 is located.
[0124] In the domain name resolution method proposed in this application, the DNS recursive server will receive the DNS query message according to Figure 8 The specific steps are as follows: wherein the DNS query message may include multiple fields such as a header, a query area, and additional information, and the recursive server may check the additional information part in the DNS query message to determine whether it contains the EDNS0 option. Among them, the additional information may include multiple fields such as a selection code, a payload length, an address family, a search address valid bit, a response address valid bit, and an address. In the case of determining that the additional information contains the EDNS0 option, if the DNS recursive server determines that the selection code field in the EDNS0 option, that is, the value of the OPTION-CODE field is 0x08, it means that the DNS query message contains ECS related information. If the DNS recursive server determines that the address family field in the EDNS0 option, that is, the value of the FAMILY field is 0x02, it means that the ECS IP carried by the DNS query message is in IPv6 format.
[0125] The address field in the EDNS0 option, i.e., the ADDRESS field, indicates the ECS IP it carries, and the address valid bit field, i.e., the SOURCE PREFIX-LENGTH field, indicates the valid bits of the ECS IP. These two fields are used to determine the ECS IP actually used in the query process. Further, the recursive server can use the local IP address information library to query the address line information of the ECS IP, obtain the IPv4 address of the same line from the IPv4 address set according to the address line information, and replace it with the ADDRESS field of the EDNS0 option of the query message as the new ECSIP. When the address in the ADDRESS field is replaced, the FAMILY field, the SOURCE PREFIX-LENGTH field, etc. will also be updated accordingly. Among them, when the address line information of the ECS IP is queried using the local IP address information library, such as for the IPv6 address 240e:3b0::, the local IP address information library is queried to obtain the address line information corresponding to 240e:3b0::, and the address line information can specifically include a certain country, a certain province, and a certain operator, etc. Further, the DNS recursive server queries the IPv4 address set according to the address line information corresponding to 240e:3b0::, and determines that the address line information corresponding to 240e:3b0:: belongs to the IPv4 address of the same line, and the IPv4 address of the same line can specifically be 113.96.0.0. The DNS recursive server used in the domain name resolution method proposed in this application can effectively process the DNS message containing the ECS IP in IPv6 format in the client request. In the prior art, such messages often cause DNS resolution failure or inaccuracy, affecting the user experience. The present application can improve the success rate and accuracy of DNS resolution in this scenario by converting and matching the ECS IP in IPv6 format.
[0126] For the ECS resolution scenario of IPv6, the domain name resolution method proposed in this application can modify the DNS query message sent by the user on the recursive server, and use the IPv4 address of the same line to replace the IPv6 address as the ECS IP. The domain name resolution method proposed in this application can effectively solve the problem that the authoritative server does not support IPv6 or the IPv6 address is inaccurately recognized, and improve the success rate and accuracy of domain name resolution.
[0127] It should be understood that, although the various steps in the flowcharts involved in the above-mentioned embodiments are displayed in sequence according to the indication of the arrows, these steps are not necessarily executed in sequence according to the order indicated by the arrows. Unless there is a clear explanation in this article, the execution of these steps does not have a strict order restriction, and these steps can be executed in other orders. Moreover, at least a part of the steps in the flowcharts involved in the above-mentioned embodiments can include multiple steps or multiple stages, and these steps or stages are not necessarily executed at the same time, but can be executed at different times, and the execution order of these steps or stages is not necessarily to be carried out in sequence, but can be executed in turn or alternately with other steps or at least a part of the steps or stages in other steps.
[0128] Based on the same inventive concept, the embodiment of the present application also provides a domain name resolution device for implementing the domain name resolution method involved above. The implementation scheme for solving the problem provided by the device is similar to the implementation scheme recorded in the above method, so the specific limitations in one or more domain name resolution device embodiments provided below can refer to the limitations on the domain name resolution method above, and will not be repeated here.
[0129] In one embodiment, Fig. 9 As shown, a domain name resolution device 900 is provided, including: a request acquisition module 902, a line information determination module 904, a conversion address determination module 906, an address update module 908 and a request sending module 910, wherein:
[0130] The request acquisition module 902 is used to acquire a domain name resolution request.
[0131] The line information determination module 904 is used to determine the address line information to which the requesting end network address belongs when the requesting end network address carried in the domain name resolution request belongs to the address format to be converted.
[0132] The conversion address determination module 906 is used to determine the request end conversion address belonging to the address line information; the request end conversion address belongs to the address format suitable for domain name resolution.
[0133] The address updating module 908 is used to update the requesting end network address carried in the domain name resolution request by converting the address of the requesting end to obtain an updated domain name resolution request.
[0134] The request sending module 910 is used to send the updated domain name resolution request to the domain name resolution server; the updated domain name resolution request is used to instruct the domain name resolution server to perform domain name resolution processing based on the updated domain name resolution request.
[0135] In one embodiment, the line information determination module 904 is also used to obtain an address information library when the requesting end network address carried in the domain name resolution request belongs to the address format to be converted; the address information library includes the address line information to which various network addresses belong respectively; and the address line information to which the requesting end network address belongs is obtained by querying from the address information library.
[0136] In one embodiment, the address information database includes a local address information database; the line information determination module 904 includes an address information database construction module; the address information database construction module is used to construct a local initial address information database; according to the address information acquisition cycle, the address information data is obtained from the cloud address information database; based on the address information data, the local initial address information database is updated to obtain a local address information database.
[0137] In one embodiment, the domain name resolution device also includes an address line information updating module; the address line information updating module is used to obtain address line information matching the network address to be corrected when there is a network address to be corrected in the address information base; the network address to be corrected does not match the address line information belonging to the network address to be corrected recorded in the address information base; in the address information base, the address line information matching the network address to be corrected is updated to the address line information belonging to the network address to be corrected.
[0138] In one embodiment, the line information determination module 904 is also used to obtain the requester extension information associated with the requester extension field from the domain name resolution request when the domain name resolution request carries a requester extension field; when the address indication information included in the requester extension information indicates that the requester network address carried by the domain name resolution request belongs to an address format that is not suitable for domain name resolution, determine the address line information to which the requester network address carried by the domain name resolution request belongs.
[0139] In one embodiment, the line information determination module 904 is also used to obtain the request end address information and address valid bit information from the request end extension information; obtain the request end network address carried by the domain name resolution request according to the request end address information and address valid bit information, and determine the address line information to which the request end network address belongs.
[0140] In one embodiment, the address update module 908 is also used to determine the requesting end address field carrying the requesting end network address in the domain name resolution request; by converting the address of the requesting end, the field content of the requesting end address field is updated to obtain an updated domain name resolution request.
[0141] In one embodiment, the address update module 908 is also used to update the field content of the request side address field to the request side conversion address; update the field content of the address indication field in the domain name resolution request to the field content indicating the address format of the request side conversion address; update the field content of the address valid bit field in the domain name resolution request to the field content indicating the address valid bit information of the request side conversion address.
[0142] In one embodiment, the conversion address determination module 906 is further used to obtain a conversion address library; the conversion address library includes conversion addresses belonging to each address line information; and the request end conversion address belonging to the address line information is obtained by querying from the conversion address library.
[0143] In one embodiment, the domain name resolution device also includes a conversion address library construction module; the conversion address library construction module is used to obtain an address information library, the address information library includes address line information to which various network addresses belong respectively; according to the association relationship between various network addresses and the address line information in the address information library, the conversion address belonging to various address line information is determined; based on the conversion addresses belonging to various address line information, a conversion address library is obtained.
[0144] In one embodiment, the request sending module 910 is also used to send the domain name resolution request to the domain name resolution server when the requesting end network address carried in the domain name resolution request does not belong to the address format to be converted, or the domain name resolution request does not carry the requesting end network address; the domain name resolution request is used to instruct the domain name resolution server to perform domain name resolution processing based on the domain name resolution request.
[0145] In one embodiment, the domain name resolution device further includes a resolution result forwarding module; the resolution result forwarding module is used to obtain the domain name resolution result returned by the domain name resolution server; and forward the domain name resolution result to the requesting end that issues the domain name resolution request.
[0146] Each module in the above-mentioned domain name resolution device can be implemented in whole or in part by software, hardware or a combination thereof. Each module can be embedded in or independent of a processor in a computer device in the form of hardware, or can be stored in a memory in a computer device in the form of software, so that the processor can call and execute the operations corresponding to each module above.
[0147] In one embodiment, a computer device is provided. The computer device may be a server or a terminal. The internal structure diagram thereof may be as follows: Fig.10As shown. The computer device includes a processor, a memory, an input / output interface (Input / Output, referred to as I / O) and a communication interface. The processor, the memory and the input / output interface are connected through a system bus, and the communication interface is connected to the system bus through the input / output interface. The processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program and a database. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The database of the computer device is used to store data for domain name resolution. The input / output interface of the computer device is used to exchange information between the processor and an external device. The communication interface of the computer device is used to communicate with an external terminal through a network connection. When the computer program is executed by the processor, a domain name resolution method is implemented.
[0148] Those skilled in the art will understand that Fig.10 The structure shown in the figure is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied. The specific computer device may include more or fewer components than those shown in the figure, or combine certain components, or have a different arrangement of components.
[0149] In one embodiment, a computer device is further provided, including a memory and a processor, wherein a computer program is stored in the memory, and the processor implements the steps in the above method embodiments when executing the computer program.
[0150] In one embodiment, a computer-readable storage medium is provided, storing a computer program, which implements the steps in the above method embodiments when executed by a processor.
[0151] In one embodiment, a computer program product is provided, including a computer program, which implements the steps in the above method embodiments when executed by a processor.
[0152] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data must comply with relevant laws, regulations and standards of relevant countries and regions.
[0153] Those skilled in the art can understand that all or part of the processes in the above-mentioned embodiment methods can be completed by instructing the relevant hardware through a computer program, and the computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to the memory, database or other medium used in the embodiments provided in the present application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetoresistive random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. As an illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM). The database involved in each embodiment provided in this application may include at least one of a relational database and a non-relational database. Non-relational databases may include distributed databases based on blockchains, etc., but are not limited to this. The processor involved in each embodiment provided in this application may be a general-purpose processor, a central processing unit, a graphics processor, a digital signal processor, a programmable logic device, a data processing logic device based on quantum computing, etc., but are not limited to this.
[0154] The technical features of the above embodiments may be arbitrarily combined. To make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0155] The above-described embodiments only express several implementation methods of the present application, and the descriptions thereof are relatively specific and detailed, but they cannot be understood as limiting the scope of the present application. It should be pointed out that, for a person of ordinary skill in the art, several variations and improvements can be made without departing from the concept of the present application, and these all belong to the protection scope of the present application. Therefore, the protection scope of the present application shall be subject to the attached claims.
Claims
1. A domain name resolution method, characterized in that: The method comprises: Get domain name resolution request; When the requesting end network address carried in the domain name resolution request belongs to the address format to be converted, determining the address line information to which the requesting end network address belongs; Determine a request-side conversion address belonging to the address line information; the request-side conversion address belongs to an address format suitable for domain name resolution; The requesting end network address carried in the domain name resolution request is updated by converting the address of the requesting end to obtain an updated domain name resolution request; The updated domain name resolution request is sent to the domain name resolution server; the updated domain name resolution request is used to instruct the domain name resolution server to perform domain name resolution processing based on the updated domain name resolution request.
2. The method according to claim 1, characterized in that When the requesting end network address carried by the domain name resolution request belongs to the address format to be converted, determining the address line information to which the requesting end network address belongs includes: When the requesting end network address carried by the domain name resolution request belongs to the address format to be converted, an address information library is obtained; the address information library includes address line information to which various network addresses respectively belong; The address line information to which the requesting end network address belongs is obtained by querying from the address information database.
3. The method according to claim 2, characterized in that The address information base includes a local address information base; the method further includes: Build a local initial address information database; According to the address information acquisition cycle, the address information data is acquired from the cloud address information database; Based on the address information data, the local initial address information database is updated to obtain the local address information database.
4. The method according to claim 2, characterized in that: The method further comprises: When there is a network address to be corrected in the address information database, obtaining address line information matching the network address to be corrected; the network address to be corrected does not match the address line information to which the network address to be corrected recorded in the address information database belongs; In the address information database, the address line information matching the network address to be corrected is updated to the address line information to which the network address to be corrected belongs.
5. The method according to claim 1, characterized in that When the requesting end network address carried by the domain name resolution request belongs to the address format to be converted, determining the address line information to which the requesting end network address belongs includes: When the domain name resolution request carries a requester extension field, obtaining requester extension information associated with the requester extension field from the domain name resolution request; When the address indication information included in the requester extension information indicates that the requester network address carried in the domain name resolution request belongs to an address format not suitable for domain name resolution, the address line information to which the requester network address carried in the domain name resolution request belongs is determined.
6. The method according to claim 5, characterized in that The determining of the address line information to which the requesting end network address carried in the domain name resolution request belongs includes: Acquire request end address information and address valid bit information from the request end extended information; The requesting end network address carried in the domain name resolution request is obtained according to the requesting end address information and the address valid bit information, and the address line information to which the requesting end network address belongs is determined.
7. The method according to claim 1, characterized in that The updating of the requesting end network address carried in the domain name resolution request by converting the address of the requesting end to obtain an updated domain name resolution request includes: In the domain name resolution request, determining a requesting end address field that carries the requesting end network address; The request end converts the address, updates the field content of the request end address field, and obtains an updated domain name resolution request.
8. The method according to claim 7, characterized in that The updating of the field content of the request end address field by converting the address of the request end includes: Updating the field content of the request end address field to the request end conversion address; Updating the field content of the address indication field in the domain name resolution request to the field content indicating the address format of the conversion address of the requesting end; The field content of the address valid bit field in the domain name resolution request is updated to the field content indicating the address valid bit information of the conversion address of the requesting end.
9. The method according to claim 1, characterized in that: The determining of the requesting end conversion address belonging to the address line information comprises: Acquire a conversion address library; the conversion address library includes conversion addresses belonging to each address line information; The request end conversion address belonging to the address line information is obtained by querying from the conversion address library.
10. The method according to claim 9, characterized in that The method further comprises: Acquire an address information database, wherein the address information database includes address line information to which various network addresses belong respectively; Determine the conversion addresses belonging to various address line information according to the association relationship between various network addresses and the address line information in the address information database; The conversion address library is obtained based on the conversion addresses belonging to various address line information.
11. The method according to any one of claims 1 to 10, characterized in that: The method further comprises: When the requesting end network address carried in the domain name resolution request does not belong to the address format to be converted, or the domain name resolution request does not carry the requesting end network address, sending the domain name resolution request to the domain name resolution server; The domain name resolution request is used to instruct the domain name resolution server to perform domain name resolution processing based on the domain name resolution request.
12. The method according to any one of claims 1 to 10, characterized in that: The method further comprises: Obtaining a domain name resolution result returned by the domain name resolution server; The domain name resolution result is forwarded to the requesting end that issued the domain name resolution request.
13. A domain name resolution device, characterized in that: The device comprises: Request acquisition module, used to obtain domain name resolution requests; A line information determination module, used for determining the address line information to which the requesting end network address belongs when the requesting end network address carried by the domain name resolution request belongs to the address format to be converted; A conversion address determination module, used to determine a request end conversion address belonging to the address line information; the request end conversion address belongs to an address format suitable for domain name resolution; An address updating module, configured to update the requesting end network address carried in the domain name resolution request by converting the address of the requesting end, and obtain an updated domain name resolution request; The request sending module is used to send the updated domain name resolution request to the domain name resolution server; the updated domain name resolution request is used to instruct the domain name resolution server to perform domain name resolution processing based on the updated domain name resolution request.
14. A computer device comprising a memory and a processor, wherein the memory stores a computer program, wherein: When the processor executes the computer program, the steps of the method according to any one of claims 1 to 12 are implemented.
15. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 12 are implemented.
16. A computer program product comprising a computer program, characterized in that When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 12 are implemented.
