Types of NATs
NAT operates by
creating bindings between addresses.
Static NAT

Static NAT is a
one-to-one mapping between an unregistered IP address and a registered IP
address.
Dynamic NAT

More commonly,
Dynamic NAT is implemented, where a pool of public IP addresses is shared by an
entire private IP subnet. When a private host initiates a connection, a public
IP address is selected. The mapping of the computer’s non-routable IP address
matched to the selected IP address is stored in the NAT Table. As long as the
outgoing connection is maintained, the private host can be reached by incoming
packets sent to the specified public address. When the binding expires, the
address is returned to the pool for reuse.
Overloading

A variation of
Dynamic NAT known as Network Address Port Translation (NAPT) maps multiple
unregistered IP addresses to a single registered IP address by multiplexing
streams differentiated by the TCP/UDP port number.
Overlapping

When Overlapping is
employed, the IP addresses used on the internal network are registered IP
addresses utilized on another network. To avoid conflict, a NAT Table is built
to translate these redundant internal addresses to a unique IP address. Vice
versa, when sending packets into the private network, the registered addresses
must be translated to an address unique in the network.
Because these
schemes can be used interchangeably, NAT can be configured in various ways
pending on the restrictions and requirements of the stub domain.