Building BIND with GeoIP

tested on slackware current (Aug 2020)

Get rid of distro’s BIND and prepare some GeoIP engine

#slackpkg search libuv
#slackpkg search lmdb
#slackpkg search json-c
removepkg bind

slackpkg search libcap
slackpkg search libidn2

#slackpkg search libmaxminddb
ls -lF /var/log/packages/libmaxminddb-*

#recursive matters here
git clone --recursive https://github.com/maxmind/libmaxminddb.git
cd libmaxminddb/
./bootstrap
./configure
make
make install
cd ../
ls -lF /usr/local/lib/pkgconfig/libmaxminddb.pc
ldd /usr/local/bin/mmdblookup

grab latest stable BIND. Note with 9.16+, that’s --with-maxminddb

wget https://downloads.isc.org/isc/bind9/9.16.6/bind-9.16.6.tar.xz
tar xJf bind-9.16.6.tar.xz
cd bind-9.16.6/
./configure --sysconfdir=/etc --localstatedir=/var \
    --with-libtool --with-libidn2 \
    --without-python --without-gssapi \
    --with-maxminddb
    #--with-python=/usr/bin/python3
time make > ../bind.log && echo BUILT
make install
ldconfig
cd ../
named -v
named -V
ls -ldhF /var/run/named/
ls -ldhF /var/named/

Troubleshooting

while building libmaxminddb you get

maxminddb_test_helper.h:14:10: fatal error: libtap/tap.h: No such file or directory
   14 | #include "libtap/tap.h"
      |          ^~~~~~~~~~~~~~

==> you need to grab the repo with --recursive

Resources

maxmind / libmaxminddb https://github.com/maxmind/libmaxminddb


HOME | GUIDES | LECTURES | LAB | SMTP HEALTH | HTML5 | CONTACT
Copyright © 2024 Pierre-Philipp Braun