Как проверить местоположение сервера Linux

Иногда вам может понадобиться определить географическое местоположение удаленной Linux-системы, используя ее IP-адрес. В этой статье мы узнаем, как это сделать с помощью простых сценариев оболочки и API. Каждый сервер имеет IP-адрес, назначаемый непосредственно сетью, частью которой он является. Вы можете использовать два полезных API curlmyip.ru и ipapi.co, которые позволяют легко узнать город и страну удаленного Linux-сервера.

linux

Как проверить местоположение сервера Linux

Ниже описаны шаги для получения местоположения сервера Linux по IP-адресу.

1. Установите cURL и jq

Сначала нам нужно установить инструменты cURL и jq. cURL используется для загрузки информации о местоположении из API, а инструмент jq используется для преобразования данных JSON, полученных от этих API, в удобный для использования формат. Итак, откройте терминал и выполните следующие команды, в зависимости от вашей системы.

Ubuntu, Debian

CentOS, RHEL

Fedora 22+

openSUSE

2. Найдите IP-адрес сервера

Этот шаг необязателен. Если вы уже знаете IP-адрес вашего удаленного Linux-сервера, вы можете перейти к следующему шагу. В противном случае вам может понадобиться выполнить следующую команду из удаленного сервера (не клиента), чтобы найти публичный IP-адрес удаленного сервера.

В качестве альтернативы, вы можете ввести в Google 'what is my IP' с удаленного сервера (не клиента). С какой бы системы вы ни запускали эти команды, они покажут вам IP-адрес этой системы.

3. Получение данных о местоположении IP-адреса

Получив публичный IP-адрес удаленного сервера, вы можете использовать curl для выполнения запроса к API ipvigilante, чтобы получить информацию о местоположении IP-адреса. Замените <ваш ip-адрес> на публичный IP-адрес вашего удаленного сервера.

Вот пример вывода в формате JSON.

пример вывода в формате JSON.

4. Автоматизация проверки геолокации

Мы создадим shell-скрипт для автоматического получения публичного IP удаленного сервера и проверки его местоположения. Создайте новый файл с помощью текстового редактора.

Добавьте в него следующую строку.

Сохраните и закройте файл. В приведенном выше коде мы используем команду curl для выполнения запроса к ipvigilante.com. Вместо того чтобы предоставлять IP-адрес удаленного сервера, мы используем другой запрос curl к ipinfo.io, чтобы получить IP-адрес удаленного сервера. Мы передаем JSON-вывод первой команды curl в утилиту jq и получаем широту, долготу, имя_города, имя_страны.

Вы можете запустить сценарий оболочки с удаленного сервера с помощью следующей команды.

./get-geo.sh

Если вы хотите получить другую информацию от ipvigilante, вы можете изменить переменные, используемые в команде jq.

Заключение

В этой статье мы узнали, как найти местоположение сервера Linux. Это очень полезно в случае, если вам нужно найти географическое местоположение удаленного Linux-сервера. Если вы знаете публичный IP-адрес удаленного сервера, вы можете легко отправить запрос на ipapi.co и получить необходимые данные.

Понравилась статья? Поделиться с друзьями:
Добавить комментарий