A method, system, and device for implementing private domain DNS with shared computing resources.

By creating independent DNS container processes on shared computing resources and using mapping relationships and packet port number modification rules, the problems of DNS isolation and resource consumption in large-scale virtual private networks are solved, achieving fast and efficient private domain name resolution and anti-hijacking, and adapting to the dynamic scaling of large-scale tenant cloud platforms.

CN118200027BActive Publication Date: 2026-01-06SHANDONG LANGCHAO YUNTOU INFORMATION TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202410460911.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-04-17
Publication Date
2026-01-06
Estimated Expiration
2044-04-17

AI Technical Summary

Technical Problem

In large-scale virtual private network environments, existing technologies for implementing private domain DNS consume significant computing resources and involve cumbersome deployment processes, making it difficult to achieve DNS isolation between different virtual private networks.

Method used

By creating independent DNS container processes on shared computing resources, and using mapping relationships and packet port number modification rules, DNS isolation between different virtual private networks is achieved. Container services and gateway routers are used to forward and respond to private domain name resolution requests.

Benefits of technology

It achieves isolation of different DNS on shared computing resources, quickly and efficiently responds to private network domain name resolution requests, saves resources, and adapts to the dynamic scaling of large-scale tenant cloud platforms.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118200027B_ABST
    Figure CN118200027B_ABST
Patent Text Reader

Abstract

The application discloses a private domain DNS implementation method, system and equipment for sharing computing resources, relates to the field of cloud computing, and comprises the following steps: when a private domain DNS creation request is received, creating a private domain DNS, and storing the mapping relationship between the target port number allocated for the private domain DNS and any VPC to a database; sending notification information about creating a container service to a DNS agent, so that the DNS agent creates and starts a DNS container process corresponding to any VPC; sending a created message port number modification rule to a gateway router of the VPC, so that the port number corresponding to the private domain name resolution request message is modified; forwarding the private domain name resolution request message to the DNS container process based on the modified message port number, responding to the private domain name resolution request message based on the DNS container process, realizing the association between each VPC and each private domain DNS, and sharing computing resources. The application realizes the sharing of computing resources and the isolation of DNS.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of cloud computing, and in particular to a method, system, and device for implementing private domain DNS for shared computing resources. Background Technology

[0002] DNS, or Domain Name System, is an internet service. As a distributed database that maps domain names to IP (Internet Protocol) addresses, it facilitates internet access. In both public and private cloud platforms, DNS is an essential component for internet access. Most mainstream cloud platforms provide public DNS servers to meet users' domain name resolution needs. However, public DNS resolves public or publicly accessible domain names, requiring users to register and map their domains to public IP addresses. Cloud platforms, on the other hand, offer Virtual Private Networks (VPCs). VPCs are dedicated cloud network spaces built on the cloud platform, providing network services to users' cloud resources with complete logical isolation between different private networks. As a user's dedicated network space in the cloud, users can deploy their own private services and set relevant security rules, achieving complete isolation from services in other networks. Private domain DNS is a private domain name resolution and management service based on the VPC environment. It allows for the rapid construction of DNS systems within one or more custom private networks and the convenient use of private domain records to manage VPC-related resources. These private domains are inaccessible outside of the VPC. Within the private domain's DNS, users can freely set their own private domains without needing a domain name or public registration. Currently, some private domain DNS implementations deploy a DNS server within each user's virtual private network (VPC), achieving isolation between the tenant's VPC and other DNS servers. However, as network scale expands, cloud platforms can have tens of thousands of VPCs. This method consumes significant platform and computing resources, and each VPC deployment requires the creation of a separate DNS server, making the process lengthy and cumbersome. Therefore, implementing a shared private DNS that can be flexibly created and deleted, shared without consuming excessive platform resources, and provides DNS isolation between different VPCs is of paramount importance. Summary of the Invention

