IP to Country-Konsolenbefehl


38

Gibt es einen Konsolenbefehl, der eine IP-Adresse als Eingabe verwendet und dessen geografische Informationen wie Stadt, Land, ISP usw. anzeigt?

Antworten:


27

Der Befehl ist der einfache Teil, der schwierige Teil ist der Zugriff auf eine Datenbank.

Zum Beispiel hat Ubuntu eine kostenlose Datenbank mit einem Kommandozeilen-Abfragetool ( geoiplookup) im Paket. Es werden jedoch nur Länderinformationen angezeigt und eine statische (daher veraltete) Datenbank verwendet. Dieses Tool kann auch die MaxMind GeoIP-Datenbank abfragen, wenn Sie dort ein Abonnement haben.geoip-bin Installieren Sie geoip-bin

Es gibt verschiedene GeoIP-Datenbanken, nach denen Sie suchen können. Sie sind im Allgemeinen dazu gedacht, über einen Webbrowser angezeigt zu werden, Sie können jedoch nach einem Scraping-Skript suchen. Hier ist beispielsweise ein Ruby-Skript zum Abrufen von Daten aus der MaxMind-Datenbank . Beachten Sie, dass das Scrapen möglicherweise gegen die Nutzungsbedingungen der Datenbank verstößt.


1
Ich habe gerade die Ubuntu Geoiplookup verwendet und es ist gut genug.
BuZain

CentOS # yum installieren GeoIP
zmonteca

@StephenRauch Danke, aber bitte benutze den offiziellen Ersatz für den defekten bit.ly Link: hostmar.co/software-small
Gilles '

1
@StephenRauch Der apt-Link funktioniert nur mit einem Browser-Plug-In, das Teil der Ubuntu-Standardinstallation ist, aber selten anders installiert wird.
Gilles 'SO- hör auf böse zu sein'

Diese sind auch in Homebrew für Mac:geoipupdate; geoiplookup ...
Pysis

58

Dieser Trick ist noch schöner und erfordert keine externen Pakete:

curl ipinfo.io/23.66.166.151

2
Falls ipinfo.io eines Tages offline geht, bietet ifconfig.me einen ähnlichen Service (plus eine REST-ähnliche API). Aber ifonfo.io scheint viel schneller zu sein.
Cedbeu

1
$ host yourdomain.com | cut -d '' -f 4 | curl ipinfo.io/$1
zmonteca

2
ipinfo.io ist für 1000 Anfragen / Tag (siehe ihre Preisdokumentation ).
Matthieu,

4
Eine weitere Alternative:curl ipinfo.io/$(dig +short yourdomain.com)
John Red

2
Wenn jemand jemals die Obergrenze der ipinfo.io-API überschreitet (glücklicherweise?), Gibt es auch freegeoip.net mit einem atemberaubenden Limit von 15.000 Anfragen pro Stunde. (Was unter der Haube zu laufen scheint die Geoiplookup von den anderen Antworten)
Samthecodingman

8

Hier ist eine weitere großartige Option. Anweisungen hier: http://kbeezie.com/geoiplookup-command-line/

Zum Beispiel auf Centos :

$ sudo yum install GeoIP GeoIP-data
$ geoiplookup 8.8.4.4

Funktioniert perfekt.

Und natürlich können Sie dies jederzeit als Cron einrichten:

$ /usr/bin/geoipupdate

geoipupdateIst ein MaxMind-Tool, benötigen Sie ein Abonnement und den Lizenzschlüssel dazu /etc/GeoIP.conf. Ich konnte die kostenlose Alternative nicht nutzen ( erhielt den unerwarteten HTTP-Statuscode 401 ).
Pablo A

-1

Oder benutze whois

$ whois 8.8.8.8 |grep country -i -m 1 |cut -d ':' -f 2 |xargs US

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.