Uzyskaj lokalizację geograficzną adresu IP z terminala

o uzyskaniu geograficznej lokalizacji adresu IP z terminala

W następnym artykule przyjrzymy się, jak to możliwe uzyskać lokalizację geograficzną naszego publicznego adresu IP. Będziemy mogli to zrobić za pomocą otwartych interfejsów API i prostego skryptu bash, wszystko z terminala Ubuntu. Obecnie wszystkie urządzenia podłączone do Internetu mają adres IP, który jest ich identyfikatorem na świecie. Ten adres jest tym, którego użyjemy do uzyskania Twojej lokalizacji.

Kiedy surfujemy po Internecie, każdy serwer ma publiczny adres IP, jest to przypisywane bezpośrednio do serwera lub przez router, który wysyła ruch sieciowy do tego serwera. Adresy IP zapewniają łatwy sposób śledzenia położenia geograficznego serwera na świecie. Można to osiągnąć, korzystając z dwóch interfejsów API udostępnianych przez ipinfo.io e ipvigilante.com z którym będziemy mogli uzyskać kraj serwera, nazwę miasta i jego współrzędne geograficzne.

uzyskaj swój publiczny lub prywatny adres IP
Podobne artykuł:
Uzyskaj swój publiczny lub prywatny adres IP w Gnu / Linux

W kolejnych wierszach zobaczymy, jak to zrobić uzyskać geograficzne położenie adresu IP z terminala pomagając nam w curl i jq. Główny cel i zastosowanie cURL to zautomatyzowanie przesyłania plików lub nienadzorowanych sekwencji operacji, podczas gdy jq jest językiem funkcjonalnym bardzo wysokiego poziomu z obsługą wycofywania i zarządzania strumieniami danych JSON.

Geograficzne położenie adresu IP z terminala

Zainstaluj Curl i jq

Aby uzyskać lokalizację geograficzną adresu IP, będziemy musieli zainstaluj curl i jq narzędzie wiersza poleceń przetwarzanie danych JSON uzyskanych z interfejsów API geolokalizacji. Aby zainstalować oba, w terminalu (Ctrl + Alt + T) będziesz musiał napisać polecenie:

zainstaluj curl i jq

sudo apt install curl jq

Uzyskaj publiczny adres IP serwera

Przed uzyskaniem lokalizacji musisz to zrobić znać publiczny adres IP serwera, z którym się łączymy. W tym celu użyjemy następującego polecenia cURL, za pomocą którego skierujemy żądanie ipinfo.io z terminala (Ctrl + Alt + T), jak pokazano poniżej:

publiczne IP uzyskane za pomocą curl i ipinfo.io

curl https://ipinfo.io/ip

Uzyskaj dane o położeniu geograficznym adresu IP swojego systemu dzięki API

Po wykonaniu poprzedniego polecenia uzyskamy publiczny adres IP. Gdy już to zdobędziemy, będziemy w stanie złożyć wniosek do ipvigilante.com w celu uzyskania danych geolokalizacyjnych. W tym celu użyjemy następującego polecenia w terminalu (Ctrl + Alt + T). Ważne jest, aby zastąpić publiczny adres IP tym uzyskanym przy użyciu poprzedniego polecenia.

położenie geograficzne adresu IP uzyskanego za pomocą ipvigilante

curl https://ipvigilante.com/la-dirección-IP

Zautomatyzuj wywołanie interfejsu API za pomocą skryptu Bash

Aby zautomatyzować proces komunikacji z API, zamierzamy utwórz skrypt w pliku o nazwie ipgeolocator.sh (nazwa jest opcjonalna). Do jego stworzenia będziemy mogli skorzystać z dowolnego edytora linii poleceń, z którym każdy będzie się czuł najbardziej komfortowo.

vim ipgeolocalizador.sh

Kiedy edytor się otworzy, w środku po prostu musisz wklej linię pokazane poniżej:

curl -s https://ipvigilante.com/$(curl -s https://ipinfo.io/ip) | jq '.data.latitude, .data.longitude, .data.city_name, .data.country_name'

Po wklejeniu wszystko, co musisz zrobić, to zapisać plik i wyjść z edytora. Po tym będzie to konieczne uczynić skrypt wykonywalnym. Zamierzamy to zrobić, pisząc w tym samym terminalu:

chmod +x ipgeolocalizador.sh

W tym momencie możemy uruchom skrypt w następujący sposób, aby uzyskać lokalizację geograficzną adresu IP notarialnego:

geograficzna lokalizacja adresu IP z bash

./ipgeolocalizador.sh

Powyższy skrypt wyświetla nazwę miasta i kraju wraz z przybliżonymi współrzędnymi szerokości i długości geograficznej. Prawda jest taka, że Nie znam marginesu błędu, jaki może mieć.

Jeśli nie chcesz zapisywać powyższego długiego polecenia do pliku, możesz również uruchomić to samo polecenie bezpośrednio w terminalu (Ctrl + Alt + T):

curl -s https://ipvigilante.com/$(curl -s https://ipinfo.io/ip) | jq '.data.latitude, .data.longitude, .data.city_name, .data.country_name'

W tym krótkim artykule widzieliśmy, jak to zrobić uzyskaj geolokalizację adresu IP z Ubuntu za pomocą terminala oraz poleceń curl i jq. Możesz uzyskać więcej informacji na temat jq lub o cURL w odpowiednich artykułach w Wikipedii.


Zostaw swój komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

*

*

  1. Odpowiedzialny za dane: Miguel Ángel Gatón
  2. Cel danych: kontrola spamu, zarządzanie komentarzami.
  3. Legitymacja: Twoja zgoda
  4. Przekazywanie danych: Dane nie będą przekazywane stronom trzecim, z wyjątkiem obowiązku prawnego.
  5. Przechowywanie danych: baza danych hostowana przez Occentus Networks (UE)
  6. Prawa: w dowolnym momencie możesz ograniczyć, odzyskać i usunąć swoje dane.