希望你做得很好,我有一个CIDR范围10.88.0.0/24
因此,对于这个CIDR范围,我想计算最后一个CIDR地址--我知道有一些在线工具可以这样做,但是我想知道如何使用任何编程语言来计算最后一个CIDR地址。
谢谢,
发布于 2022-08-01 09:02:30
我将用你的例子展示: 10.88.0.0/24
要手动执行,首先将所有内容转换为位表示法:
10.88.0.0 = 00001010.01011000.00000000.00000000接下来搜索第24位,并将它的所有权利转换为1:
00001010.01011000.00000000.11111111回到十进制
10.88.0.255最高可能的IP是少一个: 10.88.0.254
在程序上需要一些二进制操作:
11111111.11111111.11111111.11111111 >> 24 (right shift 24times)
00000000.00000000.00000000.1111111100001010.01011000.00000000.00000000 + (or)
00000000.00000000.00000000.11111111
-----------------------------------
00001010.01011000.00000000.1111111100001010.01011000.00000000.11111111 -1
-----------------------------------
00001010.01011000.00000000.11111110 = 10.88.0.254现在,您可能会看到,为什么使用带有网络掩码的符号: 10.88.0.0/255.255.255.0
倒置网罩并执行“或”。
010.088.000.000 + (or)
000.000.000.255
---------------
010.088.000.255 -1 (minus one)
---------------
010.088.000.254为了得到最低的:
010.088.000.000 * (and)
255.255.255.000
---------------
010.088.000.000 +1 (plus one)
---------------
010.088.000.001https://askubuntu.com/questions/1421379
复制相似问题