fetus

出力ファイル仕様


このペ―ジについて

このページでは、各ページにある「プレインテキスト」「アクセス制御用ひな型」からダウンロードできるデータファイルの形式を定義します。

総則

それぞれのデータ形式で上書き規定されない限り、次の情報が全ての形式で適用されます。

  • 文字コードはUTF-8です。いわゆるBOM (Byte Order Mark)はありません。
  • 改行コードはCR+LFまたはLFのいずれかです。
  • それぞれのレコードは改行で区切られ、1レコード1行で記載されます。

アクセス制御(アクセス許可・拒否)が明確にあらかじめ出力されている形式の場合、次の内容が適用されます。

  • 出力している国・地域が「日本」である場合、デフォルトで「許可」設定が出力されます。
  • 出力している国・地域が「日本」以外の場合、デフォルトで「拒否」設定で出力されます。
  • URLに「?control=allow」を付与すると、「許可」設定に変更できます。
  • URLに「?control=deny」を付与すると、「拒否」設定に変更できます。
プレインテキスト
  • #」で始まる行は全てコメントです。
    内容については規定されず、人間が読むことを前提にしています。
    機械処理時にはこの行を単純に無視します。
    コメントが行の途中から始まることはありません。
    データレコード同士の間にも挟まる可能性があります。
  • 任意の場所に空行が挟まります。
    データレコード同士の間にも挟まる可能性があります。
  • データレコードはCIDRがそのまま配置されます。
Apache (.htaccess)
  • Apache 2.2 形式のデータが出力されます。
  • #」で始まる行は全てコメントです。
    内容については規定されず、人間が読むことを前提にしています。
    機械処理時にはこの行を単純に無視します。
    コメントが行の途中から始まることはありません。
    データレコード同士の間にも挟まる可能性があります。
  • 任意の場所に空行が挟まります。
    データレコード同士の間にも挟まる可能性があります。
Apache (.htaccess), packed
  • Apache 2.2 形式のデータが出力されます。
  • 複数のCIDRを1行にまとめて出力します。
  • #」で始まる行は全てコメントです。
    内容については規定されず、人間が読むことを前提にしています。
    機械処理時にはこの行を単純に無視します。
    コメントが行の途中から始まることはありません。
    データレコード同士の間にも挟まる可能性があります。
  • 任意の場所に空行が挟まります。
    データレコード同士の間にも挟まる可能性があります。
Apache 2.4
  • Apache 2.4 形式のデータが出力されます。
  • #」で始まる行は全てコメントです。
    内容については規定されず、人間が読むことを前提にしています。
    機械処理時にはこの行を単純に無視します。
    コメントが行の途中から始まることはありません。
    データレコード同士の間にも挟まる可能性があります。
  • 任意の場所に空行が挟まります。
    データレコード同士の間にも挟まる可能性があります。
CSV
  • CSV (RFC 4180) 形式のデータが出力されます。
    正しく取り扱うには、RFC 4180に準拠したパーサーが必要です。
    • 改行コードはCR+LFです。
    • 各カラムの値はダブルクォートで括られるかもしれないし、括られないかもしれません。
    • カラムにダブルクォートを含むかもしれません。
      含む場合は、RFC 4180に示される通り、例えば「A"B」という値は「"A""B"」と出力されます。
    • カラムに改行を含むかもしれません。
  • BOMの出力はありませんので、Microsoft Excelではコメント部の日本語が文字化けする可能性があります。
  • #」で始まる行は全てコメントです。
    内容については規定されず、人間が読むことを前提にしています。
    機械処理時にはこの行を単純に無視します。
    コメントが行の途中から始まることはありません。
    データレコード同士の間にも挟まる可能性があります。
  • 任意の場所に空行が挟まります。
    データレコード同士の間にも挟まる可能性があります。
  • カラムは次の順で出力されます。
    • CIDR
    • 開始アドレス
    • 終了アドレス
    • プレフィックス
    • サブネットマスク
    • アドレス数
    将来拡張される可能性があります(拡張の際は右側に追加されます)。
    ちょうど6カラムであることを期待してはいけません。