[0003] In view of this, the purpose of this invention is to provide a method, system, and device for implementing private domain DNS in shared computing resources, which can achieve the goal of isolating different DNS servers on shared computing resources. The specific solution is as follows:

[0004] In a first aspect, this application discloses a method for implementing a private domain DNS with shared computing resources, including:

[0005] Upon receiving a private domain DNS creation request from a user for any VPC, a private domain DNS is created, a target port number is assigned to the private domain DNS, and the mapping relationship between the target port number and the VPC is stored in the database.

[0006] Send a notification to the DNS agent to create a container service for the target port number, so that the DNS agent creates and starts the DNS container process corresponding to any VPC when it receives the notification;

[0007] The packet port number modification rule created based on the mapping relationship is sent to the gateway router of the VPC, so that the gateway router can modify the port number corresponding to the private domain name resolution request packet sent by the user based on the packet port number modification rule to obtain the corresponding modified packet port number.

[0008] Based on the modified message port number, the private domain name resolution request message sent by the user is forwarded to the DNS container process. The DNS container process responds to the private domain name resolution request message to realize the association between each VPC and each private domain DNS and to share computing resources.

[0009] Optionally, the method further includes:

[0010] The system receives the private domain DNS creation request for the target VPC sent by the user through the northbound interface.

[0011] Optionally, upon receiving a private domain DNS creation request for the target VPC sent by the user, before creating the private domain DNS, the process further includes:

[0012] Create a service data network that can communicate with all tenants within the VPC;

[0013] The DNS container process is started based on the service data network.

[0014] Optionally, starting the DNS container process based on the service data network includes:

[0015] A shared DNS server is deployed within the service data network; the shared DNS server is a DNS server that allows access to all the tenants.

[0016] The DNS agent is deployed on the shared DNS server so that the DNS agent creates and starts a DNS container process upon receiving the notification information.

[0017] Optionally, deploying a shared DNS server within the service data network includes:

[0018] The shared DNS server is deployed within the service data network based on the coreDNS component.

[0019] Optionally, forwarding the private domain name resolution request message sent by the user to the DNS container process based on the modified message port number, and responding to the private domain name resolution request message based on the DNS container process, includes:

[0020] The modified message port number is compared with the port number corresponding to each DNS container process to obtain the corresponding comparison result;

[0021] Based on the comparison results, the private domain name resolution request message sent by the user is forwarded to the target DNS container process, and the target DNS container process parses the private domain name resolution request message to obtain the corresponding resolution result.

[0022] Optionally, the method further includes:

[0023] The DNS container process stores the DNS resolution records for all private domain names of the VPC corresponding to the DNS container process.

[0024] Secondly, this application discloses a private domain DNS implementation system for shared computing resources, comprising:

[0025] The port number allocation module is used to create a private domain DNS and allocate a target port number to the private domain DNS when a user sends a private domain DNS creation request for any VPC.

[0026] A mapping relationship storage module is used to store the mapping relationship between the target port number and any VPC in a database;

[0027] The DNS container process startup module is used to send a notification message to the DNS agent to create a container service for the target port number, so that the DNS agent can create and start the DNS container process corresponding to any VPC when it receives the notification message.

[0028] The port number modification module is used to send the packet port number modification rules created based on the mapping relationship to the gateway router of the VPC, so that the gateway router can modify the port number corresponding to the private domain name resolution request packet sent by the user based on the packet port number modification rules to obtain the corresponding modified packet port number.

[0029] The computing resource sharing module is used to forward the private domain name resolution request message sent by the user to the DNS container process based on the modified message port number, and to respond to the private domain name resolution request message based on the DNS container process, so as to realize the association between each VPC and each private domain DNS and to share computing resources.

[0030] Optionally, the system further includes:

[0031] The Service Data Network Creation module is used to create a service data network that can communicate with all tenants within the VPC;

[0032] The container process startup module is used to start the DNS container process based on the service data network.

