地域情報はどうやって解析しているのか(3) IPアドレスから国を割り出す
続いては、IPアドレスそのものからアクセス元の国名を割り出す方法です。IPアドレスは、インターネット上の住所であり、物理的な場所とは関係がない、とすでに書きましたが、実はどのIPアドレスがどの国に割り当てられているか、ということは決められており、しかもその情報は一般に公開されています。この情報を利用すれば、IPアドレスだけから、アクセス元の国名を知ることができます。
IPアドレスの管理は、ICANN(Internet Corporation for Assigned Names and Numbers)という組織が行っています。世界中のIPアドレスをこの組織が管理しているのですが、直接管理しているわけではなく、地域によって5つの下部組織が分担しています。
APNIC アジア・オセアニア
AfriNIC アフリカ
ARIN 北米
LACNIC 中南米
RIPE NCC 欧州・中東
たとえば、APNICのページに行くと、各組織が管理するIPアドレスと、そのIPアドレスがどの国に割り当てられているかのリストをダウンロードすることができます。
たとえばそこに以下のように書かれています。
apnic|JP|ipv4|58.0.0.0|131072|20050106|allocated|A91A7381
apnic|IN|ipv4|58.2.0.0|65536|20050110|allocated|A9135B49
これは、58.0.0.0から始まる131,072個のIPアドレスが日本(JP)に2005年1月6日から割り当てられており、58.2.0.0から始まる65,536個のIPアドレスがインド(IN)に2005年1月10日から割り当てられていることがわかります。58.0.0.0から131,072個とは、以下の範囲のことです。
58.0.0.0 ~ 58.1.255.255
このことから、たとえば「58.1.23.45」といったIPアドレスからアクセスがあれば、それは日本からのアクセスであることがわかります。これらの情報を取得して、アクセス元のIPアドレスと照合すれば、アクセス元の国名がわかるわけです。
ただし、この情報は日々更新されており、毎日新しいファイルが公開されています。従って、照合するには、常に新しい情報に更新し続ける必要があります。
ただし、日々情報は変化していますが、変更というよりは、これまで割り当てられていなかったIPアドレスが新たに各国に割り当てられている、といった感じになっています。