Как проверить, принадлежит ли IP-адрес определенной сети / сетевой маске в Java?

Apache Commons Net имеет org.apache.commons.net.util.SubnetUtils, который, кажется, удовлетворяет java-api ваши потребности. Похоже, вы core-java делаете что-то вроде этого:

SubnetInfo subnet = (new SubnetUtils("10.10.10.0", "255.255.255.128")).getInfo();
boolean test = subnet.isInRange("10.10.10.10");

Обратите openjdk внимание, как указывает carson, что openjdk в Apache Commons Net есть oraclejdk a bug, который в некоторых случаях networks не позволяет дать правильный java-libraries ответ. Карсон предлагает oraclejdk использовать версию SVN, чтобы java-api избежать этой ошибки.

java

networking

ip

2022-10-01T13:52:06+00:00
Вопросы с похожей тематикой, как у вопроса:

Как проверить, принадлежит ли IP-адрес определенной сети / сетевой маске в Java?