您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

如何使用Java获取在同一网络(子网)中连接的IP的列表

如何使用Java获取在同一网络(子网)中连接的IP的列表

当网络上的主机对ICMP软件包做出响应(ping)(> JDK 5)时,该方法应该起作用:

public void checkHosts(String subnet){
   int timeout=1000;
   for (int i=1;i<255;i++){
       String host=subnet + "." + i;
       if (InetAddress.getByName(host).isReachable(timeout)){
           System.out.println(host + " is reachable");
       }
   }
}

像这样调用子网(192.168.0.1-254)的方法

checkHosts("192.168.0");

没有测试它,但应该像这样工作。显然,这仅检查ip地址的最后一个字节中的254个主机…

校验:

http://download-llnw.oracle.com/javase/6/docs/api/java/net/InetAddress.html#isReachable%28int%29 http://blog.taragana.com/index.php/archive/how做icmp在Java jdk-15和以上/

希望有帮助

java 2022/1/1 18:17:39 有609人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