コンテンツにスキップ

英文维基 | 中文维基 | 日文维基 | 草榴社区

利用者:Dragoniez/sandbox7

{{私論}}

この文書では、IPレンジがどのようなものであるかを解説します。Help:管理者マニュアル/広域ブロックに管理者向けの説明書はありますが、「IPとは何か」の基礎的な事柄は書かれていないため、一般利用者が読んでもとっつきにくいでしょう。このページを一通り読めば、管理者伝言板にIPユーザーを報告する場合における応用的ノウハウがある程度身につくはずです。

IPアドレスの種類

[編集]

IPアドレスは、大きく2種類に分かれます。

  • IPv4(例: 192.168.0.0)
  • IPv6(例: 2001:0DB8:AC10:FE01:0000:0000:0000:0000)

各ブロックがピリオドで区切られ、4つのブロックから成るものをIPv4アドレス、コロンで区切られ、8つのブロックから成るものをIPv6アドレスと言います。IPv4の各ブロックは0から255の数字で構成され、IPv6のそれぞれの桁は16進数(0123456789ABCDEF)で表示されます。(IPv6に大文字小文字の区別はありません。)

IPレンジとは

[編集]

レンジとは、その名の通り、複数の単一IPを包含する帯域を指し、IPアドレスの末尾に「/64」というような「スラッシュ+数字」のかたちで表記されます。ただし、この表記法でも「1つのIP 」を示すことができるということをまずは頭に入れましょう。

  • 192.168.0.0/32
  • 2001:0DB8:AC10:FE01:0000:0000:0000:0000/128(または2001:0DB8:AC10:FE01::/128:IPv6の「:0000」は省略できます。)

