Senhores,
existe alguma forma que eu consiga verificar se um número de IP está entre um intervalos
IP: 192.168.1.0 - IP Binário: 11000000101010000000000100000000
Mask: 255.255.255.192 - Mask Binário: 11111111111111111111111111000000
IP Broad: 192.168.1.63 - Broad Binário: 11000000101010000000000100111111
Exemplo:
if("novo_IP" >= "192.168.1.0" && "novo_IP" >= "192.168.1.63")
System.out.println("Você está entrando em um range existente");
fazer a comparação que você mandou não dá não.
o que você pode fazer é quebrar o IP em 4 partes numéricas e ai fazer a validação em cada uma delas.
agora li melhor, voce quer validar se está no intervalo válido.
Se você tem definido que sua rede é 192.168.1.0, imagino que os IPs partiram dessa rede e o que mudaria seria apenas o último trecho, então você poderia fazer algo assim
String ip = "192.168.1.23";
String ultimaParte = ip.substring(ip.lastIndexOf(".")+1,ip.length());
int valor = Integer.parseInt(ultimaParte);
if(valor >= 0 && valor <= 63)
System.out.println("Você está entrando em um range existente");
Na realidade eu tenho que validar apenas se o novo Ranfe IP atribuido não está invadindo outro range em uso!
Obrigado pela ajuda!
A classe InetAddres trabalha com arrays de bytes para representar os IPs, talvez isso seja uma solução para você.
Dê uma olhada nisso!
Abs