[0033] Thirdly, this application discloses an electronic device, including:

[0034] Memory, used to store computer programs;

[0035] A processor for executing the computer program to implement the aforementioned private domain DNS implementation method for sharing computing resources.

[0036] Fourthly, this application discloses a computer-readable storage medium for storing a computer program, which, when executed by a processor, implements the aforementioned method for sharing computing resources in a private domain DNS.

[0037] This application first creates a private domain DNS upon receiving a user's request to create a private domain DNS for any VPC, assigns a target port number to the private domain DNS, and stores the mapping relationship between the target port number and any VPC in a database. Then, it sends a notification to the DNS agent to create a container service for the target port number, so that the DNS agent creates and starts the DNS container process corresponding to any VPC upon receiving the notification. Next, it sends a packet port number modification rule created based on the mapping relationship to the VPC's gateway router, so that the gateway router modifies the port number corresponding to the user's private domain name resolution request packet based on the packet port number modification rule to obtain the corresponding modified packet port number. Finally, based on the modified packet port number, it forwards the user's private domain name resolution request packet to the DNS container process, and the DNS container process responds to the private domain name resolution request packet, thereby achieving the association between each VPC and each private domain DNS and enabling resource sharing. Therefore, this application achieves DNS isolation between different VPCs by creating an independent DNS container process for each VPC using a container approach. Furthermore, based on the characteristics of DNS request messages from different VPCs, the system identifies the DNS process associated with each VPC, thereby achieving DNS isolation on shared computing resources. It also enables dedicated internal DNS servers within VPCs to directly respond to private network domain name resolution requests, ensuring speed, efficiency, and effective anti-hijacking. This allows for adaptation to cloud platforms with large-scale tenants, dynamically scaling with the number of VPCs, offering high flexibility and resource savings. Attached Figure Description

[0038] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on the provided drawings without creative effort.

[0039] Figure 1 This application discloses a flowchart of a method for implementing a private domain DNS for sharing computing resources.

[0040] Figure 2 This is a schematic diagram of the architecture of a private domain DNS implementation method for sharing computing resources disclosed in this application;

[0041] Figure 3 This is a schematic diagram of a data plane flow disclosed in this application;

[0042] Figure 4This is a schematic diagram of a private domain DNS implementation system architecture for sharing computing resources disclosed in this application;

[0043] Figure 5 This is a structural diagram of an electronic device disclosed in this application. Detailed Implementation

[0044] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0045] Current methods for implementing private domain DNS involve deploying a DNS server within each user's virtual private network (VPN), thus isolating the DNS within the VPN from other DNS servers. However, as networks expand, cloud platforms can host tens of thousands of VPNs. This approach consumes significant platform and computing resources, and each VPN deployment requires the creation of a separate DNS server, making the process lengthy and cumbersome. To address these technical issues, this application discloses a private domain DNS implementation method based on shared computing resources, achieving DNS isolation across shared computing resources.

[0046] See Figure 1 As shown, this embodiment of the invention discloses a method for implementing private domain DNS with shared computing resources, including:

[0047] Step S11: Upon receiving a private domain DNS creation request from a user for any VPC, create a private domain DNS, assign a target port number to the private domain DNS, and store the mapping relationship between the target port number and the any VPC in the database.

[0048] In this embodiment, each VPC (Virtual Private Network) in the cloud platform represents a Layer 2 private network, completely isolated from other networks. Each VPC contains multiple subnets; subnets within a VPC can communicate with each other, but subnets between VPCs cannot. Virtual machines within a VPC must access the DNS server through a gateway router. The prerequisite for implementing shared computing resources and private domain DNS is planning a service data network that can communicate with tenants within all VPCs. A shared DNS server is deployed within this network, ensuring access to the DNS server for all tenants. The DNS proxy is deployed on this shared DNS server so that it can create and start a DNS container process upon receiving the notification information. First, the system receives the private domain DNS creation request for the target VPC sent by the user through the northbound interface. Upon receiving a private domain DNS creation request for any VPC sent by the user, the DNS proxy is notified to create a container service on the specified port number. Furthermore, the system maintains a mapping relationship between VPCs and their associated private domain DNS servers in the database, storing the mapping relationship between different VPCs and their associated private domain DNS service ports.

