NAT (Network Address Translation)

NAT (Network Address Translation) is a technique for translating network addresses in TCP/IP networks, which allows you to change the IP of the packet header that is transmitted through the router.

SORM solutions

Learn more

Varieties of NAT

There are 4 types of NAT in total:

  1. Static. Continuously maps a public host to a private one that was created by the router. This type is most often used in networks where it is necessary to provide some kind of access from the outside. The optimal solution for organizing user access to mail services and web servers.
  2. Dynamic. It is based on a pool of public IP addresses used to detect private networks. They are assigned by Internet service providers, and any internal node of such a NAT has its own unique address, which is transferred by the router to the first free public address found in the public IP pool.
  3. Port redirection. Thanks to this NAT, a single address can be connected to various servers.
  4. Translation of port addresses. The most popular NAT used. Provides multiplexing of several internal nodes simultaneously with the further creation of a single public address. However, the source port numbers may be different.

Using NAT, you can significantly mitigate the natural depletion of the public address space. In addition, modern networks can use the RFC 1918 address space internally without losing Internet access.

Implementing NAT programmatically

If there is a server running under a specific operating system, then the broadcast of hosts can be organized without purchasing any additional equipment.

To implement NAT at the software level, the server must be equipped with at least two network cards (implementing NAT based on a machine with one port is possible if there is a Trunk VLan).

Absolutely all modern server operating systems have support for broadcasting hosts of the simplest class. UNIX systems performed best in NAT operation (in terms of high performance, fault tolerance and flexibility).

Many of the operating systems like *BSD systems, GNU/Linux and OpenSolaris allow you to deploy NAT “out of the box”, and in other operating systems implementation is possible using modules and firewalls that support the host translation function.

In addition to the above-described server operating systems, NAT can fully work on servers running an OS from the Windows Server family.


We use cookies to optimise website functionality and improve our services. To find out more, please read our Privacy Policy.
Cookies settings
Strictly necessary cookies
Analytics cookies