[OT] CIDR Mask calculation
Dave Ihnat
dihnat at dminet.com
Thu Oct 12 16:52:11 UTC 2006
On Thu, Oct 12, 2006 at 10:38:05AM -0600, Ashley M. Kirchner wrote:
> ... I'm trying to figure out the CIDR mask or bits for a particular
> network. Specifically: 219.128.0.0 - 219.137.255.255
The easiest way to do this is to convert to binary and look for the
first "variant bit"--the first bit that changes in the two address
ranges. This marks the change from the network and device fields
of the subnet.
If you don't do decimal<>binary conversions in your head, a simple way
to do this to use 'dc', setting the output to base 2. For instance:
$ dc
2
o
128
p
10000000
255
p
11111111
Anyway, the addresses you gave, converted to binary, are:
219.128.0.0 : 11011011.10000000.00000000.00000000
219.137.255.255: 11011011.10001001.11111111.11111111
^
The last bit that is invariant between the two is marked with the caret;
converting back to a decimal dotted-quad (you can use 'dc' again--to set
the input to binary, simply change the 'o' operand in the above example
to an 'i', then input the binary value and print.)
Mask
255.240.0.0 : 11111111.11110000.00000000.00000000
or, in conventional notation, 219.128.0.0/12.
Cheers,
--
Dave Ihnat
President, DMINET Consulting, Inc.
dihnat at dminet.com
More information about the fedora-list
mailing list