首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何查找cidr范围的最后cidr地址

如何查找cidr范围的最后cidr地址
EN

Ask Ubuntu用户
提问于 2022-08-01 07:20:10
回答 1查看 327关注 0票数 1

希望你做得很好,我有一个CIDR范围10.88.0.0/24

因此,对于这个CIDR范围,我想计算最后一个CIDR地址--我知道有一些在线工具可以这样做,但是我想知道如何使用任何编程语言来计算最后一个CIDR地址。

谢谢,

EN

回答 1

Ask Ubuntu用户

发布于 2022-08-01 09:02:30

我将用你的例子展示: 10.88.0.0/24

要手动执行,首先将所有内容转换为位表示法:

代码语言:javascript
复制
10.88.0.0 = 00001010.01011000.00000000.00000000

接下来搜索第24位,并将它的所有权利转换为1:

代码语言:javascript
复制
00001010.01011000.00000000.11111111

回到十进制

代码语言:javascript
复制
10.88.0.255

最高可能的IP是少一个: 10.88.0.254

在程序上需要一些二进制操作:

代码语言:javascript
复制
11111111.11111111.11111111.11111111 >> 24 (right shift 24times)
00000000.00000000.00000000.11111111
代码语言:javascript
复制
00001010.01011000.00000000.00000000 + (or)
00000000.00000000.00000000.11111111
-----------------------------------
00001010.01011000.00000000.11111111
代码语言:javascript
复制
00001010.01011000.00000000.11111111 -1
-----------------------------------
00001010.01011000.00000000.11111110 = 10.88.0.254

现在,您可能会看到,为什么使用带有网络掩码的符号: 10.88.0.0/255.255.255.0

倒置网罩并执行“或”。

代码语言:javascript
复制
010.088.000.000 + (or)
000.000.000.255
---------------
010.088.000.255 -1 (minus one)
---------------
010.088.000.254

为了得到最低的:

代码语言:javascript
复制
010.088.000.000 * (and)
255.255.255.000
---------------
010.088.000.000 +1 (plus one)
---------------
010.088.000.001
票数 1
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/1421379

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档