java示例代码_用Java确定Internet网络接口

     2022-04-08     154

关键词:

java示例代码_用Java确定Internet网络接口

// iterate over the network interfaces known to java
Enumeration<NetworkInterface> interfaces = NetworkInterface.getNetworkInterfaces();
OUTER : for (NetworkInterface interface_ : Collections.list(interfaces)) 
  // we shouldn't care about loopback addresses
  if (interface_.isLoopback())
    continue;

  // if you don't expect the interface to be up you can skip this
  // though it would question the usability of the rest of the code
  if (!interface_.isUp())
    continue;

  // iterate over the addresses associated with the interface
  Enumeration<InetAddress> addresses = interface_.getInetAddresses();
  for (InetAddress address : Collections.list(addresses)) 
    // look only for ipv4 addresses
    if (address instanceof Inet6Address)
      continue;

    // use a timeout big enough for your needs
    if (!address.isReachable(3000))
      continue;

    // java 7's try-with-resources statement, so that
    // we close the socket immediately after use
    try (SocketChannel socket = SocketChannel.open()) 
      // again, use a big enough timeout
      socket.socket().setSoTimeout(3000);

      // bind the socket to your local interface
      socket.bind(new InetSocketAddress(address, 8080));

      // try to connect to *somewhere*
      socket.connect(new InetSocketAddress("google.com", 80));
     catch (IOException ex) 
      ex.printStackTrace();
      continue;
    

    System.out.format("ni: %s, ia: %s\n", interface_, address);

    // stops at the first *working* solution
    break OUTER;
  

java示例代码_java是如何实现的。网URL打开连接?它用插座吗

java示例代码_java是如何实现的。网URL打开连接?它用插座吗 查看详情

java示例代码_使用Java直接从Internet读取文本文件

java示例代码_使用Java直接从Internet读取文本文件 查看详情

java示例代码_使用Java从Internet下载并保存文件

java示例代码_使用Java从Internet下载并保存文件 查看详情

java示例代码_从internet快捷方式获取目标路径

java示例代码_从internet快捷方式获取目标路径 查看详情

java示例代码_使用java从internet下载文件:如何进行身份验证

java示例代码_使用java从internet下载文件:如何进行身份验证 查看详情

java示例代码_读取并计算Internet上文件的哈希值

java示例代码_读取并计算Internet上文件的哈希值 查看详情

java示例代码_在ImageView中放置来自Internet的图片

java示例代码_在ImageView中放置来自Internet的图片 查看详情

java示例代码_运行Lucene。网

java示例代码_运行Lucene。网 查看详情

java示例代码_确定Windows Java安装位置

java示例代码_确定Windows Java安装位置 查看详情

java示例代码_确定GraphicsEnvironment是否存在

java示例代码_确定GraphicsEnvironment是否存在 查看详情

java示例代码_不确定如何存储数据

java示例代码_不确定如何存储数据 查看详情

java示例代码_[Java]如何确定文件是否正在使用

java示例代码_[Java]如何确定文件是否正在使用 查看详情

java示例代码_在Android应用程序中获取所有具有internet权限的应用程序

java示例代码_在Android应用程序中获取所有具有internet权限的应用程序 查看详情

java示例代码_确定java中URL的请求类型

java示例代码_确定java中URL的请求类型 查看详情

java示例代码_在Java中确定集合中的类

java示例代码_在Java中确定集合中的类 查看详情

java示例代码_确定Java中泛型字段的类型

java示例代码_确定Java中泛型字段的类型 查看详情

java示例代码_确定是否单击了菜单项

java示例代码_确定是否单击了菜单项 查看详情

java示例代码_确定实体是否具有NamedQuery

java示例代码_确定实体是否具有NamedQuery 查看详情