CountryCode IPList

グローバルIPv4アドレス、ユニキャストIPv6アドレスは、
5つの地域インターネットレジストリ(RIR:Regional Internet Registry)で管理を行っており、
RIRで国別に割り当てたIPアドレスリストは都度更新される形でインターネット公開されている。

国別IPアドレスリストが必要になりRIRの公開しているファイルを利用する事があるのだが、
セグメント情報がCIDR形式で記載されていない為、利用する際に工夫が必要となる。
 
これら配布ファイルをCIDR形式に修正して一般公開しているサイトは多数あるのだが、
ファイルをIPv4/IPv6両方生成しつつ、デュアルスタックで配布サイト運営している所が無かったので実施。

注意事項

  1. ファイル利用による損益について、一切の責任を負いません
  2. 配布状況によって、ダウンロードURLの変更・ファイルの公開停止をする場合があります
  3. 毎日深夜1時頃にファイルを更新しますが、メンテナンスで更新が遅れる事もあります
  4. ファイルを自動取得する場合、負荷軽減の為に圧縮ファイルをご利用下さい

ファイル

FormatIPv4IPv6
texthoge.txthoge.txt
gziphoge.txthoge.txt
bzip2hoge.txthoge.txt
xzhoge.txthoge.txt
md5hoge.txthoge.txt

 


スクリプト

IPアドレスリストをCIDR形式に整形するスクリプトも、実際に利用している物を公開。
今回はLinuxでの実行を前提にPerlでスクリプトを作成してみました。
 
筆者が作成した整形スクリプトは好きに改変して大丈夫ですが、
&color(#ff0000){外部ライブラリのライセンスについてはライブラリ配布元に帰属とします。);

参考サイト

初期設定

スクリプトにヘルプを埋め込んであるので「./script.pl --help」で確認しつつ初期設定をして下さい。
ただし、スクリプトの実行パス・ファイル保存先などは変数に直書きしている為、
下記解説に従って該当箇所を書き換えてください。
 

 make-country-iplist.pl

 

 make-country-getrir.pl

 

 make-country-modify.pl

 

 make-country-output.pl

 

 make-country-webdir.pl

実行コマンド