Få den geografiske plasseringen av IP-adressen fra terminalen

om å få den geografiske plasseringen av en IP fra terminalen

I neste artikkel skal vi se på hvordan vi kan få den geografiske plasseringen av vår offentlige IP-adresse. Vi vil kunne gjøre dette gjennom åpne APIer og et enkelt bash-skript, alt fra Ubuntu-terminalen. I dag har alle enheter som er koblet til Internett en IP, som har vært deres identifikator for verden. Denne adressen er den vi vil bruke til å skaffe deg posisjon.

Når vi surfer på Internett, hver server har en offentlig IP-adresse, dette tildeles direkte til serveren eller via en ruter som sender nettverkstrafikk til den serveren. IP-adresser gir en enkel måte å spore den geografiske plasseringen til serveren i verden. Dette kan oppnås ved å bruke to API-er levert av ipinfo.io e ipvigilante.com som vi vil kunne få serverens land med, navnet på byen og dens geografiske koordinater.

få din offentlige eller private IP-adresse
Relatert artikkel:
Få din offentlige eller private IP-adresse i Gnu / Linux

I de følgende linjene vil vi se hvordan Hent geografisk plassering av en IP fra terminalen som hjelper oss med krøll og jq. Hovedformålet og bruken til cURL er å automatisere filoverføringer eller uten tilsyn operasjonssekvenser, mens jq er et veldig høyt nivå funksjonelt språk med støtte for backtracking og styring av JSON datastrømmer.

Geografisk plassering av en IP fra terminalen

Installer Curl og jq

For å få den geografiske plasseringen av IP-adressen, må vi installer krøll og jq kommandolinjeverktøy å behandle JSON-data hentet fra geolokaliserings-API-ene. For å installere begge deler, i en terminal (Ctrl + Alt + T), må du skrive kommandoen:

installer krøll og jq

sudo apt install curl jq

Få den offentlige IP-adressen til serveren

Før du får lokasjonen, må du kjenne den offentlige IP-adressen til serveren vi kobler til. For dette vil vi bruke følgende cURL-kommando som vi vil be om ipinfo.io fra terminal (Ctrl + Alt + T) som vist nedenfor:

offentlig ip oppnådd med curl og ipinfo.io

curl https://ipinfo.io/ip

Få data om den geografiske plasseringen til IP-en til systemet ditt takket være API

Etter å ha utført den forrige kommandoen vil vi få den offentlige IP-adressen. Når vi har det, vil vi kunne gjøre en forespørsel til ipvigilante.com om å få tak i geolokaliseringsdata. For dette vil vi bruke følgende kommando i terminalen (Ctrl + Alt + T). Det er viktig å erstatte den offentlige IP-adressen med den som ble oppnådd med den forrige kommandoen.

geografisk plassering av en IP oppnådd med ipvigilante

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

Automatiser API-samtalen ved hjelp av Bash Script

For å automatisere kommunikasjonsprosessen med API-en vi skal lage et skript i en fil som heter ipgeolocator.sh (navnet er valgfritt). For opprettelsen vil vi kunne bruke hvilken som helst redaktør for kommandolinjen som hver og en føler seg mest komfortabel med.

vim ipgeolocalizador.sh

Når redaktøren åpner, må du bare inne lim inn linjen Vist under:

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 limt inn, er alt du trenger å gjøre å lagre filen og avslutte redigeringsprogrammet. Etter dette vil det være nødvendig gjør skriptet kjørbart. Vi skal gjøre dette ved å skrive i samme terminal:

chmod +x ipgeolocalizador.sh

På dette punktet kan vi kjør skriptet som følger for å få geografisk plassering av IP-en offentlig:

geografisk plassering av en IP med bash

./ipgeolocalizador.sh

Ovenstående skript viser by- og landnavnet sammen med omtrentlige bredde- og lengdegradskoordinater. Sannheten er at Jeg vet ikke feilmarginen den kan ha.

Hvis du ikke vil lagre den ovennevnte lange kommandoen i en fil, du kan også kjøre den samme kommandoen 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 artikkelen har vi sett hvordan få geolokalisering av en IP fra Ubuntu ved hjelp av terminal- og curl- og jq-kommandoer. Du kan få mer informasjon om jq eller om cURL i deres tilsvarende Wikipedia-artikler.


Legg igjen kommentaren

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *

*

*

  1. Ansvarlig for dataene: Miguel Ángel Gatón
  2. Formålet med dataene: Kontroller SPAM, kommentaradministrasjon.
  3. Legitimering: Ditt samtykke
  4. Kommunikasjon av dataene: Dataene vil ikke bli kommunisert til tredjeparter bortsett fra ved juridisk forpliktelse.
  5. Datalagring: Database vert for Occentus Networks (EU)
  6. Rettigheter: Når som helst kan du begrense, gjenopprette og slette informasjonen din.