small daemon for DNSBLs
Project homepage: https://rbldnsd.io
Description
rbldnsd is a small and fast DNS daemon which is especially made to serve
DNSBL zones. This daemon was inspired by Dan J. Bernstein's rbldns
program found in the djbdns package.
rbldnsd is extremely fast - it outperforms both bind and djbdns greatly.
It has very small memory footprint.
The daemon can serve both IP-based (ordb.org, dsbl.org etc) and
name-based (rfc-ignorant.org) blocklists. Unlike DJB's rbldns, it has
ability to specify individual values for every entry, can serve as many
zones on a single IP address as you wish, and, finally, it is a real
nameserver: it can reply to DNS metadata requests. The daemon keeps all
zones in memory for faster operations, but its memory usage is very
efficient, especially for repeated TXT values which are stored only
once.
Package information
- Ports path
- net/rbldnsd
- Package architecture
- amd64
- Maintainer
- Giovanni Bechis <giovanni@openbsd.org>
- Categories
- net, lang/python
- Available flavors
- None listed
- Only for architectures
- aarch64, amd64, arm, i386, mips64, mips64el, powerpc, powerpc64, riscv64, sparc64, alpha, hppa
Ports list build and test dependencies as well as runtime dependencies. pkg_add selects those needed for installation.
Direct dependencies
Build
Test
OpenBSD README
This README contains unresolved ports variables; replace them before using its commands.
+-----------------------------------------------------------------------
| Running rbldnsd on OpenBSD
+-----------------------------------------------------------------------
rbldnsd runs chrooted
=====================
By default, the rbldnsd package will chroot to ${RBLDNSD_BASE}, and the
package will create two subdirectories underneath:
${RBLDNSD_BASE}/ # rbldnsd chroot path
${RBLDNSD_BASE}/etc/ # zonefiles
${RBLDNSD_BASE}/var/ # scratch/work (-w) directory
Because of the chroot(), all paths given to rbldnsd are relative to
to the chroot path (${RBLDNSD_BASE}). Thus, with this line in
/etc/rc.conf.local:
rbldnsd_flags=-b 127.0.0.1/53 rbl.invalid:ip4tset:/etc/rbl.invalid.zone
rbldnsd will load the "rbl.invalid" zone from
${RBLDNSD_BASE}/etc/rbl.invalid.zone and do any processing in
${RBLDNSD_BASE}/var/
Note that rbldnsd will refuse to start if you do not supply the "-b"
option and an "IP address <forward slash> port number" argument for
binding, as shown above.