+++ This bug was initially created as a clone of Bug #1663670 +++ Description of problem: MaxMind has discontimued the (legacey) databases that geoiplookup uses. So geoiplookup is no longer working after 2019-01-02 (See below) Version-Release number of selected component (if applicable): # cat /etc/redhat-release Fedora release 29 (Twenty Nine) # dnf info GeoIP Last metadata expiration check: 0:21:52 ago on 2019-01-04T07:53:19 CET. Installed Packages Name : GeoIP Version : 1.6.12 Release : 4.fc29 Arch : x86_64 Size : 352 k Source : GeoIP-1.6.12-4.fc29.src.rpm Repo : @System From repo : fedora Summary : Library for country/city/organization to IP address or hostname mapping URL : http://www.maxmind.com/app/c License : LGPLv2+ Description : GeoIP is a C library that enables the user to find the country that any IP : address or hostname originates from. : : It uses file based databases that can optionally be updated on a weekly basis : by installing the geoipupdate-cron (IPv4) and/or geoipupdate-cron6 (IPv6) : packages. # dnf info geoipupdate-cron Last metadata expiration check: 0:20:59 ago on 2019-01-04T07:53:19 CET. Installed Packages Name : geoipupdate-cron Version : 3.1.1 Release : 1.fc29 Arch : noarch Size : 117 Source : geoipupdate-3.1.1-1.fc29.src.rpm Repo : @System From repo : fedora Summary : Cron job to do weekly updates of GeoIP databases URL : http://dev.maxmind.com/geoip/geoipupdate/ License : GPLv2 Description : Cron job for weekly updates to GeoIP Legacy database from MaxMind. How reproducible: 100% Steps to Reproduce: 1. Ensure the latest files are available # ls -al /usr/share/GeoIP/ total 70076 drwxr-xr-x. 2 root root 4096 Jan 3 20:45 . drwxr-xr-x. 392 root root 12288 Jan 3 16:20 .. -rw-------. 1 root root 0 Jan 3 20:17 .geoipupdate.lock -rw-r--r--. 1 root root 6311541 Jan 3 20:18 GeoLite2-ASN.mmdb -rw-r--r--. 1 root root 61914952 Jan 3 20:17 GeoLite2-City.mmdb -rw-r--r--. 1 root root 3506690 Jan 3 20:17 GeoLite2-Country.mmdb 2. run geoiplookup geoiplookup 8.8.8.8 Actual results: # geoiplookup 8.8.8.8 # Expected results: # geoiplookup 8.8.8.8 GeoIP Country Edition: US, United States Additional info: https://support.maxmind.com/geolite-legacy-discontinuation-notice/ "On January 2, 2019, we discontinued our GeoLite Legacy databases." After contacting support.com they informed me that "GeoLite Legacy/GeoIP Legacy integrations are not compatible with GeoLite2/GeoIP2 formats, so for querying the GeoLite2 .mmdb format, you would want to use our GeoIP2 C API's mmdblookup command instead of geoiplookup. The GeoIP2 C API developer documentation is available here: https://maxmind.github.io/libmaxminddb/ https://maxmind.github.io/libmaxminddb/mmdblookup.html https://github.com/maxmind/libmaxminddb " --- Additional comment from Paul Howarth on 2019-01-06 11:35:52 UTC --- geoiplookup is explicitly a tool for looking values from the outdated legacy databases, which although no longer distributed by MaxMind, are still available in Fedora and should be pulled in as a dependency of the GeoIP package. So I'm wondering how you've managed to end up with GeoIP installed and not having at least GeoLiteCountry.dat in /usr/share/GeoIP? The legacy GeoIP stack will need to remain in Fedora, albeit becoming increasingly less useful, until all projects that use it have moved over to the new API. To use the latest databases, use the mmdblookup tool, which is currently in the libmaxminddb-devel package. I would argue that that is a bug and it should be packaged in the main libmaxminddb package, or in a new package by itself, perhaps libmaxminddb-utils or mmdblookup. You should raise a bug on libmaxminddb if you want to request that though. --- Additional comment from Peter Bieringer on 2019-01-10 06:51:05 UTC --- This also affects EL6 and EL7, for none of the 3 GeoIP version 2 is available via upstream or EPEL, making now GeoIP no longer usable. geoipupdate of FC29 already downloads now *.mmdb, but GeoIP libraries are not enhanced to use them. geoipupdate -v geoipupdate 3.1.1 Opened License file /etc/GeoIP.conf Insert edition_id GeoLite2-Country Insert edition_id GeoLite2-City Read in license key /etc/GeoIP.conf Number of edition IDs 2 url: https://updates.maxmind.com/app/update_getfilename?product_id=GeoLite2-Country md5hex_digest: 972af621796fe0720aa54870c10609f7 url: https://updates.maxmind.com/geoip/databases/GeoLite2-Country/update?db_md5=972af621796fe0720aa54870c10609f7 No new updates available url: https://updates.maxmind.com/app/update_getfilename?product_id=GeoLite2-City md5hex_digest: b65924fefd570a5871e2d88509f55712 url: https://updates.maxmind.com/geoip/databases/GeoLite2-City/update?db_md5=b65924fefd570a5871e2d88509f55712 No new updates available ll /usr/share/GeoIP/*.mmdb -rw-r--r--. 1 root root 61332406 10. Jan 07:18 /usr/share/GeoIP/GeoLite2-City.mmdb -rw-r--r--. 1 root root 3525478 10. Jan 07:18 /usr/share/GeoIP/GeoLite2-Country.mmdb strings /usr/lib64/libGeoIP.so.1.6.12 |grep mmdb (empty) --- Additional comment from Jean-Philippe Pialasse on 2019-02-18 05:47:50 UTC --- (In reply to Paul Howarth from comment #1) > To use the latest databases, use the mmdblookup tool, which is currently in > the libmaxminddb-devel package. I would argue that that is a bug and it > should be packaged in the main libmaxminddb package, or in a new package by > itself, perhaps libmaxminddb-utils or mmdblookup. You should raise a bug on > libmaxminddb if you want to request that though. agree this is a bug, I am not able to clone this bug and make it against libmaxminddb someone with more priviledges please, help to do so (for Fedora and EPEL). opensuse has created a specific package mmdblookup, libmaxminddb-utils would be good too, but cli tools have nothing to do in devel package IMO.
Keep in mind that the mmdblookup doesn't produce valid json. See https://github.com/maxmind/libmaxminddb/issues/135
"ipv6calc" (http://www.deepspace6.net/projects/ipv6calc.html) since version 2.1.0 has IP to CountryCode implemented as shortcode as replacement to geoiplookup, examples: ipv6calc -q --addr2cc 85.214.153.25 DE ipv6calc -q --addr2cc 2a01:238:4281:8600:812a:5915:8d24:58f3 DE and it can also use DB-IP.com MMDB instead (or as fallback)...
This message is a reminder that Fedora 29 is nearing its end of life. Fedora will stop maintaining and issuing updates for Fedora 29 on 2019-11-26. It is Fedora's policy to close all bug reports from releases that are no longer maintained. At that time this bug will be closed as EOL if it remains open with a Fedora 'version' of '29'. Package Maintainer: If you wish for this bug to remain open because you plan to fix it in a currently maintained version, simply change the 'version' to a later Fedora version. Thank you for reporting this issue and we are sorry that we were not able to fix it before Fedora 29 is end of life. If you would still like to see this bug fixed and are able to reproduce it against a later version of Fedora, you are encouraged change the 'version' to a later Fedora version prior this bug is closed as described in the policy above. Although we aim to fix as many bugs as possible during every release's lifetime, sometimes those efforts are overtaken by events. Often a more recent Fedora release includes newer upstream software that fixes bugs or makes them obsolete.
mmdblookup is still part of the libmaxminddb-devel package in Rawhide.
This bug appears to have been reported against 'rawhide' during the Fedora 32 development cycle. Changing version to 32.
If I understand this correctly, the effort here is to move mmdblookup from -devel to the main package at least(if not to a separate subpackage). This has been addressed in this PR: https://src.fedoraproject.org/rpms/libmaxminddb/pull-request/1 I think it is ok like this, no need to create an extra package just for mmdblookup. What do you think Paul?
(In reply to Michal Ruprich from comment #6) > If I understand this correctly, the effort here is to move mmdblookup from > -devel to the main package at least(if not to a separate subpackage). This > has been addressed in this PR: > https://src.fedoraproject.org/rpms/libmaxminddb/pull-request/1 > > I think it is ok like this, no need to create an extra package just for > mmdblookup. What do you think Paul? It looks fine to me but I'm not the maintainer of libmaxminddb so it's not my opinion that matters. Igor Raits seems to be the maintainer but isn't on the Cc list for this bug somehow.
Igor agreed to make me a co-maintainer for this package, since I own it in RHEL anyway. I am closing this, since I think the solution from comment #6 is enough. Feel free to re-open should you feel that this needs more attention.