[rbldnsd] how to query rbldnsd
Michael Tokarev
mjt at corpit.ru
Tue Nov 27 19:03:01 MSK 2007
Liqun Du wrote:
> Thanks for the help. It works now. I have few load/scalability
> questions. If we have several millions of IP in the BL, should we use
> multiple rbldnsd (with multiple zones)? How big the list it can load
> without having a performance issue?
The answer depends on your setup.
The most important thing is the type of dataset you'll use.
For a simple but large list, use ip4tset (not ip4set) - it
requires only 4 bytes per IP address (as opposed to ip4set
which requires 8 bytes minimum per entry plus whatever
text you assotiate with listings).
It will spend some time to reload a list, the more time the
greather the list is. Just try it out and see if the performance
is sufficient for you (hardware etc is different everywhere).
Try with -f switch (background reloads) - it requires 2x amount
of memory during reloads, but it continues answering queries
during that time.
If you want to store highly dynamic data, there are some ways
to minimize number of full reloads. For example, DSBL.org
currently lists about 13M IP addresses, yet new listings are
propagated to all the official secondaries in 1..2 minutes -
obviously such a small time window isn't sufficient to do
a full transfer of the complete file and to reload it.
Running several rbldnsds on the same machine for scalability
reasons seems to be not necessary. You can divide your data
into smaller chunks - for example, more frequently changing
data separately from more static data, -- again, to minimize
reload time. Running multiple machines with the same rbldnsd
setup may be good for reliability - if for whatever reason one
machine stops or dies...
Again from DSBL.org data and usage, a 600MHz PIII-Celeron
machine (which is a joke by current standards) can answer
more than 10k queries per second (with that 13M entries
list plus several more public blocklists).
So the main recommendation is - just try it out and see.
If something goes slow, there are ways to optimize it.
/mjt
More information about the rbldnsd
mailing list