import java.net.InetAddress;
import java.net.UnknownHostException;
public class Test {
public static void main(String[] args) {
boolean result = new Test().isValidRange("192.168.4.1", "192.168.45.112", "192.168.42.25");
System.out.println(result);
}
public boolean isValidRange(String ipStart, String ipEnd, String ipToCheck) {
try {
long ipLo = ipTolong(InetAddress.getByName(ipStart));
long ipHi = ipTolong(InetAddress.getByName(ipEnd));
long ipcheck = ipTolong(InetAddress.getByName(ipToCheck));
return (ipcheck > ipLo && ipcheck < ipHi);
} catch (UnknownHostException e) {
e.printStackTrace();
return false;
}
}
public long ipTolong(InetAddress ip) {
long result = 0;
byte[] ipAdds = ip.getAddress();
for (byte b : ipAdds) {
result <<= 8;
result |= b & 0xff;
}
return result;
}
}
判断某个IP是否在IP段内
最新推荐文章于 2022-11-30 17:22:42 发布