Network address translation for virtual machines
First Claim
1. A method implemented by a data processing apparatus, the method comprising:
- receiving an outbound packet from a virtual machine executing on the data processing apparatus, the outbound packet having header information including a destination Internet Protocol (IP) address, a destination port, a source IP address, and a first source port, and wherein the source IP address and the first source port are associated with the virtual machine;
in response to receiving the outbound packet, selecting a second source port different than the first source port from a plurality of ports associated with the virtual machine;
in response to selecting the second source port;
changing the first source port in the header information of the outbound packet to the second source port, to establish a modified outbound packet; and
maintaining the source IP address in the header information of the modified outbound packet; and
sending the modified outbound packet over a network to a gateway separate from the data processing apparatus, wherein the gateway is configured to change the source IP address of the modified outbound packet to an IP address of the gateway and to maintain the second source port in the header information of the modified outbound packet before routing the modified outbound packet to its destination.
2 Assignments
0 Petitions
Accused Products
Abstract
Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for receiving an outbound packet from a virtual machine executing on the data processing apparatus, the packet having header information including a destination Internet Protocol (IP) address, a destination port, a source IP address, and a source port, and wherein the source IP address and source port are associated with the virtual machine; selecting a different port than the source port from a plurality of ports associated with the virtual machine; changing the source port in the header information to the selected port; and sending the modified packet to an external network by way of a gateway that is configured to change the source IP address of the packet to an IP address of the gateway before routing the packet to its destination.
-
Citations
22 Claims
-
1. A method implemented by a data processing apparatus, the method comprising:
-
receiving an outbound packet from a virtual machine executing on the data processing apparatus, the outbound packet having header information including a destination Internet Protocol (IP) address, a destination port, a source IP address, and a first source port, and wherein the source IP address and the first source port are associated with the virtual machine; in response to receiving the outbound packet, selecting a second source port different than the first source port from a plurality of ports associated with the virtual machine; in response to selecting the second source port; changing the first source port in the header information of the outbound packet to the second source port, to establish a modified outbound packet; and maintaining the source IP address in the header information of the modified outbound packet; and sending the modified outbound packet over a network to a gateway separate from the data processing apparatus, wherein the gateway is configured to change the source IP address of the modified outbound packet to an IP address of the gateway and to maintain the second source port in the header information of the modified outbound packet before routing the modified outbound packet to its destination. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A computer readable medium storing instructions that, when executed by data processing apparatus, cause the data processing apparatus to perform operations comprising:
-
receiving an outbound packet from a virtual machine executing on the data processing apparatus, the outbound packet having header information including a destination Internet Protocol (IP) address, a destination port, a source IP address, and a source port, and wherein the source IP address and the first source port are associated with the virtual machine; in response to receiving the outbound packet, selecting a second source port different than the first source port from a plurality of ports associated with the virtual machine; in response to selecting the second source port; changing the first source port in the header information of the outbound packet to the second source port, to establish a modified outbound packet; and maintaining the source IP address in the header information of the modified outbound packet; and sending the modified outbound packet over a network to a gateway separate from the data processing apparatus, wherein the gateway is configured to change the source IP address of the modified outbound packet to an IP address of the gateway and to maintain the second source port in the header information of the modified outbound packet before routing the modified outbound packet to its destination. - View Dependent Claims (10, 11, 12, 13, 14, 15)
-
-
16. A system comprising:
-
a computer readable medium having instructions stored thereon; and data processing apparatus capable of executing the instructions to perform operations comprising; receiving an outbound packet from a virtual machine executing on the data processing apparatus, the outbound packet having header information including a destination Internet Protocol (IP) address, a destination port, a source IP address, and a first source port, and wherein the source IP address and the first source port are associated with the virtual machine; in response to receiving the outbound packet, selecting a second source port different than the first source port from a plurality of ports associated with the virtual machine; in response to selecting the second source port; changing the first source port in the header information of the outbound packet to the second source port, to establish a modified outbound packet; and maintaining the source IP address in the header information of the modified outbound packet; and sending the modified outbound packet over a network to a gateway separate from the data processing apparatus, wherein the gateway is configured to change the source IP address of the modified outbound packet to an IP address of the gateway and to maintain the second source port in the header information of the modified outbound packet before routing the modified outbound packet to its destination. - View Dependent Claims (17, 18, 19, 20, 21, 22)
-
Specification