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

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

. Мы выполнили команды и процедуры, упомянутые в этой статье, для системы Ubuntu 18.04 LTS.

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

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

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

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

Откройте приложение терминала либо с помощью системного поиска приложений, либо с помощью сочетания клавиш 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-адреса:

$ curl https://ipinfo.io/ip

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

Шаг 3: Получить геолокацию на основе публичного IP-адреса

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

  • Continent
  • Страна
  • Штат / провинция
  • Город
  • Широта и долгота
$ curl https://ipvigilante.com/<public-IP>

Информация, которую вы получаете, довольно подробная и хорошо подходит для этой цели.

Используйте скрипт Bash для печати географического местоположения

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

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

$ nano geo_location.sh

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

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

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

Сейчас выйдите из файла с помощью сочетания клавиш Ctrl + X и сохраните файл в приглашении «Сохранить измененный буфер?», введя Y, а затем нажав клавишу ввода.

Чтобы сделать этот файл исполняемым сценарием, выполните следующую команду в Ваш терминал:

$ chmod +x geo_location.sh

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

$ ./geo_location.sh

Вы можете увидеть, как этот скрипт аккуратно печатает широту, долготу, город и страну вашего сервера в Terminal.

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

Комментарии