質問:
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
意味する場合があります。inet
netdev