gpt4 book ai didi

Java本地IP范围检测

转载 作者:行者123 更新时间:2023-12-02 07:37:16 25 4
gpt4 key购买 nike

我正在开发一个基于 LAN 的软件,为此我需要使用 Java 来检测网络中系统所在的范围。该功能要求类似于Windows实用软件Netscan中的“检测本地IP范围”。

最佳答案

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

InetAddress localHost = Inet4Address.getLocalHost();
NetworkInterface ni = NetworkInterface.getByInetAddress(localHost);
InterfaceAddress ia = ni.getInterfaceAddresses().get(0);
short mask = ia.getNetworkPrefixLength();

这将为您提供一个值为 1-32(可能是 24)的 short 原语。然后您可以使用

byte[] b = ia.getAddress().getAddress();

这将为您提供一个byte[],您可以根据子网掩码对其进行掩码,以某种可用格式提供本地地址范围。

<小时/>

或者,如果您想要本地子网上的 Activity 主机列表,请使用 JPCap 进行 arp 扫描。这是我会使用的方法。

关于Java本地IP范围检测,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12035916/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com