ipset (firewalld)
  • Firewalldの設定ファイルとして利用できるXML形式を出力します。
    /etc/firewalld/ipsets/に設置して利用します。
    ipsetコマンドまたはfirewall-cmdコマンドからの利用はできません。
  • XML整形式として妥当なデータが出力されます。
  • <!--」と「-->」の間はコメントです。
    行ベースのプロセッサ(例えばgrep)で簡単に除去できるよう、コメントの中身は「#」で始まるようになっています。
IIS/Azure (ipSecurity)
  • IISの設定ファイルの一部として利用できるXMLを出力します。
  • XML整形式として妥当なデータが出力されます。
  • ルート要素は<ipSecurity>になっています。
    実際の利用にはXMLプロセッサでの加工が必要です。
  • <!--」と「-->」の間はコメントです。
    行ベースのプロセッサ(例えばgrep)で簡単に除去できるよう、コメントの中身は「#」で始まるようになっています。
iptables
  • iptables-restore等で利用する形式のデータが出力されます。
    /etc/sysconfig/iptables等のiptables用設定ファイルを編集して利用することになるでしょう。
  • #」で始まる行は全てコメントです。
    内容については規定されず、人間が読むことを前提にしています。
    機械処理時にはこの行を単純に無視します。
    コメントが行の途中から始まることはありません。
    データレコード同士の間にも挟まる可能性があります。
  • 任意の場所に空行が挟まります。
    データレコード同士の間にも挟まる可能性があります。
  • アクセス制御の変更はできません。
    出力は常に-A RULE1 -s 198.51.100.0/24 -j RULE2形式となります。
    sed等を利用して目的の動作となるように置換してください。
ipv4bycc compat.
  • 「世界の国別 IPv4 アドレス割り当てリスト」と互換性のある形式を出力します。
  • しかし、出力は国・地域ごとに分けられ、また、コメント行(下記参照)を含みます。
  • #」で始まる行は全てコメントです。
    内容については規定されず、人間が読むことを前提にしています。
    機械処理時にはこの行を単純に無視します。
    コメントが行の途中から始まることはありません。
    データレコード同士の間にも挟まる可能性があります。
  • 任意の場所に空行が挟まります。
    データレコード同士の間にも挟まる可能性があります。
Nginx
  • Nginxのアクセス制御構文を出力します。
    serverlocationの設定として組み込むことになるでしょう。
  • #」で始まる行は全てコメントです。
    内容については規定されず、人間が読むことを前提にしています。
    機械処理時にはこの行を単純に無視します。
    コメントが行の途中から始まることはありません。
    データレコード同士の間にも挟まる可能性があります。
  • 任意の場所に空行が挟まります。
    データレコード同士の間にも挟まる可能性があります。
Nginx (Geo)
  • Nginxのnginx_http_geo_moduleで利用できる形式で出力します。
  • 変数名は「$ipv4_jp」のように「$ipv4_+CC」です。
    krfilter/eufilterでは「$ipv4_krfilter_1」のようになります。
  • #」で始まる行は全てコメントです。
    内容については規定されず、人間が読むことを前提にしています。
    機械処理時にはこの行を単純に無視します。
    コメントが行の途中から始まることはありません。
    データレコード同士の間にも挟まる可能性があります。
  • 任意の場所に空行が挟まります。
    データレコード同士の間にも挟まる可能性があります。
Postfix
  • Postfixのcheck_client_accessなどで利用できる形式を出力します。
    smtpd_client_restrictions = check_client_access cidr:/etc/postfix/kr.cidr」のように指定することになるでしょう。
  • #」で始まる行は全てコメントです。
    内容については規定されず、人間が読むことを前提にしています。
    機械処理時にはこの行を単純に無視します。
    コメントが行の途中から始まることはありません。
    データレコード同士の間にも挟まる可能性があります。
  • 任意の場所に空行が挟まります。
    データレコード同士の間にも挟まる可能性があります。