[0049] Step S12: Send a notification message to the DNS agent to create a container service for the target port number, so that the DNS agent can create and start the DNS container process corresponding to any VPC when it receives the notification message.

[0050] In this embodiment, the DNS proxy is deployed on the shared DNS server so that the DNS proxy creates and starts a DNS container process when it receives the notification information. Deploying the shared DNS server within the service data network includes: deploying the shared DNS server based on the coreDNS component within the service data network. The DNS proxy: deployed on the DNS server, receives instructions from the control layer, starts a DNS container process locally, and associates with a specified VPC using a specified port number. Different DNS container processes are isolated from each other in terms of data and network, and can store all domain name resolution records of their corresponding VPCs. Each VPC's private DNS corresponds to a DNS container process, using different port numbers for association and mapping. For example, the startup port number of the private domain DNS container service of VPC1 is 54, here labeled DNS-54. The DNS-54 service records all private domain names added by tenants within VPC1, completely isolated from and without conflict with the private domain DNS of other VPCs, thus achieving the purpose of private DNS. For another VPC, such as VPC2, the associated DNS port number is 55. The corresponding VPC is recorded through the port number of the DNS service.

[0051] Step S13: Send the packet port number modification rule created based on the mapping relationship to the gateway router of the VPC, so that the gateway router can modify the port number corresponding to the private domain name resolution request packet sent by the user based on the packet port number modification rule to obtain the corresponding modified packet port number.

[0052] In this embodiment, the control layer maintains the mapping relationship between VPCs and their associated private domain DNS in the database, and issues rules to the gateway router of the VPC to modify the packet port number. In a specific embodiment, since the default port number for virtual machines to access the DNS server is 53, a rule to modify the packet port number is issued on the network router of VPC1, that is, the packet with destination address accessing IP1 and port number 53 is modified to destination port number 54.

[0053] Step S14: Based on the modified message port number, forward the private domain name resolution request message sent by the user to the DNS container process, and respond to the private domain name resolution request message based on the DNS container process, so as to realize the association between each VPC and each private domain DNS and to share computing resources.

[0054] In this embodiment, the modified packet port number is compared with the port numbers corresponding to each DNS container process to obtain the corresponding comparison result. Based on the comparison result, the private domain name resolution request packet sent by the user is forwarded to the target DNS container process. The target DNS container process then parses the private domain name resolution request packet to obtain the corresponding resolution result. As can be seen from the previous step, after modifying the port number corresponding to the private domain name resolution request packet sent by the user according to the packet port number modification rule, the data packet will be sent to the DNS server. The DNS container with service port 54 is the DNS server associated with VPC1. This achieves the association between VPC and different DNS servers. This allows user DNS request packets to be forwarded to the corresponding DNS service for shared computing resources.

[0055] In summary, this application first creates a private domain DNS upon receiving a user's request to create a private domain DNS for any VPC, assigns a target port number to the private domain DNS, and stores the mapping relationship between the target port number and any VPC in a database. Then, it sends a notification to the DNS agent to create a container service for the target port number, so that the DNS agent creates and starts the DNS container process corresponding to any VPC upon receiving the notification. Next, it sends a packet port number modification rule created based on the mapping relationship to the VPC's gateway router, so that the gateway router modifies the port number corresponding to the user's private domain name resolution request packet based on the packet port number modification rule to obtain the corresponding modified packet port number. Finally, based on the modified packet port number, it forwards the user's private domain name resolution request packet to the DNS container process, and the DNS container process responds to the private domain name resolution request packet, thereby achieving the association between each VPC and each private domain DNS and enabling resource sharing. Therefore, this application achieves DNS isolation between different VPCs by creating an independent DNS container process for each VPC using a container approach. Furthermore, based on the characteristics of DNS request messages from different VPCs, the system identifies the DNS process associated with each VPC, thereby achieving DNS isolation on shared computing resources. It also enables dedicated internal DNS servers within VPCs to directly respond to private network domain name resolution requests, ensuring speed, efficiency, and effective anti-hijacking. This allows for adaptation to cloud platforms with large-scale tenants, dynamically scaling with the number of VPCs, offering high flexibility and resource savings.

