# apt-get install geoip-bin
CentOS/RHEL# yum install geoip
# geoiplookup chonnom.com
GeoIP Country Edition: KR, Korea, Republic of
Maxmide 에서 배포하는 디비를 이용해서 좀더 디테일한 정보를 확인
※ Maxmind 에서 배포하는 버전에는 무료/유로 버전이 있는데...굳이 유로버전 사용할 필요없이 한달에 한번 업데이트 해주는 무료버전만으로도 충분하다.
http://dev.maxmind.com/geoip/legacy/geolite/# wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gz
# wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz
# wget http://download.maxmind.com/download/geoip/database/asnum/GeoIPASNum.dat.gz
# gunzip GeoIP.dat.gz
# gunzip GeoIPASNum.dat.gz
# gunzip GeoLiteCity.dat.gz
# cp Geo* /usr/share/GeoIP/
# geoiplookup XXX.XXX.XXX.6
GeoIP Country Edition: KR, Korea, Republic of
GeoIP ASNum Edition: AS4766 Korea Telecom
GeoLiteCity 데이타를 이용해서 주, 도시, 우편번호, 위도, 경도 확인
# geoiplookup -f /usr/share/GeoIP/GeoLiteCity.dat XXX.XXX.XXX.6
GeoIP City Edition, Rev 1: KR, 13, Kyonggi-do, Seongnam, N/A, 37.438599, 127.137802, 0, 0
※ 모바일 네트워크는 정보가 상이할수 있음
방법2)또다른 방법으로는...GeoIP 데이타를 이용하지 않고 ipinfo.io 에서 제공하는 서비스를 이용하는것이다.
여기서는 curl 을 비롯해 jQuery, Node.js, Ruby, Python 등과 같은 도구를 이용해 JSON 기반의 위치정보 API를 제공한다.
# curl ipinfo.io/XXX.XXX.XXX.6
{
"ip": "XXX.XXX.XXX.6",
"hostname": "No Hostname",
"city": "Seongnam-si",
"region": "Gyeonggi-do",
"country": "KR",
"loc": "37.4386,127.1378",
"org": "AS4766 Korea Telecom"
※ 하루에 API 호출 횟수는 1000회로 제한되어있으며 그이상은 유료이다.
http://xmodulo.com/geographic-location-ip-address-command-line.html