Homebrew instalado: geoiplookup no muestra ningún resultado. ¿Cómo instalar los datos de GeoIP?

> geoipupdate; geoiplookup 8.8.4.4
> echo $?
0

No imprime ninguna salida. De acuerdo con esta publicación , debería haber datos GeoIP. ¿Cómo usar eso en macOS?

> brew search geoip
geoip                                                                                                                                geoipupdate
homebrew/nginx/geoip2-nginx-module    homebrew/php/php53-geoip              homebrew/php/php54-geoip              homebrew/php/php55-geoip              homebrew/php/php56-geoip              homebrew/php/php70-geoip              homebrew/php/php71-geoip

No hay tal paquete. ¿Cómo usar geoiplookup en macOS / Homebrew?

> brew info geoip
geoip: stable 1.6.9 (bottled), HEAD
This library is for the GeoIP Legacy format (dat)
https://github.com/maxmind/geoip-api-c
/usr/local/Cellar/geoip/1.6.9 (17 files, 548.9K) *
  Poured from bottle on 2017-01-21 at 19:22:56
From: https://github.com/Homebrew/homebrew-core/blob/master/Formula/geoip.rb
==> Dependencies
Optional: geoipupdate ✔
==> Options
--universal
        Build a universal binary
--with-geoipupdate
        Build with geoipupdate support
--HEAD
        Install HEAD version
> brew info geoipupdate
geoipupdate: stable 2.3.1 (bottled), HEAD
Automatic updates of GeoIP2 and GeoIP Legacy databases
https://github.com/maxmind/geoipupdate
/usr/local/Cellar/geoipupdate/2.3.1 (13 files, 83.7K) *
  Poured from bottle on 2017-01-21 at 19:25:04
From: https://github.com/Homebrew/homebrew-core/blob/master/Formula/geoipupdate.rb
==> Options
--universal
        Build a universal binary
--HEAD
        Install HEAD version

Deseo usar datos geográficos locales, no consultar una API externa alojada en la web.

Respuestas (3)

Después de instalar geoipupdate y geoip con compatibilidad con geoipupdate, navegue hasta el archivo /usr/local/Cellar/geoipupdate/2.3.1/etc/GeoIP.confy ábralo.

Reemplazar:

# Please see http://dev.maxmind.com/geoip/geoipupdate/ for instructions
# on setting up geoipupdate, including information on how to download a
# pre-filled GeoIP.conf file.

# Enter your user ID and license key below. These are available from
# https://www.maxmind.com/en/my_license_key. If you are only using free
# GeoLite databases, you make leave the 0 values.
UserId 0
LicenseKey 000000000000

# Enter the product IDs of the databases you would like to update.
# Multiple product IDs are separated by spaces.
ProductIds GeoLite2-Country GeoLite2-City
...

con:

# The following UserId and LicenseKey are required placeholders:
UserId 999999
LicenseKey 000000000000

# Include one or more of the following ProductIds:
# * GeoLite2-City - GeoLite 2 City
# * GeoLite2-Country - GeoLite2 Country
# * GeoLite-Legacy-IPv6-City - GeoLite Legacy IPv6 City
# * GeoLite-Legacy-IPv6-Country - GeoLite Legacy IPv6 Country
# * 506 - GeoLite Legacy Country
# * 517 - GeoLite Legacy ASN
# * 533 - GeoLite Legacy City
ProductIds GeoLite2-City GeoLite2-Country GeoLite-Legacy-IPv6-City GeoLite-Legacy-IPv6-Country 506 517 533
...

y actualice la base de datos con geoipupdate.

Entrar geoiplookup 8.8.4.4ahora producirá:

GeoIP Country Edition: US, United States
GeoIP City Edition, Rev 1: US, N/A, N/A, N/A, N/A, 37.750999, -97.821999, 0, 0

Actualizar:

Según el comentario de adejones, el archivo GeoIP.conf se movió en versiones más nuevas de geoipupdate/usr/local/etc/GeoIP.conf "instalado por cerveza" .

Trabajó para mí en macOS 10.13.3 usando brew 1.5.3, geoipupdate 2.5.0 sin embargo, el archivo conf de geoipupdate se encuentra aquí:/usr/local/etc/GeoIP.conf
@adejones Gracias por la actualización. Agregué un anexo...
Sin comentar y establecer el primer número en consecuencia, no funciona. ``` 8 AccountID 999999 9 LicenseKey 000000000000 ``` ``` ~ ls /usr/local/Cellar/geoipupdate/ 3.1.1/ ~ brew --version Homebrew 1.8.3 ~ brew info geoip geoip: estable 1.6.12 ( embotellado), HEAD ... /usr/local/Cellar/geoip/1.6.12 (18 archivos, 548.9KB) * Vertido de la botella el 25-11-2018 a las 11:57:28 De: github.com/Homebrew/ homebrew-core/blob/master/Formula/geoip.rb ... ```

Todavía no puedo entender cómo hice este trabajo, y por qué es tan poco intuitivo,

Esto es lo que hice:

  brew install geoipupdate
  brew install libmaxminddb

entonces

mmdblookup -i xx.xx.xx.xx -f /usr/local/var/GeoIP/GeoLite2-City.mmdb
¿De dónde sacas los archivos db?Can't open /usr/local/var/GeoIP/GeoLite2-City.mmdb - Error opening the specified MaxMind DB file

Use https://github.com/maxmind/mmdbinspect con bases de datos de https://github.com/wp-statistics/GeoLite2-City :

mmdbinspect -db "$database_file" "$ip"

Puede utilizar jqpara seguir procesando la salida.