Nftables(Ubuntu trusty、カーネル3.19)に移動したいと思います。ただし、ARPパケットのebtablesルールを移行する方法はわかりません。
-p ARP --arp-op Request --arp-ip-src 192.168.178.237 --arp-mac-src 2:fb:c5:e0:ef:a3 -j ACCEPT
コマンド nft add rule bridge filter qemu1-o arp operation request counter accept
は機能しますが、ip/mac制約をルールに追加する方法がわかりません。
残念ながら、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
PS:xtables-nft-multi
互換バックエンドを提供する最後のiptablesパッケージのnf_tables
を使用して、古いコマンドをインポートし、新しい構文を確認できます。