Réponses:
La commande est la partie facile, la partie difficile est d'avoir accès à une base de données.
Par exemple, Ubuntu a une base de données gratuite avec un outil de requête en ligne de commande ( geoiplookup
) dans le package. Mais il ne montre que les informations sur les pays et utilise une base de données statique (donc obsolète). Cet outil peut également interroger la base de données MaxMind GeoIP, si vous y avez souscrit.geoip-bin
Il existe diverses bases de données GeoIP que vous pouvez rechercher. Ils sont généralement conçus pour être visualisés via un navigateur Web, mais vous pouvez rechercher un script de grattage. Par exemple, voici un script ruby permettant de récupérer des données de la base de données MaxMind . Notez que le grattage peut être contraire aux conditions d'utilisation de la base de données.
geoipupdate; geoiplookup ...
Cette astuce est encore plus agréable et ne nécessite aucun paquet externe:
curl ipinfo.io/23.66.166.151
curl ipinfo.io/$(dig +short yourdomain.com)
Voici une autre excellente option. Instructions ici: http://kbeezie.com/geoiplookup-command-line/
Par exemple, sur Centos :
$ sudo yum install GeoIP GeoIP-data
$ geoiplookup 8.8.4.4
Fonctionne parfaitement.
Et bien sûr, vous pouvez toujours le configurer comme un cron:
$ /usr/bin/geoipupdate
geoipupdate
est un outil MaxMind, vous avez besoin d’un abonnement et de la clé de licence /etc/GeoIP.conf
. Je ne pouvais pas utiliser l' alternative gratuite ( J'ai reçu un code d'état HTTP inattendu de 401 ).