局域网内拦截外来的IP地址

13年前

IP地址转换成Long类型的算法(一个IP,是一个32位无符号的二进制数。故用long的低32表示无符号32位二进制数)

public long getIP(InetAddress ip) {

      byte[] b = ip.getAddress();

      long l = b[0] << 24L & 0xff000000L | b[1] << 16L & 0xff0000L

      | b[2] << 8L & 0xff00 | b[3] << 0L & 0xff;      

 return l;

}

         long l1 = getIP(InetAddress.getByName(ip1)); 

         通过这样,比较IP地址是否在相应的范围内。