Communication Protocols
GateD Routing
GateD Switching
NetF1 (IPv4/IPv6 stack)
ClassHopper (ALTQ)
Merlink (Link Aggregation)
GNAT (NAT)
X-Calibur (802.1X)
Spantasmic (802.1D/W/S
Spanning Tree)
Distributed Data Management
High Availability
Network Management
Development Tools
Security

GNAT (NAT)

GNAT Operation | Inbound & Outbound Mappings | Local Network Security | Dynamic Firewall Interface | Application Level Gateway | Portable Private Networks | Management Framework

GNAT is a high performance network address translator (NAT). Its core engine maps internal to external addresses using port translation (NAPT) based on pre-defined mapping rules. Its small footprint and robustness have been specifically designed for use in an embedded environment. GNAT’s unprecedented flexibility and ease customization make it the NAT of choice in embedded networking applications.

GNAT Operation
GNAT typically operates on a gateway or router between an internal and external network and helps to conserve IP addresses. It does this by creating "local" networks which are connected to the Internet using a single routable (public) IP address. GNAT maintains an address translation table containing active mappings of internal/external IP addresses and port numbers. These mappings are created dynamically based on rule-matching when a packet makes its way through GNAT. Based on the mappings, each IP datagram sent out with an internal IP source address has the source address field replaced by the appropriate external IP address and is re-injected into the packet stream. This process is reversed when a packet is received, since the mappings allow GNAT to determine the original requestor to which the packet should be forwarded. This makes possible a many-to-one address mapping, since many internal IP addresses can be mapped to one external IP address. Mappings are automatically deleted after a pre-configured inactivity time period.

Top

Inbound & Outbound Mappings
GNAT includes a redirection command to redirect inbound packets to a specified internal IP address. This allows external devices to initiate connections to internal NAT-ed nodes which may be necessary if the internal nodes are running servers (such as ftp, http etc.) which require access from the outside. Besides inbound mapping, GNAT also supports redirection in the outgoing direction to allow services such as DNS port forwarding from the internal network.

Top

Local Network Security
A useful feature of GNAT is its ability to hide private IP addresses on its internal side. The nodes on the internal network may freely establish connections with external nodes. However, connections from the external side may be blocked or made possible with GNAT in a controlled manner. GNAT can allow just a few connections, or even no connections, to be established in this direction. GNAT thus offers security by assigning nodes on the internal network non-routable private IP addresses that cannot be easily accessed from potential threats on the outside.

Top

Dynamic Firewall Interface
GNAT private IP address hiding complements the perimeter security of IP packet filtering firewalls. A unique feature of GNAT allows the association of a NAT mapping with a firewall rule. When the NAT entry is created, it also opens a firewall window. This allows for a convenient way to enable a dynamic firewall rule allowing activity at specific ports when a connection is initiated from the internal side. The firewall window is closed when the NAT entry expires.

Top

Application Level Gateway
Some TCP/IP protocols embed addressing information in the payload of packets. For example, during an "active" FTP connection, the client informs the server of its IP address & port number and then waits for the server to open a connection to that address. GNAT has to monitor these packets and modify them on the fly to replace the client's IP address (which is on the internal network) with the NAT-ed address. This requires defining specialized application-level gateway modules (ALGs) for every protocol that uses IP addresses in packet payloads. GNAT supplies an implementation of the FTP ALG which can be used as a reference for any other protocols that require a specialized ALG.

Top

Portable Private Networks
GNAT’s setup of a “local” network on its internal side, with its own private IP address scheme allows for maximum address portability since this network can be connected to any external network without any IP address change for the internal nodes. This is particularly useful in embedded environments where the “local” network may be part of a single embedded system. GNAT allows such applications to refer to the internal addresses without reference to the external IP address in use, which may change based on DHCP assignment, or inclusion of the embedded devices in a customer network.

Top

Management Framework
GNAT supports a customizable management interface presented through a string-based command layer, which can be easily controlled through a web-server or structured data files such as XML or via a CLI. Support for rule numbering provides ease of overriding at any level. Management of nodes on the internal network is also eased, since they can be assigned private IP addresses that do not change even if the external IP address changes based on connection to different external networks.

Top

 

 

GNAT for VxWorks Datasheet