[英]Java and IP - Subnet parsing
Is there an easy way in java to get the range of an IP from the format of java中有一种简单的方法可以从以下格式获取IP范围
175.25.0.0/16 175.25.0.0/16
to somewhat like 175.25.0.0-175.25.255.255 到175.25.0.0-175.25.255.255
public String getHostAddressRange(String netmaskNumeric) { public String getHostAddressRange(String netmaskNumeric){
int numberOfBits; for (numberOfBits = 0; numberOfBits < 32; numberOfBits++) { if ((netmaskNumeric << numberOfBits) == 0) break; } Integer numberOfIPs = 0; for (int n = 0; n < (32 - numberOfBits); n++) { numberOfIPs = numberOfIPs << 1; numberOfIPs = numberOfIPs | 0x01; } Integer baseIP = baseIPnumeric & netmaskNumeric; String firstIP = convertNumericIpToSymbolic(baseIP + 1); String lastIP = convertNumericIpToSymbolic(baseIP + numberOfIPs - 1); return firstIP + " - " + lastIP; }
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.