Virtual distributed domain name server
AssigneeVMware, Inc.
InventorAMOL MANOHAR VAIKAR
Life of this patent
Estimating the term…
Abstract
An approach for intercepting and caching Domain Name System (DNS) related data and sharing the cached DNS related data among hypervisors is provided. In an embodiment, a method comprises: receiving a DNS query from a virtual machine, determining whether a DNS reply to the DNS query has been received from a DNS server and whether an Internet Protocol (IP) address has been stored in a local DNS cache; in response to determining that tire DNS reply to the DNS query has been received from the DNS server and the IP address has been stored in the local DNS cache; retrieving the IP address from the local DNS cache; and providing the IP address to the virtual machine.
Claims20
A method for intercepting and caching Domain Name System (DNS) related data and receiving a DNS query from a virtual machine;
- determining whether a DNS reply to the DNS query has been received from a DNS server and whether an Internet Protocol (IP) address has been stored in a local DNS cache;
- in response to determining that the DNS reply to the DNS query has been received from the DNS server and the IP address has been stored in the local DNS cache:
- retrieving the IP address from the local DNS cache;
- and
- providing the IP address to the virtual machine.
One or more non-transitory computer-readable storage media storing one or more computer instructions which, when executed by one or more processors, cause the one or more processors to perform:
- receiving a DNS query from a virtual machine;
- determining whether a DNS reply to the DNS query has been received from a DNS server and whether an Internet Protocol (IP) address has been stored in a local DNS cache;
- in response to determining, that the DNS reply to the DNS query has been received from the DNS server and the IP address has been stored in the local DNS cache:
- retrieving the IP address from the local DNS cache;
- and
- providing the IP address to the virtual machine.
A hypervisor implemented in a host computer and configured to cache Domain Name System (DNS) related data and share the cached DNS related data with other hypervisors, the hypervisor comprising:
- one or more processors;
- one or more memory units;
- and
- one or more non-transitory computer-readable storage media storing one or more computer instructions which, when executed by the one or more processors, cause the one or more processors to perform:
- receiving a DNS query from a virtual machine;
- determining whether a DNS reply to the DNS query has been received from a DNS server and whether an Internet Protocol (IP) address has been stored in a local DNS cache;
- in response to determining that the DNS reply to the DNS query has been received from the DNS server and the IP address has been stored in the local DNS cache:
- retrieving the IP address from the local DNS cache;
- and
- providing the IP address to the virtual machine.
The hypervisor of claim 15, wherein the one or more non transitory computer-readable storage media store additional instructions which, when executed by the one or more processors, cause the one or more processors to perform:
- determining whether an association between a domain name and the IP address has been stored in the local DNS cache;
- in response to determining that the association between the domain name and the IP address has been stored in the local DNS cache:
- generating an update message and including, in the update message, the association between the domain name and the IP address;
- and
- transmitting the update message to a DNS cache synchronization controller to cause the DNS cache synchronization controller to distribute the update message to one or more second hypevisors;
- and
- wherein the association between the domain name and the IP address is stored in response to one or more of:
- receiving the DNS reply, receiving the association from another hypervisor, or receiving the association from a controller.
Dependencies are inferred from the claim text.