Network/Script/IPList
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
ns-lab
nowsky system-lab
DigiLoog
Linux
Windows
開始行:
*CountryCode IPList [#p5cb902a]
グローバルIPv4アドレス、ユニキャストIPv6アドレスは、
5つの地域インターネットレジストリ(RIR:Regional Internet ...
RIRで国別に割り当てたIPアドレスリストは都度更新される形で...
|LEFT:80|LEFT:|c
|CENTER:~RIR|CENTER:~IPLIST|
|[[ARIN:+https://www.arin.net/]]| http://ftp.arin.net/pub...
|[[RIPE NCC:+https://www.ripe.net/]]|http://ftp.ripe.net/...
|[[APNIC:+https://www.apnic.net/]]|http://ftp.apnic.net/p...
|[[LACNIC:+https://www.lacnic.net/]]|http://ftp.lacnic.ne...
|[[AfriNIC:+https://www.afrinic.net/]]|http://ftp.afrinic...
スクリプトで国別IPアドレスリストが必要になり、RIRのアドレ...
セグメント情報がCIDR形式で記載されておらず利用する際に工...
これら配布ファイルをCIDR形式に修正して一般公開しているサ...
ファイルをIPv4/IPv6両方生成しつつ、デュアルスタックで配布...
~
* 参考サイト [#e765aeee]
- [[世界の国別 IPv4 アドレス割り当てリスト:+http://nami.j...
- [[国別 IPv6アドレス割当リスト:+https://foxmaster.jp/ipv...
~
*注意事項 [#p103669b]
+ ファイル利用による損益について、&color(#ff0000){一切の...
+ 状況に応じて、アクセス制限・ダウンロードURLの変更・ファ...
+ ファイルは一日二回、03:00,15:00頃に生成しますが、メンテ...
+ ファイルを自動取得する場合、サーバ負荷軽減の為に&color(...
+ CC・セグメント間はタブ区切り、順序はCC・セグメントを昇...
~
* ファイル [#j2e65dee]
#iframe(https://www.ns-lab.org/iplist/,style=width:100%;h...
- 展開コマンド
$ gzip -cd cidr_ipv4.gz > cidr_ipv4.txt
$ bunzip2 -cd cidr_ipv4.bz2 > cidr_ipv4.txt
$ xzcat -cd cidr_ipv4.xz > cidr_ipv4.txt
----
~
* 説明 [#ffcc7d6b]
IPアドレスリストをCIDR形式に整形するスクリプトについて、...
スクリプトはLinuxでの実行を前提にPerlで作成してあります。
ライセンスについて、筆者が作成したスクリプトは好きに改変...
&color(#ff0000){外部ライブラリのライセンスについてはライ...
~
* 参考サイト [#vad13917]
- [[Mark Suter:+https://zwitterion.org/software/aggregate...
- [[AbacusTechnologies:+https://kana.me/entry/ip-ranges-b...
- [[てくにかるむ:+http://multix.jp/delegated-apnic-acl/]]
~
* スクリプト [#j2853199]
|LEFT:80|CENTER:100|LEFT:100|LEFT:200|c
|CENTER:~公開日|~FILE|RIGHT:~SIZE|CENTER:~MD5|CENTER:~更...
|2019/01/02|[[iplist_20190102.zip:https://www.ns-lab.org/...
|2017/12/17|[[iplist_20171217.zip:https://www.ns-lab.org/...
|2017/12/15|[[iplist_20171215.zip:https://www.ns-lab.org/...
~
* 初期設定 [#od7f8eac]
実行パス・ファイル保存先は変数に直書きしている為、下記に...
また、スクリプトにヘルプも埋め込んであるので、必要に応じ...
#region(&color(#ff0000){make-country-iplist.pl};)
用途:スクリプト全体の統括、レポートメールの送信
---
$CIDR_ROOT_DIR = "出力ファイルの保存先"
$MAIL_FROM = "メールレポートの送信元アドレス"
$MAIL_TO = "メールレポートの宛先アドレス"
$SCRIPT_ROOT_DIR = "スクリプトの保存ディレクトリ"
$SCRIPT_OPTION = "スクリプトの共通オプション"
#endregion
#region(&color(#ff0000){make-country-getrir.pl};)
用途:RIRのIPアドレスリスト取得
---
$CIDR_ROOT_DIR = "出力ファイルの保存先"
#endregion
#region(&color(#ff0000){make-country-modify.pl};)
用途:IPアドレスリストをCIDR形式に整形
---
$CIDR_ROOT_DIR = "出力ファイルの保存先"
#endregion
#region(&color(#ff0000){make-country-output.pl};)
用途:整形済IPアドレスリストのテキスト化、ファイル結合処理
---
$CIDR_SCRIPT = "外部ライブラリの実行パス"
$CIDR_ROOT_DIR = "出力ファイルの保存先"
#endregion
#region(&color(#ff0000){make-country-webdir.pl};)
用途:整形済IPアドレスリストの圧縮、WEBディレクトリへ複製
---
$IPLIST_OWNER = "WEB公開ファイルのユーザ"
$IPLIST_GROUP = "WEB公開ファイルのグループ"
$IPLIST_PERMIT = "WEB公開ファイルのパーミッション"
$WEB_ROOT_PATH = "WEB公開ファイルの保存先ディレクトリ"
$CIDR_ROOT_DIR = "出力ファイルの保存先"
#endregion
~
* 実行コマンド [#vd27cd05]
スクリプト変数を下記内容に設定し、未記載の変数をデフォル...
CPU処理速度にも左右されますが処理完了まで5分程時間が必要...
外部ライブラリ(aggregate-cidr-addresses)は、IPv6対応の為...
-変数設定例
$CIDR_ROOT_DIR = "/var/iplist";
$SCRIPT_ROOT_DIR = "/usr/local/bin/iplist";
$CIDR_SCRIPT = "/usr/local/bin/iplist/aggregate-cidr...
$IPLIST_OWNER = "www";
$IPLIST_GROUP = "www";
$IPLIST_PERMIT = "644";
$WEB_ROOT_PATH = "/var/www/htdocs";
~
-パッケージインストール
RHEL8 and Clone's
# dnf install epel-release
# dnf install mailx tar wget perl-File-Path perl-Net-IP
RHEL9 and Clone's
# dnf install epel-release
# dnf install s-nail tar wget perl-File-Path perl-Net-IP
~
-実行準備
# cd /usr/local/bin/iplist
# wget "https://zwitterion.org/software/aggregate-cidr-a...
# diff aggregate-cidr-addresses.orig aggregate-cidr-addr...
89c89
< print $_->prefix(), "\n";
---
> print 6 eq $_->version ? $_->print() : $_->prefi...
# mkdir /var/iplist
# chmod 755 make-country-*.pl aggregate-cidr-addresses
# ls
aggregate-cidr-addresses make-country-iplist.pl make...
make-country-getrir.pl make-country-modify.pl make...
~
-実行方法
ローカル用IPリストの生成(WEB公開無し)
$ ./make-country-iplist.pl
WEB公開用IPリストの生成
$ ./make-country-iplist.pl --web
ヘルプの表示
$ ./make-country-iplist.pl --help
~
* エラー対処 [#e24b3844]
-インタプリタエラーが出る
実行環境の文字コード次第で、スクリプト実行時に&color(#ff0...
行末についているLF文字(Line Feed)を消せば直るので、sedやt...
# cd /usr/local/bin/iplist
# sed -i 's/\r//' make-country-*.pl
終了行:
*CountryCode IPList [#p5cb902a]
グローバルIPv4アドレス、ユニキャストIPv6アドレスは、
5つの地域インターネットレジストリ(RIR:Regional Internet ...
RIRで国別に割り当てたIPアドレスリストは都度更新される形で...
|LEFT:80|LEFT:|c
|CENTER:~RIR|CENTER:~IPLIST|
|[[ARIN:+https://www.arin.net/]]| http://ftp.arin.net/pub...
|[[RIPE NCC:+https://www.ripe.net/]]|http://ftp.ripe.net/...
|[[APNIC:+https://www.apnic.net/]]|http://ftp.apnic.net/p...
|[[LACNIC:+https://www.lacnic.net/]]|http://ftp.lacnic.ne...
|[[AfriNIC:+https://www.afrinic.net/]]|http://ftp.afrinic...
スクリプトで国別IPアドレスリストが必要になり、RIRのアドレ...
セグメント情報がCIDR形式で記載されておらず利用する際に工...
これら配布ファイルをCIDR形式に修正して一般公開しているサ...
ファイルをIPv4/IPv6両方生成しつつ、デュアルスタックで配布...
~
* 参考サイト [#e765aeee]
- [[世界の国別 IPv4 アドレス割り当てリスト:+http://nami.j...
- [[国別 IPv6アドレス割当リスト:+https://foxmaster.jp/ipv...
~
*注意事項 [#p103669b]
+ ファイル利用による損益について、&color(#ff0000){一切の...
+ 状況に応じて、アクセス制限・ダウンロードURLの変更・ファ...
+ ファイルは一日二回、03:00,15:00頃に生成しますが、メンテ...
+ ファイルを自動取得する場合、サーバ負荷軽減の為に&color(...
+ CC・セグメント間はタブ区切り、順序はCC・セグメントを昇...
~
* ファイル [#j2e65dee]
#iframe(https://www.ns-lab.org/iplist/,style=width:100%;h...
- 展開コマンド
$ gzip -cd cidr_ipv4.gz > cidr_ipv4.txt
$ bunzip2 -cd cidr_ipv4.bz2 > cidr_ipv4.txt
$ xzcat -cd cidr_ipv4.xz > cidr_ipv4.txt
----
~
* 説明 [#ffcc7d6b]
IPアドレスリストをCIDR形式に整形するスクリプトについて、...
スクリプトはLinuxでの実行を前提にPerlで作成してあります。
ライセンスについて、筆者が作成したスクリプトは好きに改変...
&color(#ff0000){外部ライブラリのライセンスについてはライ...
~
* 参考サイト [#vad13917]
- [[Mark Suter:+https://zwitterion.org/software/aggregate...
- [[AbacusTechnologies:+https://kana.me/entry/ip-ranges-b...
- [[てくにかるむ:+http://multix.jp/delegated-apnic-acl/]]
~
* スクリプト [#j2853199]
|LEFT:80|CENTER:100|LEFT:100|LEFT:200|c
|CENTER:~公開日|~FILE|RIGHT:~SIZE|CENTER:~MD5|CENTER:~更...
|2019/01/02|[[iplist_20190102.zip:https://www.ns-lab.org/...
|2017/12/17|[[iplist_20171217.zip:https://www.ns-lab.org/...
|2017/12/15|[[iplist_20171215.zip:https://www.ns-lab.org/...
~
* 初期設定 [#od7f8eac]
実行パス・ファイル保存先は変数に直書きしている為、下記に...
また、スクリプトにヘルプも埋め込んであるので、必要に応じ...
#region(&color(#ff0000){make-country-iplist.pl};)
用途:スクリプト全体の統括、レポートメールの送信
---
$CIDR_ROOT_DIR = "出力ファイルの保存先"
$MAIL_FROM = "メールレポートの送信元アドレス"
$MAIL_TO = "メールレポートの宛先アドレス"
$SCRIPT_ROOT_DIR = "スクリプトの保存ディレクトリ"
$SCRIPT_OPTION = "スクリプトの共通オプション"
#endregion
#region(&color(#ff0000){make-country-getrir.pl};)
用途:RIRのIPアドレスリスト取得
---
$CIDR_ROOT_DIR = "出力ファイルの保存先"
#endregion
#region(&color(#ff0000){make-country-modify.pl};)
用途:IPアドレスリストをCIDR形式に整形
---
$CIDR_ROOT_DIR = "出力ファイルの保存先"
#endregion
#region(&color(#ff0000){make-country-output.pl};)
用途:整形済IPアドレスリストのテキスト化、ファイル結合処理
---
$CIDR_SCRIPT = "外部ライブラリの実行パス"
$CIDR_ROOT_DIR = "出力ファイルの保存先"
#endregion
#region(&color(#ff0000){make-country-webdir.pl};)
用途:整形済IPアドレスリストの圧縮、WEBディレクトリへ複製
---
$IPLIST_OWNER = "WEB公開ファイルのユーザ"
$IPLIST_GROUP = "WEB公開ファイルのグループ"
$IPLIST_PERMIT = "WEB公開ファイルのパーミッション"
$WEB_ROOT_PATH = "WEB公開ファイルの保存先ディレクトリ"
$CIDR_ROOT_DIR = "出力ファイルの保存先"
#endregion
~
* 実行コマンド [#vd27cd05]
スクリプト変数を下記内容に設定し、未記載の変数をデフォル...
CPU処理速度にも左右されますが処理完了まで5分程時間が必要...
外部ライブラリ(aggregate-cidr-addresses)は、IPv6対応の為...
-変数設定例
$CIDR_ROOT_DIR = "/var/iplist";
$SCRIPT_ROOT_DIR = "/usr/local/bin/iplist";
$CIDR_SCRIPT = "/usr/local/bin/iplist/aggregate-cidr...
$IPLIST_OWNER = "www";
$IPLIST_GROUP = "www";
$IPLIST_PERMIT = "644";
$WEB_ROOT_PATH = "/var/www/htdocs";
~
-パッケージインストール
RHEL8 and Clone's
# dnf install epel-release
# dnf install mailx tar wget perl-File-Path perl-Net-IP
RHEL9 and Clone's
# dnf install epel-release
# dnf install s-nail tar wget perl-File-Path perl-Net-IP
~
-実行準備
# cd /usr/local/bin/iplist
# wget "https://zwitterion.org/software/aggregate-cidr-a...
# diff aggregate-cidr-addresses.orig aggregate-cidr-addr...
89c89
< print $_->prefix(), "\n";
---
> print 6 eq $_->version ? $_->print() : $_->prefi...
# mkdir /var/iplist
# chmod 755 make-country-*.pl aggregate-cidr-addresses
# ls
aggregate-cidr-addresses make-country-iplist.pl make...
make-country-getrir.pl make-country-modify.pl make...
~
-実行方法
ローカル用IPリストの生成(WEB公開無し)
$ ./make-country-iplist.pl
WEB公開用IPリストの生成
$ ./make-country-iplist.pl --web
ヘルプの表示
$ ./make-country-iplist.pl --help
~
* エラー対処 [#e24b3844]
-インタプリタエラーが出る
実行環境の文字コード次第で、スクリプト実行時に&color(#ff0...
行末についているLF文字(Line Feed)を消せば直るので、sedやt...
# cd /usr/local/bin/iplist
# sed -i 's/\r//' make-country-*.pl
ページ名: