![Microsoft a lansat un alt patch de marți cu unele remedieri](/f/cfadc57f0321fc05df0e0368b0a1300d.jpg?width=100&height=100)
În acest articol, vă vom arăta cum să găsiți locația geografică a adresei IP a unui sistem Linux la distanță folosind open API-uri și un simplu script bash din linia de comandă.
Pe internet, fiecare server are o adresă IP orientată către public, care este atribuită direct serverului sau printr-un router care trimite trafic de rețea către acel server.
Adresele IP oferă o modalitate ușoară de a urmări locația serverului în lume utilizând două API-uri utile furnizate de ipinfo.io și ipvigilante.com pentru a obține oraș, stat, și țară conectat cu un server.
Pentru a obține locația geografică a adresei IP a serverului, trebuie să instalăm descărcați linia de comandă curl și jq instrument de linie de comandă pentru a procesa datele JSON din API-urile de geolocalizare.
$ sudo apt install curl jq # Ubuntu / Debian. $ sudo yum instala curl jq # CentOS / RHEL. $ sudo dnf install curl jq #Fedora 22+ $ sudo zypper install curl jq #openSUSE.
Pentru a obține adresa IP publică a serverului, foloseste urmatoarele comanda curl pentru a face o cerere API către ipinfo.io în terminalul dvs. așa cum se arată.
$ curl https://ipinfo.io/ip.
Odată ce ați obținut adresa IP publică a serverului, acum puteți face o solicitare către ipvigilante.comAPI-ul pentru a prelua datele de geolocalizare folosind următoarea comandă. Asigurați-vă că înlocuiți cu IP-ul public al serverului.
$ curl https://ipvigilante.com/
Acestea sunt datele pe care le obținem din comanda de mai sus.
Acum, pentru a automatiza procesul API, vom crea un script numit getipgeoloc.sh
(îl puteți numi orice doriți) folosind oricare dintre dvs. editori de linie de comandă favorite.
$ vim getipgeoloc.sh.
Apoi copiați și lipiți următoarea comandă lungă în ea.
bucla -s https://ipvigilante.com/$(curl -s https://ipinfo.io/ip) | jq '.data.latitude, .data.longitude, .data.city_name, .data.country_name'
Salvați fișierul și faceți scriptul executabil cu următoarea comandă.
$ chmod + x getipgeoloc.sh.
În cele din urmă, rulați scriptul pentru a obține locația geografică IP Linux așa cum se arată în următoarea captură de ecran.
$ ./getipgeoloc.sh.
Scriptul de mai sus arată oraș și țară nume împreună cu aproximativul latitudine și longitudine coordonate.
Alternativ, puteți rula comanda de mai sus fără a o salva într-un script așa cum se arată.
$ curl -s https://ipvigilante.com/$(curl -s https://ipinfo.io/ip) | jq '.data.latitude, .data.longitude, .data.city_name, .data.country_name'
Ați putea dori, de asemenea, să citiți următoarele articole conexe:
Atât deocamdată! În acest scurt articol, am arătat cum să obțineți locația dvs. geografică IP Linux de la terminal folosind răsuci și jq comenzi. Împărtășiți-vă părerile cu noi sau puneți întrebări prin intermediul formularului de feedback de mai jos.