Dohvatite geografski položaj IP adrese s terminala

o dobivanju geografskog položaja IP-a s terminala

U sljedećem ćemo članku pogledati kako možemo dobiti geografski položaj naše javne IP adrese. To ćemo moći učiniti putem otvorenih API-ja i jednostavne bash skripte, sve s Ubuntu terminala. Danas svi uređaji povezani na Internet imaju IP adresu, koja je njihov identifikator u svijetu. Ova adresa ćemo koristiti za dobivanje vaše lokacije.

Kada surfamo Internetom, svaki poslužitelj ima javnu IP adresu, ovo se dodjeljuje izravno serveru ili putem usmjerivača koji šalje mrežni promet na taj server. IP adrese pružaju jednostavan način za praćenje geografskog položaja servera u svijetu. To se može postići korištenjem dva API-ja koja pruža ipinfo.io e ipvigilante.com pomoću koje ćemo moći dobiti zemlju servera, ime grada i njegove geografske koordinate.

dobiti svoju javnu ili privatnu IP adresu
Vezani članak:
Nabavite svoju javnu ili privatnu IP adresu u Gnu / Linuxu

U narednim redovima vidjet ćemo kako dobiti geografski položaj IP-a s terminala koji nam pomaže kod curl-a i jq-a. Glavna svrha i upotreba za cURL je automatizirati prijenos datoteka ili nenadgledane sekvence operacija, dok jq je vrlo funkcionalan jezik na visokoj razini s podrškom za povratno praćenje i upravljanje JSON tokovima podataka.

Geografski položaj IP-a s terminala

Instalirajte Curl i jq

Da bismo dobili geografski položaj IP adrese, morat ćemo instalirati curl I to jq alat naredbenog retka za obradu JSON podataka dobijenih iz API-ja za geolokaciju. Da biste instalirali oba, u terminal (Ctrl + Alt + T) morat ćete napisati naredbu:

instalirajte curl i jq

sudo apt install curl jq

Nabavite javnu IP adresu servera

Prije nego što dobijete lokaciju, morate znati javnu IP adresu servera na koji se povezujemo. Za to ćemo upotrijebiti sljedeću naredbu cURL s kojom ćemo uputiti zahtjev ipinfo.io sa terminala (Ctrl + Alt + T) kao što je prikazano dole:

javni ip dobiven sa curl i ipinfo.io

curl https://ipinfo.io/ip

Pribavite podatke o geografskom položaju IP vašeg sistema zahvaljujući API-ju

Nakon izvršavanja prethodne naredbe dobit ćemo javnu IP adresu. Jednom kad ga dobijemo, moći ćemo podnesite zahtjev ipvigilante.com za dobivanje podataka o geolokaciji. Za to ćemo upotrijebiti sljedeću naredbu u terminalu (Ctrl + Alt + T). Važno je zamijeniti javni IP onim dobivenim prethodnom naredbom.

geografski položaj IP-a dobijenog pomoću ipvigilante-a

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

Automatizirajte API poziv koristeći Bash Script

Da bismo automatizirali proces komunikacije s API-jem, idemo stvoriti skriptu unutar datoteke koja se zove ipgeolocator.sh (ime nije obavezno). Za njegovo stvaranje moći ćemo koristiti bilo koji editor za naredbenu liniju s kojim se svaki osjeća najudobnije.

vim ipgeolocalizador.sh

Kad se urednik otvori, iznutra to jednostavno morate zalijepite liniju prikazano dole:

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

Jednom zalijepljeno, ostaje samo spremiti datoteku i izaći iz uređivača. Nakon ovoga će biti potrebno učiniti skriptu izvršnom. To ćemo učiniti pisanjem u isti terminal:

chmod +x ipgeolocalizador.sh

U ovom trenutku možemo pokrenite skriptu kako slijedi da biste dobili geolokaciju IP-a public:

geografski položaj IP-a sa bash

./ipgeolocalizador.sh

Gornja skripta prikazuje ime grada i države zajedno s približnim koordinatama geografske širine i dužine. Istina je takva Ne znam granicu greške koju može imati.

Ako gornju dugu naredbu ne želite spremiti u datoteku, također možete pokrenuti istu tu naredbu izravno u 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'

U ovom kratkom članku vidjeli smo kako dobiti geolokaciju IP-a iz Ubuntu-a pomoću terminala i curl i jq naredbi. Možete dobiti više informacija o jq ili otprilike cURL u odgovarajućim člancima na Wikipediji.


Ostavite komentar

Vaša e-mail adresa neće biti objavljena. Obavezna polja su označena sa *

*

*

  1. Za podatke odgovoran: Miguel Ángel Gatón
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obavezi.
  5. Pohrana podataka: Baza podataka koju hostuje Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.