Поиск географического местоположения сервера Ubuntu в командной строке

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

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

Для того чтобы получить географическое местоположение вашего сервера, вам понадобится загрузчик Curl и инструмент командной строки JQ. Эти инструменты позволят вам получить и обработать необходимые данные из геолокационных API из Интернета. Пожалуйста, выполните следующие шаги, чтобы установить эти инструменты и затем получить необходимую информацию о местоположении, используя публичный IP вашей машины.

Шаг 1: Установите пакеты Curl и jq

Curl и jq легко доступны в официальном репозитории Ubuntu и могут быть установлены из командной строки с помощью команды apt-get.

Откройте приложение Terminal либо через системный Поиск приложений, либо через сочетание клавиш Ctrl+Alt+T.

Следующим шагом будет обновление индекса репозитория вашей системы с помощью следующей команды:

sudo apt-get update

Это поможет вам установить последнюю доступную версию программного обеспечения из Интернета.

Обратите внимание, что только авторизованный пользователь может добавлять, удалять и настраивать программное обеспечение на Ubuntu.

Теперь вы готовы к установке необходимых инструментов; вы можете сделать это, выполнив следующую команду от имени sudo:

sudo apt-get install curl jq

Система может запросить у вас пароль для sudo, а также предложить вам опцию Y/n для продолжения установки. Введите Y и нажмите Enter; программное обеспечение будет установлено на вашу систему. Однако процесс может занять некоторое время в зависимости от скорости вашего Интернета.

Шаг 2: Найдите публичный IP-адрес машины/сервера Ubuntu

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

Используйте следующую команду curl, чтобы получить ваш публичный IP:

либо

Получить информацию об IP

Вывод, размытый здесь из-за соображений конфиденциальности, - это публичный IP, по которому ваш сервер распознается в мире Интернета.

Шаг 3: Получение геолокации на основе публичного IP

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

  • Континент
  • Страна
  • Штат/провинция
  • Город
  • широта и долгота

Получение информации об IP-адресе в формате json

Полученная информация довольно подробна и хорошо служит цели.

Использование сценария Bash для вывода геопозиции

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

Откройте новый файл скрипта в одном из ваших любимых текстовых редакторов. Мы будем использовать редактор nano, чтобы открыть пустой файл скрипта с именем geo_location.sh

В этот пустой файл добавьте следующий скрипт.

Вместо того чтобы вводить весь сценарий в свой файл bash, вы можете скопировать его отсюда и вставить в Терминал с помощью сочетания клавиш Ctrl+Shift+V или с помощью опции Paste из меню правой кнопки мыши.

Теперь выйдите из файла через сочетание клавиш Ctrl+X и сохраните файл на запрос "Сохранить измененный буфер?", набрав Y и нажав Enter.

Для того чтобы сделать этот файл исполняемым скриптом, выполните следующую команду в Терминале:

Наконец, запустите этот скрипт следующим образом:

Получение GEO местоположения сервера Ubuntu

Вы можете видеть, как этот сценарий аккуратно выводит в терминал широту, долготу, город и название страны вашего сервера.

Если вам нужно получить геолокацию вашего сервера только один раз, вам не нужно создавать bash-скрипт. В противном случае скрипт будет автоматизировать весь процесс каждый раз, когда вам нужно будет проверить графическое местоположение вашей машины Ubuntu на основе ее публичного IP.

Avatar for Gnostis
Gnostis
Ubuntu
Добавить комментарий