# Install nftables with Homebrew, apk, apt, dnf, Nix, pacman, zypper

Netfilter tables userspace tools. Version 1.1.6 via Homebrew; verified from local package data.

## Install

```sh
sudo av install brew:nftables
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install nftables
```

  Evidence: local Homebrew formula metadata

### Linux

- apk (92%):

```sh
sudo apk add nftables
```

  Evidence: Alpine Linux edge package indexes: nftables from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz

- Debian apt (92%):

```sh
sudo apt install libnftables-dev
```

  Evidence: Debian stable package indexes: libnftables-dev from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz

- dnf (92%):

```sh
sudo dnf install nftables
```

  Evidence: Fedora Rawhide package metadata: nftables from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst

- Nix (92%):

```sh
nix profile install nixpkgs#nftables
```

  Evidence: nixpkgs package indexes: nftables from https://raw.githubusercontent.com/NixOS/nixpkgs/master/pkgs/top-level/all-packages.nix

- pacman (92%):

```sh
sudo pacman -S nftables
```

  Evidence: Arch Linux sync databases: nftables from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz

- zypper (92%):

```sh
sudo zypper install libnftables1
```

  Evidence: openSUSE Tumbleweed package metadata: libnftables1 from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst

## Package facts

- **Package key:** brew:nftables
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/nftables>
- **Version:** 1.1.6
- **Source summary:** Netfilter tables userspace tools
- **Homepage:** <https://netfilter.org/projects/nftables/>
- **Repository:** <https://git.netfilter.org/nftables>
- **Upstream docs:** <https://wiki.nftables.org/wiki-nftables/index.php/Main_Page>
- **License:** GPL-2.0-or-later
- **Source archive:** <https://www.netfilter.org/pub/nftables/nftables-1.1.6.tar.xz>
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- nft (cli)
- nft (alias)

## Dependencies

- gmp
- jansson
- libedit
- libmnl
- libnftnl
- ncurses
- readline

## Build dependencies

- pkgconf
- python@3.14

## Install behavior

- Post-install hook: not defined
- Bottle: available on arm64_linux, x86_64_linux

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 1.1.6
- Local data: ok
- Upstream repository: https://netfilter.org/projects/nftables/
- info: No package-manager update timestamp was available.
- info: Release/tag comparison is only available for GitHub repositories.
## Project history and usage

nftables is the Netfilter project's replacement for the older iptables, ip6tables, arptables, and ebtables command families. It combines a new in-kernel packet classification framework with the `nft` userspace command and libnftables library, while reusing Netfilter pieces such as hooks, connection tracking, NAT, queueing, and logging.

### Project history

The nftables design was publicly presented at Netfilter Workshop 2008 and released publicly in March 2009 by Patrick McHardy. It was developed to reduce duplicated packet-filtering code and make extension easier than the separate xtables-era tools.

nftables was selected for Linux 3.13 in 2013 and became available upstream with the Linux 3.13 kernel line in January 2014. The official project page describes the replacement target, the new VM-based ruleset model, and the separate userspace command-line tool.

### Adoption history

The migration was intentionally gradual because firewall rules are operational infrastructure. The project provides an iptables/ip6tables compatibility layer over the nftables infrastructure, and distributions have used that bridge to move old command syntaxes onto the newer kernel backend.

By the Debian 10 and RHEL 8 era, nftables had moved from future replacement to default low-level packet-filtering framework in major Linux distributions. Red Hat documents nftables as the successor to iptables, ip6tables, arptables, ebtables, and ipset, and recommends it when administrators need direct control beyond high-level firewalld scenarios.

### How it is used

Admins use `nft` to create tables, chains, sets, maps, NAT rules, and packet filters in a single syntax across address families. The package is most useful when you need explicit rulesets, performance-friendly sets/maps, atomic ruleset replacement, or a firewall that is easier to reason about than layered iptables invocations.