これらはレンジ表記ですが、両方とも#IPアドレスの種類での非レンジ表記と同一で、含まれるアドレスは1つのみです。スラッシュの前のアドレスが同一であることを前提とすると、レンジの数字を1減らすごとに、包含するアドレス数が2倍になります。

  • IPv4
    • 192.168.0.0/32(192.168.0.0、1個; 20
    • 192.168.0.0/31(192.168.0.0-1、2個; 21
    • 192.168.0.0/30(192.168.0.0-3、4個; 22
    • 192.168.0.0/29(192.168.0.0-7、8個; 23
    • 192.168.0.0/28(192.168.0.0-15、16個; 24
    • 192.168.0.0/27(192.168.0.0-31、32個; 25
    • 192.168.0.0/26(192.168.0.0-63、64個; 26
    • 192.168.0.0/25(192.168.0.0-127、128個; 27
    • 192.168.0.0/24(192.168.0.0-255、256個; 28
  • IPv6
    • 2001:0DB8:AC10:FE01:0000:0000:0000:0000/128(2001:0DB8:AC10:FE01:0000:0000:0000:0000、1個; 20
    • 2001:0DB8:AC10:FE01:0000:0000:0000:0000/127(2001:0DB8:AC10:FE01:0000:0000:0000:0000-0001、2個; 21
    • ...
    • 2001:0DB8:AC10:FE01:0000:0000:0000:0000/113(2001:0DB8:AC10:FE01:0000:0000:0000:0000-7FFF、32,768個; 215
    • 2001:0DB8:AC10:FE01:0000:0000:0000:0000/112(2001:0DB8:AC10:FE01:0000:0000:0000:0000-FFFF、65,536個; 216

これさえ分かれば、IPv4とIPv6の大きな違いは、割り当て可能なアドレス数にあることが容易に分かるはずです。IPv4は/32レンジで1個、IPv6は/128レンジで1個のアドレスでした。すなわちIPv4は232、つまり約43億であるのに対し、IPv6は2128、つまり約340澗、340兆の1兆倍というもはや見慣れない単位になります。

レンジの見極め

[編集]

区切りの数字

[編集]

ここまで来れば、では実際にレンジブロックが可能かどうかを見極める際に何を見ればいいのか分かるようになるまでもうすぐです。IPv4では/24のレンジが4ブロック目の0-255の全てのカバーできることを見ましたが、IPレンジには、覚えておくと便利な「区切りの数字」があります。

  • IPv4
    • 192.168.0.0/32(192.168.0.0、20個)
    • 192.168.0.0/24(192.168.0.0-192.168.0.255、28個)
    • 192.168.0.0/16(192.168.0.0-192.168.255.255、216個)
    • 192.0.0.0/8(192.0.0.0-192.255.255.255、224個)
  • IPv6
    • 2001:0DB8:AC10:FE01:0000:0000:0000:0000/128(2001:0DB8:AC10:FE01:0000:0000:0000:0000、20個)
    • 2001:0DB8:AC10:FE01:0000:0000:0000:0000/112(2001:0DB8:AC10:FE01:0000:0000:0000:0000-2001:0DB8:AC10:FE01:0000:0000:0000:FFFF、216個)
    • 2001:0DB8:AC10:FE01:0000:0000:0000:0000/96(2001:0DB8:AC10:FE01:0000:0000:0000:0000-2001:0DB8:AC10:FE01:0000:0000:FFFF:FFFF、232個)
    • 2001:0DB8:AC10:FE01:0000:0000:0000:0000/80(2001:0DB8:AC10:FE01:0000:0000:0000:0000-2001:0DB8:AC10:FE01:00000:FFFF:FFFF:FFFF、248個)
    • 2001:0DB8:AC10:FE01:0000:0000:0000:0000/64(2001:0DB8:AC10:FE01:0000:0000:0000:0000-2001:0DB8:AC10:FE01:FFFF:FFFF:FFFF:FFFF、264個)
    • 2001:0DB8:AC10:0000:0000:0000:0000:0000/48(2001:0DB8:AC10:0000:0000:0000:0000:0000-2001:0DB8:AC10:FFFF:FFFF:FFFF:FFFF:FFFF、280個)
    • 2001:0DB8:0000:0000:0000:0000:0000:0000/32(2001:0DB8:0000:0000:0000:0000:0000:0000-2001:0DB8:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF、296個)
    • 2001:0000:0000:0000:0000:0000:0000:0000/16(2001:0000:0000:0000:0000:0000:0000:0000-2001:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF、2112個)

このように、ここでいう「区切りの数字」とは、各ブロックごとにIPv4であれば0-255の全てを、IPv6であれば0000-FFFFの全ての網羅できる数字です。さらにこの中でも、IPv4であれば/24、IPv6であれば/64のレンジは必ず覚えるようにしてください。というのも、IPアドレスというものは、「ネットワーク部」と「ホスト部」というパーツに分かれています。(以下は下線部がネットワーク部、それ以下がホスト部です。)

  • IPv4
    • 192.168.0.0
  • IPv6
    • 2001:0DB8:AC10:FE01:0000:0000:0000:0000

「ネットワーク部」は「1つの家のネットワーク」、「ホスト部」は「そのネットワーク内の各デバイス」だととりあえず思ってください。(実際はもっと複雑です。)ここで重要なのは、/24と/64はこの2つの部分をちょうど切り分けるレンジであるということです。

  • IPv4
    • 192.168.0.0/24 (=192.168.0.0-192.168.0.255)
  • IPv6
    • 2001:0DB8:AC10:FE01:0000:0000:0000:0000/64 (=2001:0DB8:AC10:FE01:0000:0000:0000:0000-2001:0DB8:AC10:FE01:FFFF:FFFF:FFFF:FFFF)

「ネットワーク部」は「1つの家」と例えましたが、/24または/64のレンジ内に同じような投稿がある場合、同一人物である可能性が高いです。よって、実際にブロック処理を行う管理者は、単一IPのブロックを行う前に、とりあえずIPv4の場合は/24を、IPv6の場合は/64に同じような投稿がないか確認する、ということも多いはずです。

レンジの割り出し

[編集]

以下のIP群について、どのレンジであれば網羅できるかを考えてみましょう。

  • IPv4
    • 192.168.21.35
    • 192.168.21.234
    • 192.168.21.51
  • IPv6
    • 2001:0DB8:AC10:FE01::1(2001:0DB8:AC10:FE01:0000:0000:0000:0001と同じ)
    • 2001:0DB8:AC10:FE01:3BA4:2F39:D15A:9521
    • 2001:0DB8:AC10:FE01:5C17::2CAF(2001:DB8:AC10:FE01:5C17:0000:0000:2CAFと同じ)

答えは 192.168.21.0/24 と 2001:0DB8:AC10:FE01::/64 です。上の例では、IPv4は「192.168.21」の部分が同じで、IPv6は「2001:0DB8:AC10:FE01」の部分が同じですね。つまり、あるIP群をレンジブロックできるかどうか見極める一歩目は、「そのIP群のアドレスに共通点があるか否か」です。