質問はほぼタイトルにあります。
nftablesとiptables / ip6tablesルールを同時に適用できますか?それでは、優先順位は何ですか?
私が質問する理由は、多くのツール(特にコンテナ化の世界)が依然としてルールに依存してiptables
追加ip6tables
し、ネットワーク内の他のエンティティがコンテナ化されたサービスを使用または使用できなくするためです。したがって、nft
これを使用して標準のファイアウォールルールを表現するには、iptables
/と並列に動作する必要がありますip6tables
。
iptables-legacy
それとも/ ip6tables-legacy
withまたはそれに似たものを使って満足していますかupdate-alternatives
?つまり、これらすべてのコンテナ化ツールはiptables
/想定どおり使用し続けますip6tables
が、実際にはnftablesが提供する互換性「階層」ですか?
優先順位に関しては、ルールの優先順位を示すことができる一種のチャートがありたいと思います。
答え1
カーネルのiptables
合計を同時に使用することも可能ですnftables
が、少し注意が必要です。ルールが適用される順序は、フックの優先順位によって決定されます。従来iptables
のデフォルト値は0なので、nft
フックを最初に適用する必要がある場合は優先順位を-1に設定し、iptables
後で適用する必要がある場合は1に設定できます。
iptables-nft
への移行を容易にするように設計されていますnft
。これをインストールすると、nft
カーネルで使用してもインターフェイスが機能し続けることができます。iptables
ip6tables
nftables
これは、現在コンテナ化されている環境(Kubernetesなど)で使用されているアプローチです。コンテナはホストがどのテーブルセットを使用しているかを検出し、対応するiptables
インターフェイス(以前のテーブルまたは提供nftables
)を使用する必要があります。バラよりキューバネティス問題 #71305もっと学ぶ。
主な問題は、合計を組み合わせることですiptables-nft
。iptables-legacy
つまり、同じ優先順位を使用するため、パケットは両方のチェーンを通過し、どこにも行かなくなります。
バラよりnftablesでチェーン優先順位を使用するタイミングと方法優先順位の詳細をご覧くださいnftables
。