Package nerds care about which backend their distro's `iptables` command actually targets. On newer systems, `iptables-nft` compatibility may be present even when scripts still look old, while serious new rulesets are usually written as `/etc/nftables.conf` and loaded by the nftables service or by distribution firewall tooling.

### Why package nerds care

nftables is one of the big Linux plumbing migrations: not a flashy app, but a shift in how packet filtering, NAT, and firewall state are represented. Its packaging matters because kernel version, libmnl, libnftnl, the `nft` tool, and distribution compatibility alternatives all have to line up.

### Timeline

- 2008: nftables was presented at Netfilter Workshop in Paris.
- 2009-03: Patrick McHardy announced the first public nftables release.
- 2013-10: nftables was selected for Linux 3.13.
- 2014-01: Linux 3.13 made nftables available upstream.
- 2019: Debian 10 and RHEL 8 generation distributions made nftables a default or primary low-level firewall backend.

### Related projects

- Netfilter
- iptables
- ip6tables
- arptables
- ebtables
- firewalld
- libmnl
- libnftnl

### Sources

- <https://docs.redhat.com/en/documentation/red_hat_enterprise_linux/9/html/configuring_firewalls_and_packet_filters/getting-started-with-nftables_firewall-packet-filters>
- <https://formulae.brew.sh/formula/nftables>
- <https://netfilter.org/projects/nftables/>
- <https://people.netfilter.org/pablo/netdev0.1/slides/nftables-netdev-2015.pdf>
- <https://wiki.nftables.org/wiki-nftables/index.php/List_of_updates_since_Linux_kernel_3.13>
- <https://wiki.nftables.org/wiki-nftables/index.php/Moving_from_iptables_to_nftables>
- <https://wiki.nftables.org/wiki-nftables/index.php/What_is_nftables%3F>


## Security Notes

narrow executable package without higher-risk signals.

- **Geiger risk:** green / low
- narrow executable package without higher-risk signals

## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** nftables
- **Version Scheme:** 0
- **Revision:** 0
- **Requirements:** linux
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** stable

## Other Package-Manager Records

- Debian apt - libnftables-dev - 1.1.3-1: normalized package name match | Debian stable package indexes: libnftables-dev from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Development files for libnftables | https://www.netfilter.org/
- Debian apt - libnftables1 - 1.1.3-1: normalized package name match | Debian stable package indexes: libnftables1 from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Netfilter nftables high level userspace API library | https://www.netfilter.org/
- Debian apt - nftables - 1.1.3-1: normalized package name match | Debian stable package indexes: nftables from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Program to control packet filtering rules by Netfilter project | https://www.netfilter.org/
- Debian apt - python3-nftables - 1.1.3-1: normalized package name match | Debian stable package indexes: python3-nftables from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | nftables/libnftables python3 module | https://www.netfilter.org/
- Nix - nftables: normalized package name match | nixpkgs package indexes: nftables from https://raw.githubusercontent.com/NixOS/nixpkgs/master/pkgs/top-level/all-packages.nix
- Ubuntu apt - libnftables-dev - 1.0.9-1build1: normalized package name match | Ubuntu 24.04 LTS package indexes: libnftables-dev from https://archive.ubuntu.com/ubuntu/dists/noble/main/binary-amd64/Packages.gz | Development files for libnftables | https://www.netfilter.org/
- Ubuntu apt - libnftables1 - 1.0.9-1build1: normalized package name match | Ubuntu 24.04 LTS package indexes: libnftables1 from https://archive.ubuntu.com/ubuntu/dists/noble/main/binary-amd64/Packages.gz | Netfilter nftables high level userspace API library | https://www.netfilter.org/
- Ubuntu apt - nftables - 1.0.9-1build1: normalized package name match | Ubuntu 24.04 LTS package indexes: nftables from https://archive.ubuntu.com/ubuntu/dists/noble/main/binary-amd64/Packages.gz | Program to control packet filtering rules by Netfilter project | https://www.netfilter.org/
- Ubuntu apt - python3-nftables - 1.0.9-1build1: normalized package name match | Ubuntu 24.04 LTS package indexes: python3-nftables from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | nftables/libnftables python3 module | https://www.netfilter.org/
- apk - nftables - 1.1.6-r1: normalized package name match | Alpine Linux edge package indexes: nftables from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | Netfilter tables userspace tools | https://netfilter.org/projects/nftables
- apk - nftables-dev - 1.1.6-r1: normalized package name match | Alpine Linux edge package indexes: nftables-dev from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | Netfilter tables userspace tools (development files) | https://netfilter.org/projects/nftables
- apk - nftables-doc - 1.1.6-r1: normalized package name match | Alpine Linux edge package indexes: nftables-doc from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | Netfilter tables userspace tools (documentation) | https://netfilter.org/projects/nftables
- apk - nftables-openrc - 1.1.6-r1: normalized package name match | Alpine Linux edge package indexes: nftables-openrc from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | Netfilter tables userspace tools (OpenRC init scripts) | https://netfilter.org/projects/nftables
- apk - nftables-rulesets - 1.1.6-r1: normalized package name match | Alpine Linux edge package indexes: nftables-rulesets from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | Meta package for pulling in all nftables rulesets | https://netfilter.org/projects/nftables
- apk - nftables-static - 1.1.6-r1: normalized package name match | Alpine Linux edge package indexes: nftables-static from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | Netfilter tables userspace tools (static library) | https://netfilter.org/projects/nftables
- apk - nftables-systemd - 1.1.6-r1: normalized package name match | Alpine Linux edge package indexes: nftables-systemd from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | Netfilter tables userspace tools (systemd files) | https://netfilter.org/projects/nftables


