Ipset is now included in the kernel and that’s the main event of ipset in the previous year. József recommands to use the 6.8 version which is included in kernel 3.1. If your kernel is older, using a separately compiler ipset is recommanded.
If we omit the bugfixes, a lot of of new features have been introduced sinced version 6.0. It is possible to list the sets defined on a system without getting everything which is useful when big set have been defined.
A new hash net,iface has been introduced.
- tc filter support: to use ipset in traffic shaping
- ipset state replication: it would be interesting but all iptables match with state should be replicated
This last point is a really interesting problem: there is a lot of data that could be exchanged because the state of match changes, and it is difficult to find an identifier to use when doing the replication (where this match take place).
Other possible extensions is to add match support in the SET target. It will help to treat the problem of overlapping sets. For example, we could say:
ipset new foo hash:net ipset add foo 192.168.1.1 --drop ipset add foo 192.168.1.0/24 [--accept] iptables -A ... -j SET --match-set foo dir \ --match-accept chain1 --match-drop chain2
József would like to refresh its great test paper but performance testing is a real problem because it requires at least 50 quad-core computers and making all the needed tests could take as much as 18 days.