Jak uzyskać geolokalizację adresu IP w terminalu?

21

Czy możliwe jest uzyskanie geolokalizacji adresu IP w terminalu?

Nie jestem pewien, co oznaczają liczby w adresie IP, ale musi być za tym pewna logika, więc wyszukiwanie nie może być takie trudne.

sanjihan
źródło
Chcesz geolokalizację IP? iplocation.net
Finduilas
Może z macappstore.org/geoip
Finduilas
1
Lub przeczytaj ten artykuł: hints.macworld.com/article.php?story=20100109053441706
Finduilas
1
Również w odniesieniu do twojego ostatniego twierdzenia nie ma wymuszonej korelacji między wartościami publicznego adresu IP i geografią. Firmy i organizacje wynajmują bloki własności intelektualnej; mogą z nimi zrobić, co chcą.
korty

Odpowiedzi:

26

Możesz to zrobić bez konieczności instalowania dodatkowych aplikacji lub oprogramowania. Wystarczy użyć polecenia curli bezpłatnej witryny geo ip http://freegeoip.app .

Wykonaj następujące polecenie w terminalu (używam adresu IP firmy Apple w tym przykładzie):

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

Otrzymasz swoje wyniki w formacie XML:

<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>

Możesz nawet wydać to samo polecenie, używając nazwy domeny zamiast adresu IP:

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

Inne formaty ...

freegeoip.app obsługuje również CSV, JSON i JSONP

CSV: 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}

Aby sprawdzić własny adres IP ...

Po prostu pomiń adres IP lub domenę:

curl https://freegeoip.app/xml/

Allan
źródło
7
UWAGA: powiązanie adresu IP z lokalizacją geograficzną nie jest nauką ścisłą. Chociaż większość adresów będzie niezawodna, istnieją miliony adresów, które po wyszukaniu zmienią się w ogólną lokalizację, na przykład w centrum miasta, a nawet na środek kraju. Istnieje ciekawy artykuł o tym, jak losowa farma w środkowej części Kansas była celem nadużyć i dochodzeń kryminalnych, ponieważ główna usługa geolokalizacyjna umieściła na swojej farmie flagę „ogólnej lokalizacji dla USA”. fusion.net/story/287592/internet-mapping-glitch-kansas-farm to link do artykułu.
Nzall
2
Ten punkt końcowy interfejsu API jest przestarzały i przestanie działać 1 lipca 2018 r. Więcej informacji można znaleźć na stronie: github.com/apilayer/freegeoip#readme </ DeprecationMessage >
0n1cOn3
wygląda na to, że nowa „freegeoip.app” działa zgodnie z oczekiwaniami. „freegeoip.net” został wycofany
dwightk