Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/333.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java本地IP范围检测_Java_Ip_Range_Lan - Fatal编程技术网

Java本地IP范围检测

Java本地IP范围检测,java,ip,range,lan,Java,Ip,Range,Lan,我正在开发一个基于局域网的软件,为此我需要使用java检测网络中系统的范围。该功能要求类似于windows实用软件netscan中的“检测本地IP范围”。非常感谢您在这方面提供的任何帮助。您可以尝试使用“ping” 这篇文章有一些关于ping的代码 如果需要实际的本地子网IP范围,而不是本地子网中的活动IP地址列表,可以使用以下代码获取子网掩码大小: InetAddress localHost = Inet4Address.getLocalHost(); NetworkInterface ni

我正在开发一个基于局域网的软件,为此我需要使用java检测网络中系统的范围。该功能要求类似于windows实用软件netscan中的“检测本地IP范围”。非常感谢您在这方面提供的任何帮助。

您可以尝试使用“ping”

这篇文章有一些关于ping的代码


如果需要实际的本地子网IP范围,而不是本地子网中的活动IP地址列表,可以使用以下代码获取子网掩码大小:

InetAddress localHost = Inet4Address.getLocalHost();
NetworkInterface ni = NetworkInterface.getByInetAddress(localHost);
InterfaceAddress ia = ni.getInterfaceAddresses().get(0);
short mask = ia.getNetworkPrefixLength();
这将为您提供一个
short
原语,其值为1-32,可能为24。然后你可以用

byte[] b = ia.getAddress().getAddress();
这将为您提供一个
字节[]
,您将对该字节进行子网掩码
掩码
,以某种可用格式为您提供本地地址范围


或者,如果您想要本地子网上的活动主机列表,我将使用arp扫描