Получите географическое положение IP-адреса с терминала

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

В следующей статье мы рассмотрим, как мы можем получить географическое расположение нашего общедоступного IP-адреса. Мы сможем сделать это с помощью открытых API-интерфейсов и простого сценария bash, и все это из терминала Ubuntu. Сегодня все устройства, подключенные к Интернету, имеют IP-адрес, который является их мировым идентификатором. Этот адрес мы будем использовать для определения вашего местоположения.

Когда мы путешествуем по Интернету, у каждого сервера есть публичный IP-адрес, он назначается непосредственно серверу или через маршрутизатор, который отправляет сетевой трафик на этот сервер. IP-адреса предоставляют простой способ отслеживать географическое положение сервера в мире. Этого можно достичь, используя два API, предоставляемых ipinfo.io e ipvigilante.com с помощью которого мы сможем получить страну сервера, название города и его географические координаты.

получите свой публичный или частный IP-адрес
Теме статьи:
Получите свой публичный или частный IP-адрес в Gnu / Linux

В следующих строках мы увидим, как получить географическое положение IP с терминала, помогая нам с curl и jq. Основное назначение и использование для завить заключается в автоматизации передачи файлов или неконтролируемых последовательностей операций, в то время как jq - это функциональный язык очень высокого уровня с поддержкой обратного отслеживания и управления потоками данных JSON.

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

Установите Curl и jq

Чтобы узнать географическое положение IP-адреса, нам нужно будет установить завиток и инструмент командной строки 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-адрес, полученный с помощью предыдущей команды.

географическое положение 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. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.