セキュリティ
上級

nftables (iptables 後継)(エヌエフテーブルズ)

Patrick McHardy 主導開発のLinux ファイアウォール。2014年Linux 3.13 で導入、iptables / ip6tables / arptables / ebtables の統合後継、性能・機能・記法を全面刷新。

0 回閲覧
0 いいね
2026/5/15 更新
関連タグ
Linux
Kernel
ファイアウォール
ネットワーク

概要

nftables はLinux カーネル内Netfilter プロジェクト (Patrick McHardy / Pablo Neira Ayuso 等が主導) が開発した新世代ファイアウォールフレームワーク。2014年1月Linux 3.13 で導入、従来のiptables (IPv4) / ip6tables (IPv6) / arptables (ARP) / ebtables (L2 Ethernet) 4つの別ツールを統合した後継。新しい nft ユーザ空間ツール・nft 仮想マシン (bytecode JIT 実行)・名前付きセット / マップ等を追加、RHEL 8 (2019) / Debian 10 (2019) / Ubuntu 20.04 (2020) デフォルト化。

nftables vs iptables 主要比較

項目iptables (1998-)nftables (2014-)
プロトコル別ツール4個 (iptables / ip6tables / arptables / ebtables)1個 (nft)
ルール構造固定チェーン動的階層
Set / Mapipset 別ツール標準内蔵
Dict不可標準内蔵
性能 (大規模)線形O(n)集合演算O(log n)
構文慣れ親しんだが冗長新構文・簡潔
後方互換-iptables-nft 互換層
JSON 出力なしあり

nftables 構造

要素内容
Tableネットワークプロトコル毎 (inet/ip/ip6/arp/bridge/netdev)
Chainテーブル内ルールグループ
Ruleアクションを実行する条件
Set動的IPアドレス / ポート集合
Mapキー→値マッピング
Counterパケットカウンタ
Quota帯域制限

設定例

# テーブル + チェーン + ルール作成
nft add table inet filter
nft add chain inet filter input { type filter hook input priority 0 \; }
nft add rule inet filter input ct state established,related accept
nft add rule inet filter input iif lo accept
nft add rule inet filter input tcp dport { 22, 80, 443 } accept
nft add rule inet filter input reject

# Set 利用
nft add set inet filter badip { type ipv4_addr \; }
nft add element inet filter badip { 1.2.3.4, 5.6.7.8 }
nft add rule inet filter input ip saddr @badip drop

主要採用 Distro

Distroバージョン年
RHEL82019
CentOS82019
Debian10 Buster2019
Ubuntu20.04 LTS2020
Fedora322020
openSUSE15 SP22020
Arch Linux(継続的)2018-

後方互換性: iptables-nft

iptables-nft は iptables コマンド形式を受け取り、内部でnftables へ変換して実行する互換ラッパ。Docker / Kubernetes 等の既存iptables ベースツールがそのまま動作。RHEL 8+ ではiptables = iptables-nft シンボリックリンク。

性能優位

大規模ルール (10,000+) でiptables は線形検索O(n) のため遅化、nftables は Set / Map 集合演算O(log n) で大幅高速。Cloudflare / Google 等のDDoS 対策で重要。

関連用語との違い

  • vs iptables: 後継・統合・性能向上
  • vs eBPF (XDP): 一般ファイアウォール / 超高速パケット処理
  • vs UFW / FirewallD: 上位GUI ・nftables を内部利用

FAQ

Q1: iptables 知識使える? A: iptables-nft 互換層で従来コマンドそのまま動作。本格的nft 構文学習は推奨だが、急に必要ではない。

Q2: Docker / Kubernetes 影響? A: iptables-nft 経由で透過動作。混合環境 (ホストnft + Docker iptables) に注意。

Q3: nft 学習リソース? A: 公式 wiki (wiki.nftables.org)・"Linux Firewalls" 書籍。iptables → nft 移行ガイドも豊富。

この記事について
カテゴリーセキュリティ
難易度上級
作成日2026/5/15