Calculer si une adresse IP est dans une plage spécifiée en Java
Je veux être en mesure de retourner true/false en fonction d'une adresse IP dans la gamme de deux autres adresses ip.
Par exemple:
ip 192.200.3.0
range from 192.200.0.0
range to 192.255.0.0
devrait aboutir à true.
D'autres exemples:
assert 192.200.1.0 == true
assert 192.199.1.1 == false
assert 197.200.1.0 == false
Vous devez vous connecter pour publier un commentaire.
La meilleure façon de vérifier la gamme est probablement pour convertir les adresses IP des nombres entiers de 32 bits et ensuite il suffit de comparer les nombres entiers.
Plutôt que
InetAddress.getByName()
, vous voudrez peut-être chercher à la Goyave de la bibliothèque qui a un InetAddresses de la classe helper qui évite la possibilité de recherches DNS.