如何讀取 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"

相關內容