Come trovare la posizione geografica di Linux Server nel terminale


In questo articolo, ti mostreremo come trovare la posizione geografica dell'indirizzo IP di un sistema Linux remoto utilizzando le API aperte e un semplice script bash dalla riga di comando.

Su Internet, ogni server ha un indirizzo IP pubblico, che viene assegnato direttamente al server o tramite un router che invia traffico di rete a quel server.

Gli indirizzi IP forniscono un modo semplice per tracciare la posizione del server nel mondo utilizzando due API utili fornite da ipinfo.io e ipvigilante.com per ottenere città , stato e Paese connessi a un server.

Installa Curl e jq

Per ottenere la posizione geografica dell'indirizzo IP del server, è necessario installare il downloader della riga di comando di arriccia e lo strumento da riga di comando jq per elaborare i dati JSON dalle API di geolocalizzazione.

$ sudo apt install curl jq		#Ubuntu/Debian
$ sudo yum install curl jq		#CentOS/RHEL
$ sudo dnf install curl jq		#Fedora 22+
$ sudo zypper install curl jq		#openSUSE

Trova l'indirizzo IP pubblico del server

Per ottenere l'indirizzo IP pubblico del server, usa il seguente comando di arricciatura per fare una richiesta API a ipinfo.io nel tuo terminale come mostrato.

$ curl https://ipinfo.io/ip

Ottieni i dati di posizione IP dall'API

Una volta ottenuto l'indirizzo IP pubblico del server, ora puoi effettuare una richiesta all'API ipvigilante.com per recuperare i dati di geolocalizzazione utilizzando il seguente comando. Assicurati di sostituire & lt; il tuo indirizzo ip & gt; con l'IP pubblico del server.

$ curl https://ipvigilante.com/<your ip address>

Questo è il dato che otteniamo dal comando precedente.

Automatizza la chiamata API usando Bash Script

Ora per automatizzare il processo API, creeremo uno script chiamato getipgeoloc.sh (puoi nominarlo tutto ciò che vuoi) usando uno dei tuoi editor di riga di comando preferiti.

$ vim getipgeoloc.sh

Quindi copia e incolla il seguente comando lungo in esso.

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

Salvare il file e rendere eseguibile lo script con il seguente comando.

$ chmod +x getipgeoloc.sh

Infine, esegui lo script per ottenere la posizione geografica IP di Linux come mostrato nello screenshot seguente.

$ ./getipgeoloc.sh

Lo script sopra mostra il nome della città e il paese insieme alle coordinate approssimative latitudine e longitudine .

In alternativa, puoi anche eseguire il comando sopra senza salvarlo in uno script come mostrato.

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

Ti potrebbe interessare anche leggere questi articoli correlati:

  1. 4 Ways to Find Server Public IP Address in Linux Terminal
  2. Find Out All Live Hosts IP Addresses Connected on Network in Linux
  3. Find Top 10 IP Addresses Accessing Your Apache Web Server

Questo è tutto per ora! In questo breve articolo, abbiamo mostrato come ottenere la posizione geografica IP di Linux dal terminale usando i comandi curl e jq . Condividi i tuoi pensieri con noi o fai qualsiasi domanda tramite il modulo di feedback qui sotto.