Отримайте географічне розташування IP-адреси з терміналу

про отримання географічного розташування ІР від терміналу

У наступній статті ми збираємось поглянути на те, як ми можемо отримати географічне розташування нашої публічної IP-адреси. Ми зможемо зробити це за допомогою відкритих API та простого скрипта bash, все з терміналу Ubuntu. Сьогодні всі пристрої, підключені до Інтернету, мають IP-адресу, яка стала їхнім ідентифікатором у всьому світі. Ця адреса буде використана для отримання вашого місцезнаходження.

Коли ми переглядаємо Інтернет, кожен сервер має загальнодоступну IP-адресу, це призначається безпосередньо серверу або через маршрутизатор, який передає мережевий трафік на цей сервер. IP-адреси забезпечують простий спосіб відстеження географічного розташування сервера у світі. Цього можна досягти, використовуючи два API, надані ipinfo.io e ipvigilante.com за допомогою якого ми зможемо отримати країну сервера, назву міста та його географічні координати.

отримати свою державну або приватну IP-адресу
Пов'язана стаття:
Отримайте свою публічну або приватну IP-адресу в Gnu / Linux

У наступних рядках ми побачимо, як отримати географічне розташування ІВ з терміналу, допомагаючи нам з curl та jq. Основне призначення та використання для cURL полягає в автоматизації передачі файлів або неконтрольованих послідовностей операцій, поки jq це функціональна мова дуже високого рівня з підтримкою зворотного відстеження та управління потоками даних JSON.

Географічне розташування ІР від терміналу

Встановіть 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

Отримайте дані географічного розташування ІР вашої системи завдяки API

Після виконання попередньої команди ми отримаємо загальнодоступну IP-адресу. Як тільки це буде у нас, ми зможемо зробити запит на ipvigilante.com для отримання даних про геолокацію. Для цього ми використаємо таку команду в терміналі (Ctrl + Alt + T). Важливо замінити загальнодоступний 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

На даний момент ми можемо запустіть сценарій наступним чином, щоб отримати географічне розташування ІР громадськості:

географічне розташування ІВ з 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 або приблизно cURL у відповідних статтях Вікіпедії.


Залиште свій коментар

Ваша електронна адреса не буде опублікований. Обов'язкові для заповнення поля позначені *

*

*

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