Help:Range blocks/ja


 * IPv6 の範囲ブロックの情報は /IPv6 を参照してください. 

範囲ブロックは、一連の IP アドレスに対して、編集、アカウント作成、ウィキのインターフェイスからのメール送信などをできなくするために課す技術的な制限機能であり、Special:Block を使用して適用されます. チェックボックス「」にチェックを入れた場合、登録済み利用者による編集も、ブロックされた範囲から接続している間は、無効になります.

範囲ブロックは、ウィキメディア財団のすべてのウィキで有効化され使用されています. あなたのウィキで有効になっていない場合は、 に「 」を追加してください (MediaWiki 1.18.0 以降では常時有効になりました).

Special:Block で IP 範囲ブロックするには、先頭の IP アドレスと、続けてスラッシュ (/)、Classless Inter-Domain Routing (CIDR) 接尾辞を入力してください. '''何をしているか理解していない場合は、範囲ブロックの実行は避けるべきです. さもなければ何万人もの (場合によっては何百万人もの) 無関係な人々をブロックすることになってしまいます!'''

'''この記事では主に IPv4 について記述します. IPv6 ブロックでは、動作が類似していますが、実装が異なります - /IPv6 を参照してください. '''

技術的ではない説明
一連の IP アドレスは、IP アドレスのブロックに分割できます. このブロックの例として、148.20.57.0 から 148.20.57.255 までのブロックを挙げます. 255 に到達すると、次のアドレスは 148.20.58.0 です.

一連の IP アドレスは、より小さなブロックにも、より大きなブロックにも分割できます. 実用的なブロックのうち最小のものは、アドレス 4 個のブロックです. これは以下のいずれかになるでしょう:


 * 148.20.57.0 - 148.20.57.3,
 * 148.20.57.4 - 148.20.57.7,
 * 148.20.57.8 - 148.20.57.11, ...

アドレス 4 個のブロックそれぞれについて、コンピューターに割り当てられるアドレスは 2 個のみです. あらゆるブロックについて、先頭と末尾のアドレスは、ネットワーク通信のために予約されています. これらはレベル 30 のブロックであり、以下のように表現できます:


 * 148.20.57.0/30</tt>,
 * 148.20.57.4/30</tt>,
 * 148.20.57.8/30</tt>, ...

次に大きいブロックは、アドレス 8 個のブロックです. これは以下のようになるでしょう:


 * 148.20.57.0 - 148.20.57.7</tt>,
 * 148.20.57.8 - 148.20.57.15</tt>,
 * 148.20.57.16 - 148.20.57.23</tt>, ...

このアドレス 8 個のブロックでは、前述の通り、コンピューターに割り当てられるのは 6 個のアドレスのみであり、先頭と末尾のアドレスはネットワーク通信の特定の用途のために予約されています. これらは以下のように表現することもできるでしょう:


 * 148.20.57.0/29</tt>,
 * 148.20.57.8/29</tt>,
 * 148.20.57.16/29</tt>, ...

これ以降、ブロック内の IP アドレス数は、16、32、64、128、256、…のように倍になっていきます.


 * A block of 16 would start 148.20.57.0/28</tt>.
 * A block of 32 would start 148.20.57.0/27</tt>.
 * A block of 64 would start 148.20.57.0/26</tt>.
 * A block of 128 would start 148.20.57.0/25</tt>.
 * A block of 256 would start 148.20.57.0/24</tt>.

So if you have an IP address and you want to block the range assigned how do you know which one to use? Let's say you have a problem with 148.20.57.34</tt>. You can lookup who has this IP address at http://arin.net/whois/?queryinput=148.20.57.34. Say this tells us that this IP address is assigned, along with a LOT of others in a /17</tt> range, to the Department of Defense. We certainly don't want to block a large block of the DoD! The rule of thumb is block as little as possible. Only block a range if there is a cluster of IP addresses giving a problem.

There's a calculator that is very useful for this: http://www.csgnetwork.com/ipinfocalc.html. Go to this site and enter  into the first set of blanks. Now select Network Prefix Length and enter  (this will give a block of 32 addresses) and click Calculate Network Information. This will show us a block of 32 IP addresses that include <tt>148.20.57.34</tt>. (The first - network - and the last - broadcast - addresses will be displayed along with the usable addresses in the range.) You can use this tool to test ranges to be sure they are what you want before entering the information to initiate the block.

