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 ACCEPT

コマンドは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.2373232281325

最終的なルールは次のようになります。

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

関連情報