nftables is the modern Linux kernel packet classification framework. It replaces the popular {ip,ip6,arp,eb}tables.
This software provides a new in-kernel packet classification framework that is based on a network-specific Virtual Machine (VM) and a new nft userspace command line tool.
nftables reuses the existing Netfilter subsystems such as the existing hook infrastructure, the connection tracking system, NAT, userspace queueing and logging subsystem.
This software also provides libnftables, the high-level userspace library that includes support for JSON
This is free and open source software.
Key Features
- Network-specific VM: the nft command line tool compiles the ruleset into the VM bytecode in netlink format, then it pushes this into the kernel via the nftables Netlink API. When retrieving the ruleset, the VM bytecode in netlink format is decompiled back to its original ruleset representation. So nft behaves both as compiler and decompiler.
- High performance through maps and concatenations: Linear ruleset inspection doesn’t scale up. Using maps and concatenations, you can structure your ruleset to reduce the number of rule inspections to find the final action on the packet to the bare minimum.
- Smaller kernel codebase. The intelligence is placed in userspace nft command line tool, which is considerably more complex than iptables in terms of codebase, however, in the midrun, this will potentially allow us to deliver new features by upgrading the userspace command line tool, with no need of kernel upgrades.
- Unified and consistent syntax for every support protocol family, contrary to xtables utilities, that are well-known to be full of inconsistencies.
Website: www.netfilter.org
Support:
Developer: The Netfilter Project
License: GNU General Public License v2.0
nftables is written in C. Learn C with our recommended free books and free tutorials.
Related Software
| Firewalls | |
|---|---|
| OpenSnitch | Interactive application firewall |
| nftables | Provides a new in-kernel packet classification framework |
| Firewalld | Dynamically managed firewall with support for network/firewall zones |
| Portmaster | Application firewall that does the heavy lifting |
| iptables | Configure the Linux 2.4.x and later packet filtering ruleset |
| ufw | Uncomplicated Firewall. This is software for managing a netfilter firewall |
| Shorewall | High-level tool for configuring Netfilter |
| gufw | Easy, intuitive, way to manage your Linux firewall |
| Vuurmuur | Uncomplicated Firewall, manage a netfilter firewall |
| awall | Firewall configuration tool, providing various benefits over plain iptables |
| Foomuuri | Multizone bidirectional nftables firewall |
| bgpipe | BGP reverse proxy and firewall |
Read our verdict in the software roundup.
Explore our comprehensive directory of recommended free and open source software. Our carefully curated collection spans every major software category.This directory is part of our ongoing series of informative articles for Linux enthusiasts. It features hundreds of detailed reviews, along with open source alternatives to proprietary solutions from major corporations such as Google, Microsoft, Apple, Adobe, IBM, Cisco, Oracle, and Autodesk. You’ll also find interesting projects to try, hardware coverage, free programming books and tutorials, and much more. Discovered a useful open source Linux program that we haven’t covered yet? Let us know by completing this form. |

