Kako pronaći geografski položaj Linux poslužitelja u terminalu


U ovom ćemo vam članku pokazati kako pronaći geografsku lokaciju IP adrese udaljenog Linux sustava pomoću otvorenih API-ja i jednostavne bash skripte iz naredbenog retka.

Na Internetu svaki poslužitelj ima IP adresu okrenutu prema javnosti koja se dodjeljuje izravno poslužitelju ili putem usmjerivača koji tom mrežnom prometu šalje mrežni promet.

IP adrese pružaju jednostavan način za praćenje lokacije poslužitelja u svijetu pomoću dva korisna API-ja koja pružaju ipinfo.io i ipvigilante.com za povezivanje grada, države i države s poslužiteljem.

Instalirajte Curl i jq

Da bismo dobili geografsku lokaciju IP adrese poslužitelja, moramo instalirati curl alat za preuzimanje naredbenog retka i jq alat naredbenog retka za obradu JSON podataka iz API-ja za geolokaciju.

$ 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

Pronađite javnu IP adresu poslužitelja

Da biste dobili naredbu curl za izradu API zahtjeva za ipinfo.io u vašem terminalu, kao što je prikazano.

$ curl https://ipinfo.io/ip

Dohvatite podatke o IP lokaciji iz API-ja

Nakon što dobijete javnu IP adresu poslužitelja, sada možete uputiti zahtjev API-ju ipvigilante.com za dohvaćanje podataka o geolokaciji pomoću sljedeće naredbe. Obavezno zamijenite javnom IP adresom poslužitelja.

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

Ovo su podaci koje dobivamo iz gornje naredbe.

Automatizirajte API poziv pomoću Bash skripte

Sada ćemo automatizirati API postupak, stvorit ćemo skriptu nazvanu getipgeoloc.sh (možete joj dati ime kako god želite) koristeći bilo koji od vaših omiljenih uređivača naredbenog retka.

$ vim getipgeoloc.sh

Zatim kopirajte i zalijepite u nju sljedeću dugu naredbu.

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

Spremite datoteku i učinite skriptu izvršnom pomoću sljedeće naredbe.

$ chmod +x getipgeoloc.sh

Na kraju, pokrenite skriptu da biste dobili svoje Linux IP zemljopisno mjesto kao što je prikazano na sljedećem snimku zaslona.

$ ./getipgeoloc.sh

Gornja skripta prikazuje ime grada i države zajedno s približnim koordinatama geografske širine i dužine.

Alternativno, gornju naredbu možete pokrenuti i bez spremanja u skriptu kao što je prikazano.

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

Možda biste željeli pročitati i sljedeće srodne članke:

  1. 4 načina za pronalaženje javne IP adrese poslužitelja u Linux terminalu
  2. Saznajte sve IP adrese adresa hostova povezanih na mrežu u Linuxu
  3. Pronađite top 10 IP adresa koje pristupaju vašem web poslužitelju Apache

To je za sada to! U ovom kratkom članku pokazali smo kako iz terminala dobiti geografski položaj vašeg IP-a Linux pomoću naredbi curl i jq. Podijelite svoje misli s nama ili postavite bilo kakva pitanja putem obrasca za povratne informacije u nastavku.