bind v9.16.2 build, inconsistent GeoIP2 configuration options usage ?

PGNet Dev pgnet.dev at gmail.com
Wed Apr 15 20:07:24 UTC 2020


cosmetic config error

building 9.16.2, config options include

  --disable-geoip         support GeoIP2 geolocation ACLs if available
                          [default=yes]

(this^^ is confusing usage; do you DISABLE-geoip in order TO 'support GeoIP2 geolocation ACLs if available' ?
 shouldn't that be "--enable-geoip" [default=yes]?)



  ...
  --with-geoip2           deprecated, use --with-maxminddb
  --with-maxminddb=PATH   Build with MaxMind GeoIP2 support (auto|yes|no|path)
                          [default=auto]

since I have installed GeoIP2*, 

	pkg-config --cflags --libs libmaxminddb
		-I/usr/local/include -L/usr/local/lib64 -lmaxminddb

	ls -al /usr/local/{include,lib64}/*maxmind*
		-rw-r--r-- 1 root root  507 Mar 18 18:27 /usr/local/include/maxminddb_config.h
		-rw-r--r-- 1 root root 8.4K Mar 18 18:27 /usr/local/include/maxminddb.h
		-rwxr-xr-x 1 root root  943 Mar 18 18:27 /usr/local/lib64/libmaxminddb.la*
		lrwxrwxrwx 1 root root   21 Mar 18 18:27 /usr/local/lib64/libmaxminddb.so -> libmaxminddb.so.0.0.7*
		lrwxrwxrwx 1 root root   21 Mar 18 18:27 /usr/local/lib64/libmaxminddb.so.0 -> libmaxminddb.so.0.0.7*
		-rwxr-xr-x 1 root root 122K Mar 18 18:27 /usr/local/lib64/libmaxminddb.so.0.0.7*

	ls -al /var/lib/GeoIP2/
		total 71M
		drwxr-xr-x  2 named root 4.0K Apr  2 03:15 ./
		drwxr-xr-x 85 root  root 4.0K Apr 12 19:11 ../
		-rw-rw-r--  1 named root 6.4M Apr 15 12:09 GeoLite2-ASN.mmdb
		-rw-rw-r--  1 named root  61M Apr 15 12:09 GeoLite2-City.mmdb
		-rw-rw-r--  1 named root 3.7M Apr 15 12:09 GeoLite2-Country.mmdb

and *DO* want to "support GeoIP2 geoloc ACLs", building here with

	--disable-geoip=yes \
	--with-maxminddb=/var/lib/GeoIP2 \

FAILs with

	configure: error: invalid feature name: geoip=yes

switching to

-	--disable-geoip=yes \
+	--disable-geoip \
	--with-maxminddb=/var/lib/GeoIP2 \

configure completes, reporting 'old' GeoIP support is correctly DISabled
but there's NO mention of GeoIP2/Lite support, i.e., *maxminddb

	Optional features enabled:
	    Mutex lock type: adaptive
	    IPv6 support (--enable-ipv6)
	    Python tools (--with-python)
	    XML statistics (--with-libxml2)
	    JSON statistics (--with-json-c): -I/usr/include/json-c -ljson-c
	    HTTP zlib compression (--with-zlib)
	    LMDB database to store configuration for 'addzone' zones (--with-lmdb)
	    IDN support (--with-libidn2)
	    Print backtrace on crash (--enable-backtrace)
	    Use symbol table for backtrace, named only (--enable-symtable)
	    Use GNU libtool (--with-libtool)
	    DNSSEC validation active by default (--enable-auto-validation)
	    Dynamically loadable zone (DLZ) drivers:
	        None
	-------------------------------------------------------------------------------
	Features disabled or unavailable on this platform:
	    ...
	    GeoIP2 access control (--enable-geoip)
	    ...

after subsequent

	make depend
	make
	make install

	named -v
		BIND 9.16.2 (Stable Release) <id:b310dc7>

checking, the maxmind lib *is* linked

	ldd `which named`
		libmaxminddb.so.0 => /usr/lib64/libmaxminddb.so.0 (0x00007f94618d8000)


so, *is* available GeoIP2 support with available DBs enabled, and this is just a _reporting_ error?
or is it not correctly/completely enabled ... ?

what is the correct, complete config specification for using installed GeoIP2 support?


More information about the bind-users mailing list