Dante is a free implementation of the proxy protocols SOCKS version 4 and SOCKS version 5 (RFC 1928). It can be used as a firewall between networks, controlling outgoing traffic. The package consists of two parts: a socks server and a proxy client that supports socks, HTTP proxies, and UPnP. RFC 1961 (GSSAPI) is supported in both the client and the server. Commercial support is available.
The MiniUPnP project is a library and a daemon. The library is aimed to enable applications to use the capabilities of a UPnP Internet Gateway Device present on the network to forward ports. The daemon adds the UPnP Internet Gateway Device functionality to a NAT gateway running OpenBSD/NetBSD/FreeBSD/Solaris with PF/IPF or Linux 2.4.x/2.6.x with netfilter. One of its most interesting features is to enforce some permissions to allow or deny redirections, bringing some security to UPnP. Newer versions also support the NAT-PMP protocol from Apple.
libnfnetlink is a low-level userspace library for nfnetlink-based communication between the kernel-side netfilter and the user-space world. It is therefore the fundamental layer for all other nfnetlink-enabled user-space programs interfacing with the netfilter subsystem of the Linux kernel.
libnetfilter_cttimeout is an interface to Netfilter Connection Tracking timeouts. It provides a userspace library which provides a programming interface to the fine-grained connection tracking timeout infrastructure. With this library, you can create, update, and delete timeout policies which can be attached to traffic flows.
JSTUN is a STUN (Simple Traversal of UDP (User Datagram Protocol) through NAT (Network Address Translation)) implementation. STUN provides a means for applications to discover the presence and type of firewalls or NATs between them and the public Internet. In the presence of a NAT, STUN can also be used by applications to learn the public Internet Protocol (IP) address assigned to the NAT.