ip pool documentation?

Ian Jones ian@dsl081-056-052.sfo1.dsl.speakeasy.net
13 Oct 2001 23:19:17 -0700


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

"Nathan Ward" <nathan@xoeit.co.nz> writes:

> is there any documentation available for the ip pool patch in netfilter?

No.
I managed to dig out the original readme from the first submission to
the mailing list by reading the archives. It would appear that this is
not actively maintained.

I have posted that original submission which includes a little bit of
a README in it here:
http://www.speakeasy.net/~roux/ippool.tgz

Note to readers of archives, this will not be around
long. Hmmm... perhaps I should just subject the list to the contents
of the readme? OK.


- ------- IPPOOL.CONF example -----------------
# sample /etc/ippool.conf
#
# Nr	Name	Type	Definition
0	toast	bitmap	10.1.0.0 10.1.0.255
1	another	bitmap	10.2.3.4 10.5.6.7



- ---- README for IPPOOL --------
Sun Apr 23 08:49:29 MEST 2000 <bof@bof.de>

This README could be longer...

PURPOSE

	ippool implements pools of IP addresses, which can be used
	in the iptables framework instead of, or in addition to,
	the normal IP address matches. Right now, a single pool
	is an inclusive [startip, endip] range of addresses, and
	a bitmap with one bit per address in that range; if the bit
	is set, the pool is said to match.

USAGE

	Here's a very brief example, based on the distributed ippool.conf:

	# create the 'toast' pool, with IP range from /etc/ippool.conf
	ippool -N toast
	# use this pool with netfilter
	iptables -A OUTPUT -m pool --srcpool toast -j LOG
	# test-ping one address from the pool, see that nothing gets logged
	ping 10.1.0.1
	# add the test IP addresses to the pool (set its bit)
	ippool -A toast 10.1.0.1
	# test-ping again, see that now there is something logged
	ping 10.1.0.1
	# add another IP addresses, remove the first one - just to show off.
	# look carefully at the output of the command: the rightmost two
	# columns give you an atomic indication whether the address previously
	# was in the pool
	ippool -A toast 10.1.0.1
	ippool -A toast 10.1.0.7
	ippool -D toast 10.1.0.1
	ippool -D toast 10.1.0.1

	Easy, isn't it?

STATE

	Almost everything but flushing pools, is done. If you need
	to redefine a pool, or make it empty, you have to remove
	all rules referencing pools, unload the ip_pool module,
	and load it again. Later...

	Nothing in this implementation is set in stone; I will certainly
	mangle the interfaces in the next few days. The purpose of this
	initial distribution is to get feedback.

	Some ideas for extension:
	- make pools accessible as a classifier in the network queueing
	  framework. This is why the ip_pool module is seperated from
	  the netfilter matcher.
	- implement 'hash', 'array', and 'sorted_array' pool types,
	  with hash lookup, sequential scan, and binary scan lookup.
	- maybe create subpools, representing a subset of another pool,
	  with the bitmap shared between them.
	- make a metapool type, which is a sequence of other pools,
	  matching if one of the contained pools matches.
	- put the pool naming into the kernel, for stability reasons.


-----BEGIN PGP SIGNATURE-----
Comment: Processed by Mailcrypt 3.5.6 and Gnu Privacy Guard <http://www.gnupg.org/>

iD8DBQE7yS5lwBVKl/Nci0oRAg7TAKCPbOMOLk74YlRU1J03QFbFSdADiACghk22
1LsTvcTP4RpXkBX3UpdhVRw=
=5exz
-----END PGP SIGNATURE-----