[0056] like Figure 2 The basic implementation architecture of the technical solution of this application mainly includes the following components: 1) control layer; 2) database; 3) DNS proxy.

[0057] The control layer provides a northbound interface to receive user requests to create private domain DNS for a specified VPC, and notifies the DNS agent to create a container service on a specified port number. It also maintains a mapping between VPCs and their associated private domain DNS in the database and issues rules to the VPC's gateway router to modify the port number of message packets.

[0058] DNS Proxy: Deployed on a DNS server, it receives instructions from the control layer, starts a DNS container process locally, and associates with a specified VPC on a specified port number. Different DNS container processes are isolated from each other, in terms of data and network, and can store all domain name resolution records of their corresponding VPC.

[0059] Database: The database stores the mapping relationship between different VPCs and their associated private domain DNS service ports. This allows user DNS request packets to be forwarded to the appropriate DNS service.

[0060] In one specific embodiment, combined with Figure 3 This document describes the execution process of the control plane and the forwarding process of the data plane during the implementation of the technical solution in this application.

[0061] The entire system includes a control layer, database, DNS proxy, and coreDNS component. The prerequisite is that a service data network has been planned, capable of communicating with all tenants within the VPC, and a shared DNS server is deployed within this network, ensuring accessibility for all tenants. The DNS server's IP record is IP1. A DNS proxy and the coreDNS component are deployed on this DNS server.

[0062] 1. After a user sends a request to create a private domain DNS for VPC1, the controller will assign a mapping port number, such as 54, to the private domain DNS associated with the VPC and store the mapping between the port number and the VPC in the database.

[0063] 2. The control layer sends a rule to the gateway router of VPC1 to modify the packet, changing the destination port number of the packet (the packet requesting the DNS server) from IP1 on port 53 to 54. This will send the data packet to the DNS server, specifically the DNS container on port 54, which is the DNS server associated with VPC1.

[0064] 3. The control layer sends a request to the DNS proxy. The DNS proxy will start a container process on port 54 locally using the open-source component of coreDNS, and maintain the creation, running and deletion of this process.

[0065] In the data plane forwarding process, consider the following scenario: Tenant A's VPC1 is associated with a private domain DNS, whose address is IP1 and port number is 54. The user uses this private domain DNS to create a private domain name www.test.com mapped to the IP address 192.168.1.2.

[0066] 1. The user sent a request message to the DNS server of IP1 to resolve the domain name www.test.com. The port number of the message is the default port number 53.

[0067] 2. When the message arrives at the gateway router, the destination port of the message is changed to port 54 by the corresponding rules.

[0068] 3. After the message arrives at the DNS server with IP address IP1, because the DNS port number associated with VPC1 is 54, and the destination message's port number is also 54, the request message is correctly sent to its associated DNS container process. The IP address resolved to www.test.com is 192.168.1.2.

[0069] In this way, this application enables a dedicated internal DNS for the VPC, directly responding to resolution requests for private network domain names, which is fast, efficient, and effectively prevents hijacking. It shares computing resources, saves platform resources, and simplifies deployment for containerized startup. Furthermore, this application is adaptable to cloud platforms with large-scale tenants, dynamically scaling as the number of VPCs increases or decreases, offering high flexibility and resource savings.

