/**
* IP的相关计算
* @author zengchaowang
* @version 1.0
*
*/
public class IpCaculate {
/**
* 根据掩码位数计算掩码
* @param maskIndex 掩码位
* @return 子网掩码
*/
public static String getNetMask(String maskIndex) {
StringBuilder mask = new StringBuilder();
Integer inetMask = 0;
try {
inetMask = Integer.parseInt(maskIndex);
} catch (NumberFormatException e) {
System.out.println(e.getMessage());
return null;
}
if (inetMask > 32) {
return null;
}
// 子网掩码为1占了几个字节
int num1 = inetMask / 8;
// 子网掩码的补位位数
int num2 = inetMask % 8;
int array[] = new int[4];
for (int i = 0; i < num1; i++) {
array[i] = 255;
}
for (int i = num1; i < 4; i++) {
array[i] = 0;
}
for (int i = 0; i < num2; num2--) {
array[num1] += 1 << 8 - num2;
}
for (int i = 0; i < 4; i++) {
if (i == 3) {
mask.append(array
Java根据网段计算子网掩码,起始IP,结束IP
最新推荐文章于 2024-09-02 15:44:40 发布
本文介绍了如何使用Java根据IP网段计算子网掩码、起始IP和结束IP。内容涉及网段内IP数量的计算,以及起始IP和结束IP的确定方法,包括对0和255在网络和广播地址中的特殊含义。
摘要由CSDN通过智能技术生成