I’m confused.
From RFC 1918:
10.0.0.0 - 10.255.255.255 (10/8 prefix)
172.16.0.0 - 172.31.255.255 (172.16/12 prefix)
192.168.0.0 - 192.168.255.255 (192.168/16 prefix)
The prefix 172.16/12
seems strange to me for the range 16
–31
. Masks are supposed to use contiguous binary 1s.
A prefix of /12
for contiguous 1s should indicate:
11111111.11110000
Only 172.16
(10101100.00010000
) is masked by that range. All non-16
bits for oclets 17
–31
are not protected by the mask.
But, the binary mask to cover 172.16
– 172.31
is
11111111.00011111
List of 172.16
– 172.31
:
10101100.00010000
10101100.00011111
10101100.00011110
10101100.00011101
10101100.00011100
10101100.00011011
10101100.00011010
10101100.00011001
10101100.00011000
10101100.00010111
10101100.00010110
10101100.00010101
10101100.00010100
10101100.00010011
10101100.00010010
10101100.00010001
So, a prefix of 172.16/16
(11111111.11111111
) to mask all these makes more sense to me.
Is this RFC 1918 range of 172.16.0.0
– 172.31.255.255
not contiguous?
Or does a /12
prefix actually indicate:
11111111.00001111
But, that number range only goes to 15
, in which case we need:
11111111.00011111
And, that should be 172.16/13
, if it is not contiguous.
Someone please sort this out for me.