[0070] See Figure 4 As shown, this embodiment of the invention discloses a private domain DNS implementation system for shared computing resources, comprising:

[0071] The port number allocation module 11 is used to create a private domain DNS and allocate a target port number to the private domain DNS when a user sends a private domain DNS creation request for any VPC.

[0072] The mapping relationship storage module 12 is used to store the mapping relationship between the target port number and any VPC in the database;

[0073] DNS container process startup module 13 is used to send a notification message to the DNS agent to create a container service for the target port number, so that the DNS agent can create and start the DNS container process corresponding to any VPC when it receives the notification message.

[0074] The port number modification module 14 is used to send the packet port number modification rule created based on the mapping relationship to the gateway router of the VPC, so that the gateway router can modify the port number corresponding to the private domain name resolution request packet sent by the user based on the packet port number modification rule to obtain the corresponding modified packet port number.

[0075] The computing resource sharing module 15 is used to forward the private domain name resolution request message sent by the user to the DNS container process based on the modified message port number, and to respond to the private domain name resolution request message based on the DNS container process, so as to realize the association between each VPC and each private domain DNS and to share computing resources.

[0076] In summary, this application first creates a private domain DNS upon receiving a user's request to create a private domain DNS for any VPC, assigns a target port number to the private domain DNS, and stores the mapping relationship between the target port number and any VPC in a database. Then, it sends a notification to the DNS agent to create a container service for the target port number, so that the DNS agent creates and starts the DNS container process corresponding to any VPC upon receiving the notification. Next, it sends a packet port number modification rule created based on the mapping relationship to the VPC's gateway router, so that the gateway router modifies the port number corresponding to the user's private domain name resolution request packet based on the packet port number modification rule to obtain the corresponding modified packet port number. Finally, based on the modified packet port number, it forwards the user's private domain name resolution request packet to the DNS container process, and the DNS container process responds to the private domain name resolution request packet, thereby achieving the association between each VPC and each private domain DNS and enabling resource sharing. Therefore, this application achieves DNS isolation between different VPCs by creating an independent DNS container process for each VPC using a container approach. Furthermore, based on the characteristics of DNS request messages from different VPCs, the system identifies the DNS process associated with each VPC, thereby achieving DNS isolation on shared computing resources. It also enables dedicated internal DNS servers within VPCs to directly respond to private network domain name resolution requests, ensuring speed, efficiency, and effective anti-hijacking. This allows for adaptation to cloud platforms with large-scale tenants, dynamically scaling with the number of VPCs, offering high flexibility and resource savings.

[0077] In some specific embodiments, the system further includes:

[0078] The request receiving module is used to receive the private domain DNS creation request for the target VPC sent by the user through the northbound interface.

[0079] In some specific embodiments, the system further includes:

[0080] The Service Data Network Creation module is used to create a service data network that can communicate with all tenants within the VPC;

[0081] The container process startup module is used to start the DNS container process based on the service data network.

[0082] In some specific embodiments, the DNS container process startup module 13 may specifically include:

[0083] A server deployment unit is configured to deploy a shared DNS server within the service data network; the shared DNS server is a DNS server that allows access to all the tenants.

[0084] A DNS proxy deployment unit is used to deploy the DNS proxy on the shared DNS server so that the DNS proxy creates and starts a DNS container process when it receives the notification information.

[0085] In some specific embodiments, the server deployment unit may specifically include:

[0086] The deployment subunit is used to deploy the shared DNS server within the service data network based on the coreDNS component.

[0087] In some specific embodiments, the computing resource sharing module 15 may specifically include:

[0088] The comparison result acquisition unit is used to compare the modified packet port number with the port number corresponding to each DNS container process and obtain the corresponding comparison result;

[0089] The resolution unit is used to forward the private domain name resolution request message sent by the user to the target DNS container process based on the comparison result, and to parse the private domain name resolution request message based on the target DNS container process to obtain the corresponding resolution result.

