nftables를 사용하여 UDP 패킷을 무작위로 삭제

nftables를 사용하여 UDP 패킷을 무작위로 삭제

UDP 패킷을 무작위로 삭제하는 iptables 규칙이 있습니다. 이것을 nftables로 변환하려고 하는데, nftables가 "dport" 매개변수가 예상치 못한 결과라고 불평하기 때문에 구문 오류가 발생할 수 있습니다.

내 iptables 규칙은 다음과 같습니다.iptables -A INPUT -m statistic --mode random --probability 0.10 -p udp --destination-port 2020 -i eth0 -j DROP

사용해 보았지만 iptables-translate동일한 규칙이 적용됩니다.

$ iptables-translate -A INPUT -m statistic --mode random --probability 0.10 -p udp  --destination-port 2020 -i eth0  -j DROP
nft # -A INPUT -m statistic --mode random --probability 0.10 -p udp --destination-port 2020 -i eth0 -j DROP

나는 다음을 사용하여 나만의 nftables 테이블, 체인 및 규칙을 만들어 보았습니다.

$ sudo nft add table ip filter
$ sudo nft add chain ip filter mychain

하지만 규칙을 사용하려고 하면 예상치 못한 오류가 발생합니다 dport.

$ sudo nft add rule ip filter mychain input udp dport 2020 drop
Error: syntax error, unexpected dport, expecting end of file or newline or semicolon
add rule ip filter mychain input udp dport 2020 drop
                                     ^^^^^          
  1. 내가 뭘 잘못했나요?
  2. iptables-translate이 규칙이 번역되지 않는 이유는 무엇입니까?

관련 정보