IPSet内の内部カウンターの値を読み出すにはどうすればいいですか

IPSet内の内部カウンターの値を読み出すにはどうすればいいですか

IPセットを作成するときに「カウンター」というオプションがあることは知っていますIPセットただし、セット内の各 IP アドレスから転送されたパケット数またはデータ量を知るために、カウンターの値を読み取る方法を知りたいです。

答え1

最も簡単な方法は、ipset をダンプして値を探すことです。ダンプせずに値を取得したい場合は、libipset API を使用して C を記述する必要があるでしょう。

root@host # ipset save |grep  -e 'packets [1-9]'
add ganeti-v4 1.2.3.4 timeout 85663 packets 26 bytes 5876 comment "basedata: @1475359261 /etc/firewall.d/functions/ipset"
add ganeti-v4 1.2.3.5 timeout 85663 packets 30 bytes 6780 comment "basedata: @1475359261 /etc/firewall.d/functions/ipset"
add drbd-v4 4.5.6.7 timeout 85663 packets 4 bytes 240 comment "basedata: @1475359261 /etc/firewall.d/functions/ipset"

関連情報