きっかけは,前回も書いたが,FreeBSD の ports ツリーから,「Geo::IP」用のエントリーが削除されたことに始まる。 Geo-IP は MaxMind 社のデータベースを使うためのモジュールで,これまで無料で使える精度のあまり高くない「GeoLite」データベースを使うのに利用していた。 しかし,MaxMind 社がデータベースの構造を変えたみたいで,今後は「GeoIP2」を使え,というメッセージが出てきたので「GeoIP2」を使ってみた。それ自体はいいのだが,なにせデータの読み出しが遅い。ほんとに複数件の IP アドレスの住所情報を調べると,無限に時間がかかる感じがした。
これをネットで調べると,どうも「MaxMind::DB::Readers::XS」を使うといいと出てくる。 前回も書いたが,GeoIP2 をインストールすると,下記のようなものが一緒にインストールされる。
・GeoIP2 ・GeoIP2::Database::Reader ・GeoIP2::Model::City ・/usr/local/lib/libmaxminddb.soなどがインストールされ,さらに
MaxMind::DB::Readerがインストールされる。