Method and protocol for distributed network address translation
First Claim
1. A system for distributed network address translation, the system comprising:
- a plurality of first network devices on a local network for replacing a local source port with a globally unique port used for distributed network address translation, wherein a selected network device from the plurality of first network devices includes a local internal network address and a local source port used to identify the selected network device on the local network, and wherein the internal network address and the local source port are not known outside of the local network;
a common external network address for identifying the plurality of first network devices on the local network to a second external network, wherein the plurality of first network devices on the local network use the common external network address and a globally unique port to communicate with other network devices not on the first network via the second external network;
a port allocation protocol for allocating a plurality of globally unique ports for the plurality of first network devices on the local network, wherein the plurality of globally unique ports are used to replace a local source port on the plurality of first network devices, and wherein the plurality of globally unique ports uniquely identify the plurality of first network devices on the local network for communications with other network devices not on the local network;
a plurality of combination network addresses for the plurality of first network devices, wherein the plurality of combination network addresses include a globally unique port allocated with the port allocation protocols and the common external network address, for allowing the plurality of first network devices to be uniquely identified on the local network by other network devices not on the local network;
a router for allocating the plurality of globally unique ports for the plurality of first network devices on the local network using the port allocation protocol, for receiving modified request data packets from the plurality of first network devices over the local network wherein the modified request data packets include data packet headers with the common external network address to identify a selected network device on the local network and a globally unique port obtained from the router using the port allocation protocol, for deleting additional request headers from the modified request data packets to obtain request data packets, for forwarding the request data packets from the router from the local network to the second external network, for receiving response data packets on the local network from the second external network for a selected network device on the local network on the common external network address, wherein the response data packets includes the common external network address for the plurality of fist network devices on the local network and a globally unique port to uniquely identify the selected network device on the local network, for determining with the globally unique port from the response data packet, a local internal network address that identifies the selected network device on the local network, for adding an additional response header to the response data packet to create a modified response data packet, wherein the additional response header includes the determined local internal network address for the selected network device that identifies the selected network device on the local network and a second local internal network address for the router that identifies the router on the local network, and for forwarding the modified response data packet from the router to the selected network device over the local network.
4 Assignments
0 Petitions
Accused Products
Abstract
A system for Distibuted Network Address Translation (“DNAT”). DNAT is used with small office/home office (“SOHO”) networks or other legacy local networks that have multiple network devices using a common external network address to communicate with an external network. The system includes a port allocation protocol to allocate globally unique ports to network devices on a local network. Individual network devices on a SOHO networks replace local source ports with the globally unique ports. The globally unique ports are used in a combination network address with a common external network address such as an Internet Protocol (“IP”) address, to identify multiple network devices on a local network to an external network such as the Internet, an intranet, etc. DNAT helps overcome the large computation burdens encountered when network address translation is done by a router and helps extend the life of older versions IP using 32-bit addressing.
177 Citations
10 Claims
-
1. A system for distributed network address translation, the system comprising:
-
a plurality of first network devices on a local network for replacing a local source port with a globally unique port used for distributed network address translation, wherein a selected network device from the plurality of first network devices includes a local internal network address and a local source port used to identify the selected network device on the local network, and wherein the internal network address and the local source port are not known outside of the local network;
a common external network address for identifying the plurality of first network devices on the local network to a second external network, wherein the plurality of first network devices on the local network use the common external network address and a globally unique port to communicate with other network devices not on the first network via the second external network;
a port allocation protocol for allocating a plurality of globally unique ports for the plurality of first network devices on the local network, wherein the plurality of globally unique ports are used to replace a local source port on the plurality of first network devices, and wherein the plurality of globally unique ports uniquely identify the plurality of first network devices on the local network for communications with other network devices not on the local network;
a plurality of combination network addresses for the plurality of first network devices, wherein the plurality of combination network addresses include a globally unique port allocated with the port allocation protocols and the common external network address, for allowing the plurality of first network devices to be uniquely identified on the local network by other network devices not on the local network;
a router for allocating the plurality of globally unique ports for the plurality of first network devices on the local network using the port allocation protocol, for receiving modified request data packets from the plurality of first network devices over the local network wherein the modified request data packets include data packet headers with the common external network address to identify a selected network device on the local network and a globally unique port obtained from the router using the port allocation protocol, for deleting additional request headers from the modified request data packets to obtain request data packets, for forwarding the request data packets from the router from the local network to the second external network, for receiving response data packets on the local network from the second external network for a selected network device on the local network on the common external network address, wherein the response data packets includes the common external network address for the plurality of fist network devices on the local network and a globally unique port to uniquely identify the selected network device on the local network, for determining with the globally unique port from the response data packet, a local internal network address that identifies the selected network device on the local network, for adding an additional response header to the response data packet to create a modified response data packet, wherein the additional response header includes the determined local internal network address for the selected network device that identifies the selected network device on the local network and a second local internal network address for the router that identifies the router on the local network, and for forwarding the modified response data packet from the router to the selected network device over the local network. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
Specification