## Related links

- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Networking and protocol packages](https://www.automicvault.com/pkg/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [Homebrew utility packages](https://www.automicvault.com/pkg/brew-utility-packages/) - Matched Homebrew package provider.
- [ncurses](https://www.automicvault.com/pkg/brew/ncurses/) - Runtime dependency declared by Homebrew.
- [pkgconf](https://www.automicvault.com/pkg/brew/pkgconf/) - Build dependency declared by Homebrew.
- [python@3.14](https://www.automicvault.com/pkg/brew/python-3-14/) - Build dependency declared by Homebrew.
- [docker-engine](https://www.automicvault.com/pkg/brew/docker-engine/) - Popular package that depends on this formula.
- [iptables](https://www.automicvault.com/pkg/brew/iptables/) - Popular package that depends on this formula.
- [aerleon](https://www.automicvault.com/pkg/brew/aerleon/) - Shares av.db curated category or tags: cli, firewall, networking.
- [iproute2](https://www.automicvault.com/pkg/brew/iproute2/) - Shares av.db curated category or tags: cli, linux, networking.
- [iputils](https://www.automicvault.com/pkg/brew/iputils/) - Shares av.db curated category or tags: cli, linux, networking.
- [libnl](https://www.automicvault.com/pkg/brew/libnl/) - Shares av.db curated category or tags: cli, linux, networking.
- [net-tools](https://www.automicvault.com/pkg/brew/net-tools/) - Shares av.db curated category or tags: cli, linux, networking.
- [nethogs](https://www.automicvault.com/pkg/brew/nethogs/) - Shares av.db curated category or tags: cli, linux, networking.
- [somo](https://www.automicvault.com/pkg/brew/somo/) - Shares av.db curated category or tags: cli, linux, networking.
- [nftables](https://www.automicvault.com/pkg/cargo/nftables/) - Same normalized package name exists in another local package ecosystem.

## Combined YAML source

View the package source record on GitHub. [combined/nftables.yml](https://github.com/automic-vault/db/blob/main/combined/nftables.yml)


## Sources

- Nucleus package database
- Geiger risk classifier
- package-page enrichment
- curated package history
- package version freshness
- av.db category and tag curation
- package relationship graph
- external package-manager database matches
- cross-ecosystem install command graph
