질문:
nft 규칙을 추가하려고 하면 "오류: 규칙을 처리할 수 없습니다: 해당 파일이나 디렉터리가 없습니다"라는 메시지가 계속 나타납니다.
명령 예:
nft add rule netdev filter input ip daddr 10.10.10.10 counter
문제 해결:
- 확인된 "netdev 필터"가 나열된 표에 표시됩니다.
nft list tables
- nftables.service가 실행 중인지 확인하세요.
- 단위 파일은 /etc/nftables.conf가 사용 중임을 보여줍니다.
- 모든 명령을 루트로 실행하십시오.
- 이 게시물권장 설정
CONFIG_NF_TABLES_INET=y
. 어떻게 해야 합니까? 아직 명확하지 않습니다.
체계
- 우분투 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
테이블. 두 번째 filter
지정유형체인의 세 번째 이름 filter
은 일반 표준 이름입니다.우선순위필터 체인에 사용됩니다.
설정에 대한 권장 사항은 특별히 후자를 사용해야 하는 경우가 아니면 주소 계열을 CONFIG_NF_TABLES_INET=y
사용하는 것을 의미할 수도 있습니다 .inet
netdev