Verificar se um Ip está dentro de um intervalo

4 respostas
A

Olá

Tenho uma string que representa um ip, por exemplo 10.19.20.5.

Como faço para saber se esse IP está dentro de um intervalo, digamos entre 10.29.20.0 e 10.19.20.255?

4 Respostas

sergiotaborda

agasea:
Olá

Tenho uma string que representa um ip, por exemplo 10.19.20.5.

Como faço para saber se esse IP está dentro de um intervalo, digamos entre 10.29.20.0 e 10.19.20.255?

O IP é na realidade um numero e não uma String. Isso que escreveu ai é uma forma padrão
de formatar o numero para ser inteligivel por humanos.

A opção é criar um classe IP que implemente Comparable.
Com isso vc saberá comparar dois IP. Com comparações sucessivas vc pode saber se está no intervalo.

A

Então como transformar a representação 10.19.20.5 em número?

Por que se transformar em número é só comparar, certo?

T

Use a classe java.net.InetAddress para transformar seu IP (“123.45.67.89”) em um array de bytes, usando o método getAddress().

Então, compare os arrays de bytes.

A

Ok, farei isso.

Criado 13 de junho de 2008
Ultima resposta 13 de jun. de 2008
Respostas 4
Participantes 3