GeoIP

GeoIPというのはIPアドレスが割り当てられた地域情報を取得する仕組みの事であったるのかな?(誰に聞いてるw)

会社でIPの国別コードを取得するのにRIPからIPアドレスの割当てリストを取得してBASHで取出してたが・・・そんな事をしなくてもGeoIPのデータベースから簡単に取得できるやん(--;)

Scientific LinuxCentOSならEPELのリポジトリを追加して

 yum -y install GeoIP

ってすればgeoiplookupってコマンドが使えるようになる。

使い方は簡単で

 geoiplookup IPアドレス(もしくはホスト名)

例えばmicrosoft.comを調べてみると

# geoiplookup microsoft.com
GeoIP Country Edition: US, United States
GeoIP ASNum Edition: AS8075 Microsoft Corporation

って感じで地域情報とAS情報が取り出せる。

簡単やし早いやん(^^;) 

geoipupdateを実行するとローカルにGeoIPのデータベースを取得するので、次回実行時は少し早くなる(はず。。。おぃw)

 

PHPの場合は

 yum -y php-pecl-geoip

ってのをインストールして

<?php

print geoip_country_code_by_name('microsoft.com');

?>

なんてするだけでOK

 

なんか便利じゃないですか・・・
これを使ったらWEBで日本だけしかアクセスを許可しないとか簡単やんって思ったら・・・mod_geoipなんてapacheモジュールがあった(^^;)

これを使えばApacheのレベルで海外IPを制限する事が可能になる。おぉ!!

ちなみに、mod_geoipもepelリポジトリにしかないのでyumでインストールする場合はepelリポジトリを有効にしておく。

 

mod_geoipは今度試してみよう(^^)