[0090] In some specific embodiments, the system further includes:

[0091] The storage module is used to store the DNS resolution records of all private domain names of the VPC corresponding to the DNS container process through the DNS container process.

[0092] Furthermore, embodiments of this application also disclose an electronic device, Figure 5 This is a structural diagram of an electronic device 20 according to an exemplary embodiment. The content of the diagram should not be construed as limiting the scope of this application.

[0093] Figure 5 This is a schematic diagram of the structure of an electronic device 20 provided in an embodiment of this application. Specifically, the electronic device 20 may include: at least one processor 21, at least one memory 22, a power supply 23, a communication interface 24, an input / output interface 25, and a communication bus 26. The memory 22 stores a computer program, which is loaded and executed by the processor 21 to implement the relevant steps in the private domain DNS implementation method for shared computing resources disclosed in any of the foregoing embodiments. Alternatively, the electronic device 20 in this embodiment may specifically be an electronic computer.

[0094] In this embodiment, the power supply 23 is used to provide operating voltage for each hardware device on the electronic device 20; the communication interface 24 can create a data transmission channel between the electronic device 20 and external devices, and the communication protocol it follows can be any communication protocol applicable to the technical solution of this application, and is not specifically limited here; the input / output interface 25 is used to acquire external input data or output data to the outside world, and its specific interface type can be selected according to specific application needs, and is not specifically limited here.

[0095] In addition, the memory 22, as a carrier for resource storage, can be a read-only memory, random access memory, disk or optical disk, etc. The resources stored thereon can include operating system 221, computer program 222, etc., and the storage method can be temporary storage or permanent storage.

[0096] The operating system 221 is used to manage and control the various hardware devices on the electronic device 20 and the computer program 222, which may be Windows Server, Netware, Unix, Linux, etc. In addition to including a computer program capable of performing the private domain DNS implementation method for sharing computing resources executed by the electronic device 20 as disclosed in any of the foregoing embodiments, the computer program 222 may further include computer programs capable of performing other specific tasks.

[0097] Furthermore, this application also discloses a computer-readable storage medium for storing a computer program; wherein, when the computer program is executed by a processor, it implements the aforementioned disclosed method for implementing a private domain DNS for sharing computing resources. Specific steps of this method can be found in the corresponding content disclosed in the foregoing embodiments, and will not be repeated here.

[0098] The various embodiments in this specification are described in a progressive manner, with each embodiment focusing on its differences from other embodiments. Similar or identical parts between embodiments can be referred to interchangeably. For the apparatus disclosed in the embodiments, since it corresponds to the method disclosed in the embodiments, the description is relatively simple; relevant parts can be referred to in the method section.

[0099] Those skilled in the art will further recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of both. To clearly illustrate the interchangeability of hardware and software, the components and steps of the various examples have been generally described in terms of functionality in the foregoing description. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

[0100] The steps of the methods or algorithms described in conjunction with the embodiments disclosed herein can be implemented directly by hardware, a software module executed by a processor, or a combination of both. The software module can be located in random access memory (RAM), main memory, read-only memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, hard disk, removable disk, CD-ROM, or any other form of storage medium known in the art.

[0101] Finally, it should be noted that in this document, relational terms such as "first" and "second" are used only to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.

[0102] The technical solutions provided in this application have been described in detail above. Specific examples have been used to illustrate the principles and implementation methods of this application. The descriptions of the above embodiments are only for the purpose of helping to understand the methods and core ideas of this application. At the same time, for those skilled in the art, there will be changes in the specific implementation methods and application scope based on the ideas of this application. Therefore, the content of this specification should not be construed as a limitation of this application.

Claims

