nftablesは、「エラー:ルールを処理できません:そのファイルまたはディレクトリがありません」ルールの追加を拒否します。

nftablesは、「エラー:ルールを処理できません:そのファイルまたはディレクトリがありません」ルールの追加を拒否します。

質問:

nftルールを追加しようとすると、「エラー:ルールを処理できませんでした:そのファイルまたはディレクトリがありません」というメッセージが表示され続けます。

コマンド例:

nft add rule netdev filter input ip daddr 10.10.10.10 counter

トラブルシューティング:

  • 確認された「netdevフィルタ」が一覧表に表示されます。nft list tables
  • nftables.serviceが実行されていることを確認してください。
  • 単位ファイルは、/etc/nftables.conf が使用中であることを示しています。
  • すべてのコマンドを root として実行します。
  • この投稿CONFIG_NF_TABLES_INET=y推奨設定どうすればいいですか?まだ明確ではありません。

システム

  • Ubuntu 20.04.2 LTS
  • カーネル 5.4.0-91-一般

この問題を解決する方法がわからない。エラーは非常にあいまいです。私は何を見逃していますか? nftルールを追加できないのはなぜですか?

答え1

アドレスnetdevファミリにはフックはありませんが、フックinputがありますingress。あなたのコマンドはまだ機能するかもしれませんが、最初に呼び出されるデフォルトのチェーンを作成する場合にのみ可能ですinput

nft add chain netdev filter input \{ type filter hook ingress device "eth0" priority filter; policy accept; \}

ここで最初filter名前既存のnetdev filterテーブル。 2番目のfilter指定タイプチェーンの3番目の名前filterは一般的な標準名です。優先順位フィルターチェーンに使用されます。

設定に関する推奨事項は、特に後者を使用する必要がない限り、アドレス系列を使用することをCONFIG_NF_TABLES_INET=y意味する場合があります。inetnetdev

関連情報