如何从命令行查找IP地址的地理位置
geoiplookup是一个命令行实用程序,可用于查找IP地址或者主机名所来自的国家/地区。
它使用GeoIP库和数据库来收集IP地址的详细信息。
本简要教程介绍了如何安装和使用geoiplookup实用程序在类似Unix的操作系统中查找IP地址的位置。
从命令行使用Geoiplookup查找IP地址的地理位置
安装Geoiplookup
大多数Linux操作系统的默认存储库中都提供Geoiplookup。
要将其安装在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 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下载城市数据库,如下所示。
确保我们在/user/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