1. A method for implementing a private domain DNS for computing resource sharing, characterized in that, The application comprises the following steps: Upon receiving a private domain DNS creation request of any VPC sent by a user, a private domain DNS is created, and a target port number is allocated to the private domain DNS, and a mapping relationship between the target port number and the any VPC is stored in a database; A notification message for creating a container service of the target port number is sent to a DNS agent, so that the DNS agent creates and starts a DNS container process corresponding to the any VPC upon receiving the notification message; A message port number modification rule created based on the mapping relationship is sent to a gateway router of the VPC, so that the gateway router modifies a port number corresponding to a private domain name resolution request message sent by the user based on the message port number modification rule to obtain a corresponding modified message port number; The private domain name resolution request message sent by the user is forwarded to the DNS container process based on the modified message port number, and the private domain name resolution request message is responded based on the DNS container process, so as to realize the association of each VPC with each private domain DNS and the sharing of computing resources.

2. The method for implementing private domain DNS of computing resource sharing according to claim 1, characterized in that, Further comprising: A private domain DNS creation request of a target VPC sent by the user is received through a northbound interface.

3. The method of claim 1, wherein, Before creating a private domain DNS upon receiving a private domain DNS creation request of a target VPC sent by a user, the application further comprises the following steps: A service data network capable of communicating with all tenants in the VPC is created; A DNS container process is started based on the service data network.

4. The method of claim 3, wherein, The DNS container process started based on the service data network comprises the following steps: A shared DNS server is deployed in the service data network; the shared DNS server is a DNS server accessible by all tenants; The DNS agent is deployed on the shared DNS server, so that the DNS agent creates and starts a DNS container process upon receiving the notification message.

5. The method of claim 4, wherein, The shared DNS server is deployed in the service data network based on a coreDNS component. The private domain name resolution request message sent by the user is forwarded to the DNS container process based on the modified message port number, and the private domain name resolution request message is responded based on the DNS container process, comprising the following steps:

6. The method of claim 1, wherein, The modified message port number is compared with a port number corresponding to each DNS container process to obtain a corresponding comparison result; The private domain name resolution request message sent by the user is forwarded to a target DNS container process based on the comparison result, and the private domain name resolution request message is resolved based on the target DNS container process to obtain a corresponding resolution result. Further comprising:

7. The method of claim 1 to 6, wherein, All private domain name resolution records of a VPC corresponding to the DNS container process are stored by the DNS container process. The application comprises the following steps:

8. A private domain DNS implementation system for computing resource sharing, characterized in that, A port number allocation module is configured to create a private domain DNS upon receiving a private domain DNS creation request of any VPC sent by a user, and allocate a target port number to the private domain DNS; ​ A mapping relationship storage module is configured to store a mapping relationship between the target port number and any VPC in a database; A DNS container process starting module is configured to send notification information about creating a container service of the target port number to a DNS agent, so that the DNS agent creates and starts a DNS container process corresponding to any VPC when receiving the notification information; A port number modification module is configured to send a message port number modification rule created based on the mapping relationship to a gateway router of a VPC, so that the gateway router modifies a port number corresponding to a private domain name resolution request message sent by the user based on the message port number modification rule to obtain a corresponding modified message port number; A computing resource sharing module is configured to forward the private domain name resolution request message sent by the user to the DNS container process based on the modified message port number, and respond to the private domain name resolution request message based on the DNS container process, so as to realize the association between each VPC and each private domain DNS and share computing resources.

9. The private domain DNS implementation system of shared computing resources according to claim 8, wherein, The system further comprises: A service data network creation module is configured to create a service data network capable of communicating with all tenants in a VPC; A container process starting module is configured to start a DNS container process based on the service data network.

10. An electronic device, comprising: It comprises: A memory is configured to save a computer program; A processor is configured to execute the computer program to implement the private domain DNS implementation method for sharing computing resources according to any one of claims 1 to 7.

Citation Information

Patent Citations

  • Domain name resolution method and device and computer readable storage medium

    CN114500450A

  • Information processing method and device, equipment and storage medium

    CN116800714A