1998/11/17 Whois 検索キーワードと検索アルゴリズム、検索結果表示(案) -- ネットワーク情報について -- 社団法人日本ネットワーク インフォメーションセンター 事務局 JPNICデータベース担当 ======================================================================== ■ 検索キーワードとその検索対象 検索キー種別 検索対象 完全一致/部分一致の有無 ------------------------------------------------------------------------ 《IPネットワークアドレス》 NET:a 完全一致/部分一致 《IPホストアドレス》 NET:a /部分一致 《ネットワーク名》 NET:b /部分一致 ------------------------------------------------------------------------ ※ a 項目は、完全一致/部分一致の両方があり得る ※ a 項目以外は、常に部分一致扱いにする → 完全一致は a 項目以外にあり得ない → a 項目は一意に定まる → したがって、完全一致は一つしかあり得ない ■ 検索キー種別の定義 ○ 《IPネットワークアドレス》 ※ 始点と終点のアドレスで定義する ※ 文字列表現:"xxx.xxx.xxx.xxx-yyy.yyy.yyy.yyy" ◇ アルゴリズム (1) プレフィックス長("/xx")が指定されている場合 → 正当な表記ならば (3) へ (2) プレフィックス長("/xx")なしの場合 (2-b) 末尾が "0" である場合 → クラスに応じてプレフィックス長("/xx")を付加し、(3) へ (2-a) 末尾が "0" 以外の場合 → 《IPホストアドレス》として解釈する ※ 《IPネットワークアドレス》 としては扱わない (3) 始点と終点のアドレスを求める 例: 末尾が "0" 表記:アルゴリズム(1)(2-b)(3)を適用 "xxx.xxx.xxx.0" → "xxx.xxx.xxx.0-xxx.xxx.xxx.255" "xxx.xxx.xxx.0-xxx.xxx.yyy.0" → "xxx.xxx.xxx.0-xxx.xxx.yyy.255" CIDR 表記:アルゴリズム(1)(3)を適用 "xxx.xxx.xxx.0/24" → "xxx.xxx.xxx.0-xxx.xxx.xxx.255" "xxx.xxx.xxx.0/29" → "xxx.xxx.xxx.0-xxx.xxx.xxx.7" "xxx.xxx.xxx.16/28" → "xxx.xxx.xxx.16-xxx.xxx.xxx.31" "xxx.xxx.0.0/22" → "xxx.xxx.0.0-xxx.xxx.3.255" その他の表記:アルゴリズム(1)(2-a)を適用 "xxx.xxx.xxx.1" → 《IPホストアドレス》として解釈 ○ 《IPホストアドレス》 ※ 始点のアドレスのみで定義する ※ 文字列表現:"xxx.xxx.xxx.xxx" ■ [ネットワーク情報] a 項目の検索方法 ○ 検索キーが《IPネットワークアドレス》の場合 (1) NET:a を検索する (2) それぞれの始点と終点の比較 (2-a) 検索キーの始点と終点が完全一致した場合 → 完全一致として扱う 検索キー: 始点 終点 : : NET:a : |------| : : (2-b) 以下のケースに該当する場合 → 部分一致リストに追加 検索キー: 始点 終点 : : NET:a : |----| : : : NET:a : : |----| : : NET:a : |----------| : : NET:a : |----------| : : NET:a : |------| : : : NET:a : : |------| : : NET:a : |--------------| : : NET:a : : |--| : : : NET:a : |---| : : : NET:a : : |---| : : (2-c) 上記以外 → 一致候補から除外する 検索キー: 始点 終点 : : NET:a : |--| : : : : NET:a : : : |--| : : (3) 部分一致リストを、始点を基準に昇順でソートする ○ 検索キーが《IPホストアドレス》の場合 ※ この場合完全一致はあり得ない (1) NET:a を検索する (2) それぞれの始点と終点の比較 (2-a) 始点と終点の範囲内にある場合 → 部分一致リストに追加 検索キー: ホストアドレス : NET:a : |--------------| : (2-b) 上記以外 → 一致候補から除外する (3) 部分一致リストを、始点を基準に昇順でソートする ■ 検索結果の表示 (1) 完全一致/部分一致リストとも無い場合 → "No Match!!" (2) 部分一致検索オプション "..." が指定されている場合 → 完全一致も部分一致もリスト表示する (3) 完全一致が存在する場合 → データ内容の表示 (3-a) 完全一致したものが SUBA空間である場合 → さらに、部分一致リストを添付表示する (3-b) 完全一致したものが IPネットワーク割当空間である場合 → 部分一致リストは表示しない (4) 完全一致が存在しない場合 → 部分一致リストを表示する 表示例: ○ 《IPネットワークアドレスによる検索時》 (SUBA空間に完全一致) → 完全一致したデータ内容を表示する → 部分一致リストをサマリー表示する % whois -h whois.nic.ad.jp 192.168.0.0 % whois -h whois.nic.ad.jp 192.168.0.0-192.168.0.255 % whois -h whois.nic.ad.jp 192.168.0.0/24 +----------------------------------------------------------------------- | Network Information: [ネットワーク情報] | a. [IPネットワークアドレス] 192.168.0.0 | b. [ネットワーク名] SUBA-999-001 | f. [組織名] プロバイダA | : | [最終更新] 98/06/26 23:12:01 (JST) | yasuhiro@nic.ad.jp | | -------- | 株式会社AAA (AAA Corp.) | NET-AAA [192.168.0.0 <-> 192.168.0.127] 192.168.0.0/25 | 株式会社BBB (BBB Corp.) | NET-BBB [192.168.0.128 <-> 192.168.0.191] 192.168.0.128/26 | 株式会社CCC (CCC Corp.) | NET-CCC [192.168.0.192 <-> 192.168.0.255] 192.168.0.192/26 +----------------------------------------------------------------------- (割当空間に完全一致) → 完全一致のデータ内容を表示する % whois -h whois.nic.ad.jp 192.168.0.128/26 % whois -h whois.nic.ad.jp 192.168.0.128-192.168.0.191 (※従来と変化無し※) +----------------------------------------------------------------------- | Network Information: [ネットワーク情報] | a. [IPネットワークアドレス] 192.168.0.128/26 | b. [ネットワーク名] NET-BBB | f. [組織名] 株式会社BBB | : | [最終更新] 98/06/26 23:12:01 (JST) | yasuhiro@nic.ad.jp +----------------------------------------------------------------------- (完全一致:なし、部分一致:あり) → 部分一致リストをサマリー表示する % whois -h whois.nic.ad.jp 192.168.0.0-192.168.1.0 % whois -h whois.nic.ad.jp 192.168.0.0-192.168.1.255 % whois -h whois.nic.ad.jp 192.168.0.0/23 +----------------------------------------------------------------------- | プロバイダYYY (Provider YYY) | SUBA-999-001 [サブアロケーション] 192.168.0.0 | 株式会社AAA (AAA Corp.) | NET-AAA [192.168.0.0 <-> 192.168.0.127] 192.168.0.0/25 | 株式会社BBB (BBB Corp.) | NET-BBB [192.168.0.128 <-> 192.168.0.191] 192.168.0.128/26 | 株式会社CCC (CCC Corp.) | NET-CCC [192.168.0.192 <-> 192.168.0.255] 192.168.0.192/26 | プロバイダZZZ (Provider ZZZ) | SUBA-999-002 [サブアロケーション] 192.168.1.0 | 株式会社DDD (DDD Corp.) | NET-AAA [192.168.1.0 <-> 192.168.1.127] 192.168.1.0/25 +----------------------------------------------------------------------- ○ 《IPホストアドレスによる検索時》 (完全一致:なし、部分一致:あり) → 部分一致リストをサマリー表示する % whois -h whois.nic.ad.jp 192.168.0.1 +----------------------------------------------------------------------- | プロバイダZZZ (Provider ZZZ) | SUBA-999-001 [サブアロケーション] 192.168.0.0 | 株式会社AAA (AAA Corp.) | NET-AAA [192.168.0.0 <-> 192.168.0.127] 192.168.0.0/25 +-----------------------------------------------------------------------