Technical explanation
CIDR notation is written as the IP address, a slash, and the CIDR suffix (for example, the IPv4 "<tt>10.2.3.41/24</tt>" or IPv6 "<tt>a3:bc00::/24</tt>"). The CIDR suffix is the number of starting digits every IP address in the range have in common when written in binary.

For example: "<tt>10.10.1.32</tt>" is binary "<tt>00001010.00001010.00000001.00100000</tt>", so <tt>10.10.1.32/27</tt> will match the first 27 digits ("<tt> 00001010 . 00001010 . 00000001 . 001 00000</tt>"). The IP addresses <tt>10.10.1.32</tt>–<tt>10.10.1.63</tt>, when converted to binary, all have the same 27 first digits and will be blocked if <tt>10.10.1.32/27</tt> is blocked.

As the CIDR suffix increases, the block affects fewer IP addresses (see table of sample ranges). CIDR suffixes are not the same for IPv4 addresses as they are for IPv6 addresses; the same CIDR suffix in IPv4 blocks 296=79,228,162,514,264,337,593,543,950,336 times as many addresses in IPv6.

Calculating the CIDR suffix
You can use the table of sample ranges below to guess the range, use a computer script, or manually calculate the range.

Conversion to binary
The first step in manually calculating a range is to convert the first and last IP address to binary representation. (This assumes you're not using a computer script, which can probably calculate the range for you anyway.) An IP address is composed of four groups of eight ones and zeros. Each group represents a number from 0 to 255. To convert a number to binary, you can use a reference table or know the value of each binary digit:


 * <tt>Binary digit:  1   1   1   1   1   1   1   1</tt>
 * <tt>Value:       128  64  32  16   8   4   2   1</tt>

Proceeding from left to right, fill in <tt>1</tt> if the number is at least that value, and subtract that value (if it's not, fill in <tt>0</tt> and don't subtract). For example, to calculate 240: Thus, 240 is <tt>1111 0000</tt> because it can be represented as 128+64+32+16+0+0+0+0.
 * 1) 240 is at least 128, so place <tt>1</tt> and subtract 128.
 * 2) 112 (240-128) is at least 64, so place <tt>1</tt> and subtract 64.
 * 3) 48 (112-64) is at least 32, so place <tt>1</tt> and subtract 32.
 * 4) 16 (48-32) is at least 16, so place <tt>1</tt> and subtract 16.
 * 5) Since the remaining value is zero, all the remaining places are <tt>0</tt>.

Calculate range

 * 1) Place both IP addresses one atop the other, and count how many starting digits are exactly alike. This is the CIDR suffix.
 * 2) Double-check! Being off by one digit could extend your block by thousands of addresses.

The example below calculates the CIDR range between <tt>69.208.0.0</tt> and <tt>69.208.0.255</tt>. Note that this is a simple example; some groups of IP addresses do not so neatly fit CIDR suffixes, and need multiple different-sized blocks to block the exact range.


 * IP addresses:
 * <tt> 69.208.0.0</tt>
 * <tt> 69.208.0.255</tt>


 * Convert to binary:
 * <tt> 0100 0101.1101 0000.0000 0000.0000 0000</tt>
 * <tt> 0100 0101.1101 0000.0000 0000.1111 1111</tt>


 * Count identical first numbers:
 * <tt> 0100 0101.1101 0000.0000 0000.0000 0000</tt>
 * <tt> 0100 0101.1101 0000.0000 0000.1111 1111</tt>
 * <tt> |____________________________|</tt>
 * <tt>           24 digits</tt>


 * CIDR range:
 * <tt> 69.208.0.0/24</tt>

Table of sample ranges
The table below shows the IPv4 blocks each CIDR suffix affects. Note that MediaWiki only supports blocking CIDR suffixes 16–32 in IPv4 and 19 (formerly 64)–128 in IPv6 by default (subject to $wgBlockCIDRLimit). See /IPv6 for an IPv6 range table.

Default limitation
The default MediaWiki installation limits range blocks to no larger than /16 IPv4 rangeblocks (65,536 addresses). To block larger ranges $wgBlockCIDRLimit needs to be set accordingly in LocalSettings.php.