CIDR的计算方法如下:
确定IP地址的网络前缀和主机标识符。
确定网络前缀的长度,即用多少个二进制位表示网络前缀。
将网络前缀转换为二进制,并在后面添加主机标识符的二进制表示。
如果网络前缀的长度不是8的倍数,则需要在二进制表示中补齐位数,使其成为8的倍数。
将二进制表示转换为十进制表示,即得到CIDR表示法中斜线后面的数字。
例如,对于IP地址192.168.1.0,假设要将其划分为一个/24的网络,则CIDR表示法为192.168.1.0/24,计算过程如下:
网络前缀为192.168.1,主机标识符为0。
网络前缀长度为24位。
网络前缀的二进制表示为11000000.10101000.00000001,主机标识符的二进制表示为00000000。
二进制表示为11000000.10101000.00000001.00000000。
十进制表示为192.168.1.0/24。
11000000.10101000.00000001.00000000
前面24位前缀,后边主机号为0。表示方法 192.168.1.0/24,子网个数256个。
11000000.10101000.00000001.00000000
前面22位前缀,后边主机号为0。表示方法 192.168.1.0/22,子网个数4*256=1024个。
11000000.10101000.00000000.00000000
前面16位前缀,后边主机号为0。表示方法 192.168.0.0/16,子网个数256*256=65536个。
上面计算子网个数,为斜体字代表有多少种可能转化为十进制。