Få den geografiske placering af IP-adressen fra terminalen

om at få den geografiske placering af en IP fra terminalen

I den næste artikel skal vi se på, hvordan vi kan få den geografiske placering af vores offentlige IP-adresse. Vi vil være i stand til at gøre dette gennem åbne API'er og et simpelt bash-script, alt fra Ubuntu-terminalen. I dag har alle enheder, der er forbundet til internettet, en IP, som har været deres identifikator for verden. Denne adresse er den adresse, vi vil bruge til at få din placering.

Når vi surfer på Internettet, hver server har en offentlig IP-adresse, dette tildeles direkte til serveren eller via en router, der sender netværkstrafik til den server. IP-adresser giver en nem måde at spore serverens geografiske placering i verden på. Dette kan opnås ved at bruge to API'er leveret af ipinfo.io e ipvigilante.com hvormed vi kan få serverens land, navnet på byen og dens geografiske koordinater.

få din offentlige eller private IP-adresse
relateret artikel:
Få din offentlige eller private IP-adresse i Gnu / Linux

I de følgende linjer vil vi se hvordan Hent geografisk placering af en IP fra terminalen hjælper os med krølle og jq. Hovedformålet og brugen af cURL er at automatisere filoverførsler eller ikke-overvågede operationer, mens jq er et funktionelt sprog på meget højt niveau med understøttelse af backtracking og styring af JSON-datastrømme.

Geografisk placering af en IP fra terminalen

Installer Curl og jq

For at få den geografiske placering af IP-adressen bliver vi nødt til at installer krølle og jq kommandolinjeværktøj til at behandle JSON-data opnået fra geolocation-API'erne. For at installere begge dele skal du i en terminal (Ctrl + Alt + T) skrive kommandoen:

installer krølle og jq

sudo apt install curl jq

Få den offentlige IP-adresse på serveren

Før du får placeringen, skal du kender den offentlige IP-adresse på den server, som vi opretter forbindelse til. Til dette bruger vi følgende cURL-kommando, som vi vil anmode om ipinfo.io fra terminal (Ctrl + Alt + T) som vist nedenfor:

offentlig ip opnået med curl og ipinfo.io

curl https://ipinfo.io/ip

Få data om den geografiske placering af IP'et på dit system takket være API'en

Efter at have udført den forrige kommando, får vi den offentlige IP-adresse. Når vi har det, vil vi være i stand til det fremsætte en anmodning til ipvigilante.com for at få data om geolokalisering. Til dette bruger vi følgende kommando i terminalen (Ctrl + Alt + T). Det er vigtigt at erstatte den offentlige IP med den, der er opnået med den forrige kommando.

geografisk placering af en IP opnået med ipvigilante

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

Automatiser API-opkaldet ved hjælp af Bash Script

For at automatisere kommunikationsprocessen med den API, vi skal Opret et script inde i en fil, der hedder ipgeolocator.sh (navnet er valgfrit). Til oprettelsen vil vi være i stand til at bruge en hvilken som helst editor til kommandolinjen, som hver enkelt føler sig mest komfortabel med.

vim ipgeolocalizador.sh

Når redaktøren åbner, skal du bare inde indsæt linjen vist nedenfor:

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

Når du er indsat, er alt hvad du skal gøre, at gemme filen og afslutte editoren. Efter dette vil det være nødvendigt gør scriptet eksekverbart. Vi skal gøre dette ved at skrive i den samme terminal:

chmod +x ipgeolocalizador.sh

På dette tidspunkt kan vi kør scriptet som følger for at få IP'ens geografiske placering offentlig:

geografisk placering af en IP med bash

./ipgeolocalizador.sh

Ovenstående script viser by- og landsnavnet sammen med omtrentlige bredde- og længdegradskoordinater. Sandheden er, at Jeg kender ikke den fejlmargin, den kan have.

Hvis du ikke vil gemme ovenstående lange kommando i en fil, du kan også køre den samme kommando direkte i terminalen (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'

I denne korte artikel har vi set hvordan få geolocation af en IP fra Ubuntu ved hjælp af terminal- og curl- og jq-kommandoer. Du kan få mere information om jq eller omkring cURL i deres tilsvarende Wikipedia-artikler.


Efterlad din kommentar

Din e-mailadresse vil ikke blive offentliggjort. Obligatoriske felter er markeret med *

*

*

  1. Ansvarlig for dataene: Miguel Ángel Gatón
  2. Formålet med dataene: Control SPAM, management af kommentarer.
  3. Legitimering: Dit samtykke
  4. Kommunikation af dataene: Dataene vil ikke blive kommunikeret til tredjemand, undtagen ved juridisk forpligtelse.
  5. Datalagring: Database hostet af Occentus Networks (EU)
  6. Rettigheder: Du kan til enhver tid begrænse, gendanne og slette dine oplysninger.