Поиск по сайту:

Найти геолокацию IP-адреса из командной строки

В этом кратком руководстве описывается, как установить и использовать утилиту geoiplookup для определения геолокации IP-адреса в Linux и Unix-подобных операционных системах.

Введение

Некоторое время назад мы написали статью, в которой описывалось, как узнать свое геолокацию из командной строки с помощью утилиты whereami. Сегодня мы увидим, как узнать геолокацию IP-адреса. Конечно, вы можете увидеть эту информацию из веб-браузера. Но гораздо проще найти его из командной строки.

geoiplookup — это утилита командной строки, которую можно использовать для определения страны происхождения IP-адреса или имени хоста. Он использует библиотеку и базу данных GeoIP для сбора сведений об IP-адресе.

Установите Geoiplookup в Linux

Geoiplookup доступен в репозиториях по умолчанию большинства операционных систем Linux.

Чтобы установить его в Arch Linux и его производных, запустите:

sudo pacman -S geoip

В Debian, Ubuntu, Linux Mint:

sudo apt-get install geoip-bin

В RHEL, CentOS, Fedora, Scientific Linux:

sudo yum install geoip

В SUSE/openSUSE:

sudo zypper install geoip

Найдите геолокацию IP-адреса с помощью Geoiplookup из командной строки

После установки вы можете узнать геолокацию любого IP-адреса, как показано ниже.

geoiplookup 80.60.233.195

Приведенная выше команда найдет и отобразит страну происхождения 80.60.233.195 в следующем формате:

GeoIP Country Edition: NL, Netherlands

Загрузите и обновите базы данных GeoIP

Обычно расположением баз данных GeoIP по умолчанию является /usr/share/GeoIP/. Базы данных могут быть немного устаревшими. Вы можете загрузить последние базы данных, содержащие обновленные данные о геолокации, с сайта Maxmind. Это веб-сайт, который предлагает геолокацию IP-адреса.

Перейдите в папку базы данных GeoIP по умолчанию:

cd /usr/share/GeoIP/

Загрузите последние базы данных:

wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gz
gunzip GeoIP.dat.gz

Теперь запустите команду geoiplookup, чтобы найти самые актуальные данные о геолокации IP-адреса.

geoiplookup 216.58.197.78

Пример вывода:

GeoIP Country Edition: US, United States

Как вы видите в приведенном выше выводе, он отображает только местоположение страны. Geoiplookup может даже отображать более подробную информацию, такую как штат, город, почтовый индекс, широту и долготу и т. д. Для этого вам необходимо загрузить базы данных городов из Maxmind, как показано ниже. Убедитесь, что вы загружаете его в папку /usr/share/GeoIP/.

wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz
gunzip GeoLiteCity.dat.gz

Теперь выполните приведенную ниже команду, чтобы получить более подробную информацию о геолокации IP-адреса.

geoiplookup -f /usr/share/GeoIP/GeoLiteCity.dat 216.58.197.78

Пример вывода будет:

GeoIP City Edition, Rev 1: US, CA, California, Mountain View, 94043, 37.419201, -122.057404, 807, 650

Если вы сохранили файлы базы данных в другом месте, отличном от местоположения по умолчанию, вы можете использовать параметр '-d', чтобы указать путь. Скажем, например, если вы сохранили файлы базы данных в /home/sk/geoip/, команда для определения геолокации IP-адреса будет такой:

geoiplookup -d /home/sk/geoip/ 216.58.197.78

Более подробную информацию смотрите на страницах руководства.

man geoiplookup

Статьи по данной тематике