Source-dependent address resolution
First Claim
1. A computer-implemented method for facilitating source-dependent address resolution, the computer-implemented method comprising:
- maintaining, at an address resolution system associated with a plurality of virtual computing devices, address resolution information mapping network names of the plurality of virtual computing devices to internal and external network addresses of the plurality of virtual computing devices, wherein individual virtual computing devices of the plurality of virtual computing devices are associated with both an internal network address, which enables communication with other computing devices associated with a network of the individual virtual computing device, and an external network address, which enables communication with other computing devices not associated with the network;
receiving, at the address resolution system, a DNS query request from a source virtual computing device, wherein DNS query request corresponds to a request for an address of a target virtual computing device, and wherein the request comprises a network name of the target virtual computing device;
identifying, at the address resolution system and based at least in part on the received request, a source network of the source virtual computing device;
identifying, at the address resolution system and based at least in part on the received request and on the address resolution information, a target network including the target virtual computing device;
determining, at the address resolution system, whether the source network and the target network are the same network;
selecting, at the address resolution system, at least one of the internal address or the external address of the target virtual computing device for transmission to the source virtual computing device, wherein the address resolution system selects the internal address of the target virtual computing device for transmission to the source virtual computing device when it is determined that the source network and the target network are the same network, and wherein the address resolution system selects the external address of the target virtual computing device for transmission to the source virtual computing device when it is determined that the source network and the target network are not the same network; and
transmitting the selected at least one address from the address resolution system to the source virtual computing device.
1 Assignment
0 Petitions
Accused Products
Abstract
Systems and method are provided for source-dependent address resolution. Multiple computing devices may be associated with identifiers, such as network names. These computing devices may further be associated with both internally and externally accessible network addresses. A source-dependent address resolution component may resolve a network identifier into an internal or external address based on a network of a requesting device. Specifically, a request for address resolution may be received from a source network, and be resolvable into an address of a target network. If the source network and target network are the same, an internal address of that shared network is returned. If the source network and the target network are different, an external address enabling external communication with the target network is returned. In some embodiments, determination of a source network may be facilitated based on a source port of a request.
-
Citations
23 Claims
-
1. A computer-implemented method for facilitating source-dependent address resolution, the computer-implemented method comprising:
-
maintaining, at an address resolution system associated with a plurality of virtual computing devices, address resolution information mapping network names of the plurality of virtual computing devices to internal and external network addresses of the plurality of virtual computing devices, wherein individual virtual computing devices of the plurality of virtual computing devices are associated with both an internal network address, which enables communication with other computing devices associated with a network of the individual virtual computing device, and an external network address, which enables communication with other computing devices not associated with the network; receiving, at the address resolution system, a DNS query request from a source virtual computing device, wherein DNS query request corresponds to a request for an address of a target virtual computing device, and wherein the request comprises a network name of the target virtual computing device; identifying, at the address resolution system and based at least in part on the received request, a source network of the source virtual computing device; identifying, at the address resolution system and based at least in part on the received request and on the address resolution information, a target network including the target virtual computing device; determining, at the address resolution system, whether the source network and the target network are the same network; selecting, at the address resolution system, at least one of the internal address or the external address of the target virtual computing device for transmission to the source virtual computing device, wherein the address resolution system selects the internal address of the target virtual computing device for transmission to the source virtual computing device when it is determined that the source network and the target network are the same network, and wherein the address resolution system selects the external address of the target virtual computing device for transmission to the source virtual computing device when it is determined that the source network and the target network are not the same network; and transmitting the selected at least one address from the address resolution system to the source virtual computing device. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A system for source-dependent address resolution, the system comprising:
-
at least one data store storing address resolution information mapping identifiers of individual computing devices, of a plurality of computing devices, to both internal and external addresses of the individual computing devices; and one or more computing devices implementing an address resolution system, the address resolution system configured to; receive, at the address resolution system, a request for resolution of an identifier of the target computing device to an address of the target computing device; determine, at the address resolution system and based at least in part on the received request, a source network from which the request was received; determine, at the address resolution system and based at least in part on the received request and on the address resolution information, a target network including the target computing device; determine, at the address resolution system, whether the source network and the target network are the same network; and respond to the request by resolving the identifier of the target computing device into at least one of an internal address or an external address of the target computing device and transmitting a result of resolving the identifier from the address resolution system to a source computing device associated with the request, wherein the address resolution system resolves the identifier of the target computing device into the internal address of the target computing device when it is determined that the source network and the target network are the same network, and wherein the address resolution system solves the identifier of the target computing device into the external address of the target computing device to the source computing device when it is determined that the source network and the target network are not the same network. - View Dependent Claims (7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A non-transitory, computer-readable storage medium having computer-executable instructions for facilitating source-dependent address resolution that, when executed by an address resolution system, cause the address resolution system to:
-
receive, at the address resolution system, a request for resolution of an identifier of a target computing device to an address of the target computing device, wherein the target computing device is associated with both an internal network address and an external network address; determine, at the address resolution system and based at least in part on the received request, a source network from which the request was received; determine, at the address resolution system, a target network including the target computing device based at least in part on the received request and on address resolution information mapping the identifier of the target computing device to the internal and the external address of the target computing device; determine, at the address resolution system, whether the source network and the target network are the same network; respond to the request by resolving the identifier of the target computing device into at least one of the internal address or the external address of the target computing device and transmitting a result of resolving the identifier from the address resolution system to a source computing device associated with the request, wherein the address resolution system resolves the identifier of the target computing device into the internal address of the target computing device when it is determined that the source network and the target network are the same network, and wherein the address resolution system solves the identifier of the target computing device into the external address of the target computing device when it is determined that the source network and the target network are not the same network. - View Dependent Claims (18, 19, 20, 21, 22, 23)
-
Specification