<分区>
如何在 java 中将 cidr 转换为 ip 范围?我使用了 apache SubnetUtils,但它忽略了范围的第一个和最后一个值。
例如 对于 CIDR 192.168.1.0/16,输出应该是 192.168.0.0 到 192.168.255.255。 但我得到 192.168.0.1 到 192.168.255.254。
请帮忙
<分区>
如何在 java 中将 cidr 转换为 ip 范围?我使用了 apache SubnetUtils,但它忽略了范围的第一个和最后一个值。
例如 对于 CIDR 192.168.1.0/16,输出应该是 192.168.0.0 到 192.168.255.255。 但我得到 192.168.0.1 到 192.168.255.254。
请帮忙
最佳答案
默认情况下,SubnetUtils
类将第零个和最后一个地址排除在可用“主机”地址范围之外,因为它们(或在第零个地址的情况下曾经)用作网络广播地址。
您需要在 SubnetUtils
实例上调用 .setInclusiveHostCount(true)
方法,告诉它在返回的范围内包含这些地址。
关于java - 在java中将CIDR表示法转换为IP范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24483645/