Вземете географското местоположение на IP адреса от терминала

за получаване на географското местоположение на IP от терминала

В следващата статия ще разгледаме как можем вземете географското местоположение на нашия публичен IP адрес. Ще можем да направим това чрез отворени API и прост bash скрипт, всички от терминала на Ubuntu. Днес всички устройства, свързани към интернет, имат IP, който е техният идентификатор за света. Този адрес ще използваме за получаване на вашето местоположение.

Когато сърфираме в интернет, всеки сървър има публичен IP адрес, това се присвоява директно на сървъра или чрез рутер, който изпраща мрежов трафик към този сървър. IP адресите осигуряват лесен начин за проследяване на географското местоположение на сървъра в света. Това може да се постигне чрез използване на два API, предоставени от ipinfo.io e ipvigilante.com с които ще можем да получим държавата на сървъра, името на града и неговите географски координати.

вземете вашия публичен или частен IP адрес
Свързана статия:
Вземете вашия публичен или частен IP адрес в Gnu / Linux

В следващите редове ще видим как Вземи географско местоположение на ИП от терминала, който ни помага с curl и jq. Основната цел и употреба за къдрица е да автоматизирате прехвърляне на файлове или неконтролирани последователности от операции, докато jq е функционален език на много високо ниво с поддръжка за проследяване и управление на потоци от данни JSON.

Географско местоположение на IP от терминала

Инсталирайте Curl и jq

За да получим географското местоположение на IP адреса, ще трябва инсталирайте curl и jq инструмент за команден ред за обработка на JSON данните, получени от API за геолокация. За да инсталирате и двете, в терминал (Ctrl + Alt + T) ще трябва да напишете командата:

инсталирайте curl и jq

sudo apt install curl jq

Получете публичния IP адрес на сървъра

Преди да получите местоположението, трябва знаем публичния IP адрес на сървъра, към който се свързваме. За целта ще използваме следната команда cURL, с която ще отправим заявка до ipinfo.io от терминала (Ctrl + Alt + T), както е показано по-долу:

публичен ip, получен с curl и ipinfo.io

curl https://ipinfo.io/ip

Получете данните за географското местоположение на IP на вашата система благодарение на API

След изпълнението на предишната команда ще получим публичния IP адрес. След като го имаме, ще можем направете заявка до ipvigilante.com за получаване на данни за геолокация. За това ще използваме следната команда в терминала (Ctrl + Alt + T). Важно е да замените публичния IP с този, получен с предишната команда.

географско местоположение на IP, получена с ipvigilante

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

Автоматизирайте API извикването с помощта на Bash Script

За да автоматизираме процеса на комуникация с API, ще отидем създайте скрипт във файл, наречен ipgeolocator.sh (името не е задължително). За създаването му ще можем да използваме всеки редактор за командния ред, с който всеки се чувства най-удобно.

vim ipgeolocalizador.sh

Когато редакторът се отвори, вътре просто трябва поставете реда показано по-долу:

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

Веднъж поставен, всичко, което трябва да направите, е да запишете файла и да излезете от редактора. След това ще е необходимо направете скрипта изпълним. Ще направим това, като напишем в същия терминал:

chmod +x ipgeolocalizador.sh

На този етап можем стартирайте скрипта, както следва, за да получите географското местоположение на IP обществен:

географско местоположение на IP с bash

./ipgeolocalizador.sh

Горният скрипт показва името на града и държавата заедно с приблизителните координати на географска ширина и дължина. Истината е, че Не знам допустимата грешка, която може да има.

Ако не искате да запишете горната дълга команда във файл, можете също да изпълните същата команда директно в терминала (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'

В тази кратка статия видяхме как вземете геолокация на IP от Ubuntu с помощта на терминални и curl и jq команди. Можете да получите повече информация за jq или за къдрица в съответните им статии в Уикипедия.


Оставете вашия коментар

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани с *

*

*

  1. Отговорен за данните: Мигел Анхел Гатон
  2. Предназначение на данните: Контрол на СПАМ, управление на коментари.
  3. Легитимация: Вашето съгласие
  4. Съобщаване на данните: Данните няма да бъдат съобщени на трети страни, освен по законово задължение.
  5. Съхранение на данни: База данни, хоствана от Occentus Networks (ЕС)
  6. Права: По всяко време можете да ограничите, възстановите и изтриете информацията си.