Wie erhalte ich die Geolokalisierung einer IP-Adresse im Terminal?

Ist es möglich, die Geolokalisierung einer IP-Adresse in Terminal zu erhalten?

Ich bin mir nicht sicher, was die Zahlen in einer IP-Adresse bedeuten, aber es muss eine Logik dahinter stecken, also kann die Suche nicht so schwer sein.

Sie möchten eine Geolokalisierung einer IP? iplocation.net
Vielleicht mit macappstore.org/geoip
Auch in Bezug auf Ihre letztere Behauptung, nein, es gibt keine erzwungene Korrelation zwischen den Werten öffentlicher IP-Adressen und der Geografie. Unternehmen und Organisationen leasen IP-Blöcke; sie können damit machen, was sie wollen.

Antworten (3)

Sie können dies tun, ohne zusätzliche Apps oder Software installieren zu müssen. Verwenden Sie einfach den Befehl curlund die kostenlose Geo-IP-Website http://freegeoip.app .

Führen Sie den folgenden Befehl im Terminal aus (ich verwende für dieses Beispiel die IP von Apple):

curl https://freegeoip.app/xml/17.178.96.59

Sie erhalten Ihre Ergebnisse im XML-Format:

<Response>
    <IP>17.178.96.59</IP>
    <CountryCode>US</CountryCode>
    <CountryName>United States</CountryName>
    <RegionCode>CA</RegionCode>
    <RegionName>California</RegionName>
    <City>Cupertino</City>
    <ZipCode>95014</ZipCode>
    <TimeZone>America/Los_Angeles</TimeZone>
    <Latitude>37.3042</Latitude>
    <Longitude>-122.0946</Longitude>
    <MetroCode>807</MetroCode>
</Response>

Sie können den gleichen Befehl sogar mit dem Domainnamen anstelle der IP ausführen:

curl https://freegeoip.app/xml/apple.com

Andere Formate...

freegeoip.app unterstützt auch CSV, JSON und JSONP

CSV-Datei:curl https://freegeoip.app/csv/apple.com

17.178.96.59,US,United States,CA,California,Cupertino,95014,America/Los_Angeles,37.30,-122.09,807

JSON:curl https://freegeoip.app/json/apple.com

{"ip":"17.178.96.59","country_code":"US","country_name":"United States","region_code":"CA","region_name":"California","city":"Cupertino","zip_code":"95014","time_zone":"America/Los_Angeles","latitude":37.3042,"longitude":-122.0946,"metro_code":807}

Um die eigene IP zu überprüfen...

Lassen Sie einfach die IP oder Domain weg:

curl https://freegeoip.app/xml/

HINWEIS: Das Verknüpfen einer IP-Adresse mit einem geografischen Standort ist keine harte Wissenschaft. Während die meisten Adressen zuverlässig sind, gibt es Millionen von Adressen, die bei der Suche zu einem allgemeinen Ort aufgelöst werden, wie dem Zentrum einer Stadt oder sogar der Mitte des Landes. Es gibt einen interessanten Artikel darüber, wie eine zufällige Farm mitten in Kansas zum Ziel von Missbrauch und kriminellen Ermittlungen wurde, weil ein großer Geolokalisierungsdienst ihre Flagge "allgemeiner Standort für die USA" auf ihrer Farm angebracht hat. fusion.net/story/287592/internet-mapping-glitch-kansas-farm ist ein Link zum Artikel.
Dieser API-Endpunkt ist veraltet und funktioniert am 1. Juli 2018 nicht mehr. Weitere Informationen finden Sie unter: github.com/apilayer/freegeoip#readme</DeprecationMessage >
sieht so aus, als ob die neue "freegeoip.app" wie erwartet funktioniert. "freegeoip.net" war veraltet
@Allan curl https://freegeoip.app/xml/zeigt IPv4 nicht an
@SebMa - Gerade getestet. Funktioniert wie beschrieben.
@Allan Beziehen Sie Ihre öffentliche IPv4 oder IPv6?
@SebMa IPv4 - Es wird zurückgemeldet, was Ihr ISP Ihnen gibt, aber es funktioniert - es meldet Ihre IP-Adresse .
@Allan Tatsächlich meldet freegeoip.app/xml meine IPv6, aber andererseits meldet ipinfo.io/json meine IPv4. Wie kommt es, dass das irgendetwas mit meinem ISP zu tun hat?

Es gibt ein kleines und kompaktes Befehlszeilentool namens gip, geschrieben in C++, verfügbar unter https://github.com/softhub-software-development/gip .

Beispiele:

# gip softhub.com
91.65.13.31 "Berlin, Berlin, Deutschland"

#gip 91.65.13.31
91.65.13.31 "Berlin, Berlin, Deutschland"

# gip -t google.com
91.65.13.254 "Berlin, Berlin, Deutschland"
145.254.3.66 "Eschborn, Hessen, Deutschland"
72.14.194.138 "Mountain View, Kalifornien, USA"

# gip -g softhub.com
52,5244 13,4105

Verwenden Sie https://github.com/maxmind/mmdbinspect mit Datenbanken von https://github.com/wp-statistics/GeoLite2-City :

mmdbinspect -db "$database_file" "$ip"

Mit können Sie jqdie Ausgabe weiterverarbeiten.