HomePhabricator

varnish: switch from libGeoIP to libmaxminddb

Description

varnish: switch from libGeoIP to libmaxminddb

This switches our Varnish from the old libgeoip to libmaxminddb,
which uses the new GeoIP2 databases and adds IPv6 support to the
GeoIP Set-Cookie and our geoiplookup JSON.

The region identifier is different than the old format, which may
cause some breakage; the old format was a numeric identifier in
the database, while the new format is a GeoIP ISO code.

Also, the final element of the cookie no longer differentiates
IPv4 vs IPv6 (which was primarily for related fallback), so the
final field is always 'v4' now.

One notable deficiency here is that updated MaxMind databases are
only reloaded when VCL is reloaded, but I think we can save that
problem for later varnish4/vmod work.

Bug: T99226
Change-Id: I7685edd63a0dcddcd32d950f563e8f0e51dfd281

Details

Provenance
faidonAuthored on Nov 17 2015, 3:42 PM
BBlackCommitted on Aug 22 2016, 2:31 PM
Parents
rOPUP543d9d05ffad: cache_misc: Allow PATCH requests
Branches
Unknown
Tags
Unknown
ChangeId
I7685edd63a0dcddcd32d950f563e8f0e51dfd281