Wie man Geolokalisierung von IP-Adressen unter Linux durchführt
Sie haben wahrscheinlich verschiedene Dienste im Internet bemerkt, die automatisch wissen, wo Sie sich auf der Welt befinden. Von Musik- und Videostream-Diensten bis hin zu Onlineshops verwenden diese Dienste eine Technik namens IP-Geolokalisierung, die Ihren ungefähren physischen Standort mit der von Ihnen verwendeten IP-Adresse abgleicht. Wenn Sie sich mit dem Internet verbinden, wird Ihrem Gerät eine IP-Adresse aus einem Pool von Adressen zugewiesen, die den verschiedenen Telekommunikationsunternehmen zugewiesen sind. Die Funktionsweise dieser Adressen kann ziemlich kompliziert sein, aber da sie in Blöcken zugewiesen sind, ist es möglich, eine Datenbank zu erstellen, die einen Adressenblock einem Land oder sogar einem bestimmten Gebiet oder einer bestimmten Stadt zuordnet.
Die gute Nachricht ist, dass diese Geolocation-Lookups nicht nur für die großen Unternehmens- und Mega-Websites geeignet sind. Es gibt eine Reihe von kostenlosen Online-Diensten und sogar ein Kommandozeilen-Tool für Linux, mit dem Sie IP-Adressen nachschlagen und Informationen darüber erhalten können, wo diese Adresse zugewiesen ist. Dies kann sehr nützlich sein, wenn Sie eine verdächtige E-Mail oder seltsame Kommentare in einem Blog untersuchen. Es ist auch nützlich, wenn Sie Dienste verwenden, die Ihre IP-Adresse wie ein VPN maskieren, um sicherzustellen, dass sie wie angekündigt funktionieren.
Um eine IP-Adresse von der Linux-Befehlszeile aus zu suchen, müssen Sie das Tool "geoiplookup" installieren. Für Ubuntu und Raspbian verwenden:
sudo apt-get Installieren Sie GeoIP-bin
Um nach einer IP-Adresse zu suchen, geben Sie Folgendes ein:
geoiplookup 8.8.4.4
Ersetzen Sie 8.8.4.4 durch die Adresse, die Sie nachschlagen möchten. In diesem Beispiel wird die Adresse 8.8.4.4 (die einer der DNS-Server von Google ist) korrekt als Adresse aus den USA gemeldet.
Die mit Ihrer Linux-Distribution gelieferte Datenbank ist wahrscheinlich veraltet; Mit dem Flag -v
können Sie prüfen, wann es erstellt wurde:
geoiplookup -v 8.8.4.4
In diesem Fall sehen wir, dass die Datenbank im August 2013 erstellt wurde.
Die Geolocation-Datenbank wird von MaxMind bereitgestellt und das Unternehmen aktualisiert seine Datenbanken jeden Monat. Sie können die Datenbank aktualisieren, indem Sie die neuesten Dateien direkt von MaxMind.com herunterladen.
wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gz gunzip GeoIP.dat.gz sudo cp GeoIP.dat / usr / share / GeoIP /
Sie können die Datenbank jetzt erneut nach ihrem Erstellungsdatum durchsuchen:
geoiplookup -v 8.8.4.4
Das Tool meldet jetzt, dass die Datenbank im April 2014 erstellt wurde.
MaxMind bietet auch eine City-Datenbank, die in vielen Fällen eine höhere Genauigkeit bietet. Verwenden Sie zum Installieren die folgenden Befehle, um die Datenbank herunterzuladen und in das GeoIP-Verzeichnis zu kopieren:
wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz gunzip GeoLiteCity.dat.gz sudo cp GeoLiteCity.dat / usr / share / GeoIP /
Um die Stadtinformationen zu erhalten, müssen Sie dem Tool " geoiplookup
" mitteilen, die geoiplookup
zu verwenden:
geoiplookup -f /usr/share/GeoIP/GeoLiteCity.dat 71.3.9.242
Diesmal sagt uns geoiplookup, dass die Adresse in Florida und genauer gesagt in Summerfield, Florida ist.
Onlineservice
Neben dem Geo-Lookup-Tool gibt es eine Reihe von Online-Diensten, die Geolocation-Informationen bereitstellen können. Wenn Sie beispielsweise geoiptool.com in Ihrem Webbrowser öffnen, werden auf der Website Informationen zu Ihrem aktuellen Standort angezeigt.
Eine andere Website freegeoip.net hat eine API, die für die Verwendung im Backend von Websites oder von Anwendungen aus konzipiert ist. Es kann jedoch auch über die Befehlszeile mit " curl
" verwendet werden. curl
Sie zunächst sicher, dass " curl
" installiert ist:
sudo apt-get installieren locken
Verwenden Sie Folgendes, um Geolocation-Informationen im XML-Format zu erhalten:
curl freegeoip.net/xml/72.4.9.242
Die XML-Ausgabe zeigt, dass die IP-Adresse 72.4.9.242 in Evansville, Indiana, verwendet wird. Sie können die gleichen Daten auch im CSV- oder JSON-Format erhalten, indem Sie den "xml" -Teil der URL in "csv" bzw. "json" ändern.
Das Geo-Lookup-Tool und die Online-Dienste können sehr nützlich sein. Wenn Sie Fragen zur Verwendung haben, fragen Sie bitte im Kommentarbereich.