Network Address Translation. Purists like to reserve this for the specific case of one to one mapping: one internal address to one external address. That usually means that you'll have a block of public addresses, though it doesn't mean that you need a public IP for every internal address. It does mean that you can only have as many active connections as you have public addresses. If you had only two public IP's, only two internal machines could be active at any given time.
If you did have an equal number of public IP's, you'd use static mapping: your internal 192.168.1.2 machine would always use the same public IP, 192.168.1.3 would use another, and so on.
A special case is where you have one public IP and want every internal machine to have access whenever they want. Masquerading answers that problem by multiplexing connections through tracking port numbers. That does mean that there is always a bounded limit to the number of connections that can be made, but the default for Linux is 4,096 and can be increased (though obviously it can't be arbitrarily increased: you couldn't devote ALL ports to masquerading).
If you found something useful today, please consider a small donation.
Got something to add? Send me email.
More Articles by Tony Lawrence © 2011-07-06 Tony Lawrence