ebtables arp 규칙을 nftables로 마이그레이션

ebtables arp 규칙을 nftables로 마이그레이션

nftables(Ubuntu trusty, 커널 3.19)로 이동하고 싶습니다. 그러나 ARP 패킷에 대한 ebtables 규칙을 마이그레이션하는 방법이 궁금합니다.

-p ARP --arp-op 요청 --arp-ip-src 192.168.178.237 --arp-mac-src 2:fb:c5:e0:ef:a3 -j 수락

명령은 nft add rule bridge filter qemu1-o arp operation request counter accept작동하지만 규칙에 ip/mac 제약 조건을 추가하는 방법을 알 수 없습니다.

답변1

불행하게도 nftables현재 arp 테이블에는 소스 및 대상 ipv4 주소에 대한 구문이 구현되어 있지 않습니다.

경험적으로 나는 다음 표현식을 대신 사용할 수 있다는 것을 알았습니다.

  • plen 4 @nh,64,32(출처 IP)
  • plen 4 @nh,96,32(대상 IP)

값의 IPv4 주소는 10진수 형식으로 지정되어야 합니다 integer.

일부 온라인 변환기를 사용하여 IP 주소를 숫자 형식으로 가져올 수 있습니다.

귀하의 예 192.168.178.237에서는3232281325

따라서 최종 규칙은 다음과 같습니다.

nft add rule arp filter input arp operation request arp plen 4 @nh,64,32 3232281325 ether saddr 2:fb:c5:e0:ef:a3 counter accept

추신: 이전 명령을 가져오고 새 구문을 확인하기 위해 호환 백엔드를 xtables-nft-multi제공하는 마지막 iptables 패키지를 사용할 수 있습니다 .nf_tables

관련 정보