`
dwangel
  • 浏览: 266444 次
社区版块
存档分类
最新评论

Java 获取一个机器的本地地址

阅读更多
public class IpDetector {
  public static String getIp() {
    try {
      Enumeration<NetworkInterface> em = NetworkInterface.getNetworkInterfaces();
      for(;em.hasMoreElements();) {
        NetworkInterface ni = em.nextElement();
        String nicName = ni.getName();
        if (nicName.startsWith("virbr")
            || nicName.startsWith("vboxnet")
            || nicName.startsWith("docker")
            ) {
          continue;
        }
        Enumeration<InetAddress> emAddr = ni.getInetAddresses();
        for(;emAddr.hasMoreElements();) {
          InetAddress addr = emAddr.nextElement();
          if (addr instanceof Inet4Address) {
            String addrStr = addr.getHostAddress();
            if (addrStr.startsWith("127.")) {
              continue;
            }
//            System.out.println("Address is "+addr.getHostAddress());
            return addrStr;
          }
        }
        System.out.println();
      }
    } catch (SocketException e) {
      e.printStackTrace();

    }
    return null;
  }

  public static void main(String[] args) {
    String ip = getIp();
    System.out.println("IP is "+ip);
  }
}
分享到:
评论

相关推荐

    JAVA在Windows平台上生成机器码

    为了在Windows平台上生成机器码,Java提供了一个工具,即Java Native Interface (JNI)。JNI允许Java代码调用C/C++库,同时也允许C/C++代码调用Java方法。通过JNI,我们可以编写特定于平台的本地方法,这些方法会被...

    纯JAVA实现修改本地IP(swing界面版)

    在本文中,我们将深入探讨如何使用Java编程语言创建一个Swing界面应用,该应用能够修改本地计算机的IP地址。这个程序允许用户存储多个预设IP地址,并方便地在它们之间切换,同时也支持删除不需要的IP配置。我们将会...

    java 通过jni接口获取当前机器硬盘ID(序列号)

    Java 通过JNI(Java Native Interface)接口获取当前机器硬盘ID,即序列号,是一种混合编程技术,它允许Java代码调用本地系统库,如DLL(动态链接库)来执行特定的系统级任务,这些任务在Java标准库中可能无法直接...

    java实现获取用户的MAC地址

    MAC地址是硬件级别的唯一标识,它是一个48位的数字,通常以冒号或破折号分隔的12个16进制数表示,如`00:11:22:33:44:55`。以下将介绍两种不同的Java方法来获取MAC地址。 ### 方法一:基于IP地址获取MAC 这种方法...

    基于Java实现获取本地IP地址和主机名

    在Java编程中,获取本地IP地址和主机名是一个常见的需求。本文将详细介绍基于Java实现获取本地IP地址和主机名的两种方式,并对每种方式进行了详细的解释和示例代码。 方式一:通过java.net.InetAddress类获取 通过...

    Java怎么获取多网卡本地ip

    - `InetAddress.getLocalHost()`:此方法用于获取与当前机器相关的第一个网络接口的IP地址。请注意,这并不总是返回多网卡环境中的第一个IP,而是根据操作系统和网络配置返回一个默认的IP。 - `InetAddress....

    java 获取分布式唯一ID.雪花ID

    1. `IdUtils.simpleUUID()`:这通常会返回一个基于`java.util.UUID`生成的16进制字符串形式的UUID,长度为32个字符,用于生成字符串唯一ID。UUID是一种全球唯一的标识符,基于时间戳、随机数和MAC地址生成,但不适用...

    java opencv 调用摄像头实现拍照及本地保存 支持上传FTP 路径配置

    2. **OpenCV**: OpenCV(开源计算机视觉库)是一个强大的计算机视觉和机器学习库,支持多种编程语言,包括Java。在本项目中,OpenCV被用来获取摄像头的实时视频流,捕获帧,并将其转换为图片。OpenCV还提供了一系列...

    java读取服务器硬件信息(windowx+linux+Mac OS)

    在Windows环境下,Java可以通过Java Native Interface (JNI) 来调用本地API,如Kernel32.dll中的函数,获取硬件信息,例如CPU型号、内存大小等。例如,可以使用WMI(Windows Management Instrumentation)接口来查询...

    将Java应用程序本地编译为EXE的几种方法

    ### 将Java应用程序本地编译为EXE的几种方法 在IT行业中,将Java应用程序转换为本地可执行文件(EXE)的需求时有...对于希望简化部署流程或提升应用性能的开发者而言,将Java应用本地编译为EXE是一个值得考虑的选择。

    java 通过jni技术实现获取linux的硬盘序列号.pdf

    综上所述,通过JNI技术实现Java获取Linux硬盘序列号的流程包括编写Java接口,生成头文件,编写和编译C代码,生成共享对象文件,并最终将文件放置到指定目录。这个过程涉及到跨语言编程、操作系统底层调用和动态链接...

    利用Java如何获取IP与机器名方法示例

    这是一个获取运行代码的计算机的IP地址和主机名的有效方式。如下所示: ```java import java.net.InetAddress; import java.net.UnknownHostException; public class Test01 { public static void main...

    java使用OpenCV从视频文件中获取帧

    "java使用OpenCV从视频文件...Java使用OpenCV从视频文件中获取帧是一个非常有用的技术,它可以应用于很多领域,例如视频监控、图像识别、视频编辑等。借助于Java和OpenCV,我们可以轻松地实现视频处理和图像处理任务。

    Java获得本机IP自动上传ftp

    在Java编程中,实现“Java获得本机IP自动上传ftp”的功能涉及到两个主要部分:获取本机IP地址和使用FTP(File Transfer Protocol)协议进行文件上传。以下将详细阐述这两个部分的知识点。 首先,让我们来看看如何...

    获取机器的MAC(网卡)地址

    以下是一个简单的Java代码示例,展示如何获取本地主机的所有网络接口及其对应的MAC地址: ```java import java.net.NetworkInterface; import java.net.SocketException; import java.util.Enumeration; public ...

    java 获取mac地址的两种方法(推荐)

    MAC地址是一个硬件地址,标识了网络设备在物理层的身份。本文将介绍两种在Java中获取MAC地址的方法。 首先,第一种方法是通过`InetAddress`和`NetworkInterface`类来获取本机的MAC地址。这种方法的步骤如下: 1. ...

    USB摄像头java实现

    2. **OpenIMAJ**:OpenIMAJ是另一个流行的Java库,特别适用于计算机视觉和机器学习任务。它包含一个摄像头捕捉工具包,可以方便地读取USB摄像头的视频流,并进行图像处理操作。使用OpenIMAJ,开发者可以创建实时的...

    java获取本类运行机器的Mac

    windows下获取本地连接的mac Linux 获取eth0 的mac 类中有方法可以获取服务器的真实Ip地址,Linux的不是127.0.0.1

    opencv-java480.dll windows 64 opencv-java480.jar下载

    OpenCV(开源计算机视觉库)是一个强大的跨平台计算机视觉库,它包含了大量的图像处理和计算机视觉算法,广泛应用于机器学习、图像分析、人脸识别等领域。在Java环境下,OpenCV提供了`opencv_java`接口,使得Java...

    java中获取当前服务器的Ip地址的方法

    在Java编程中,获取当前服务器的IP地址是一个常见的需求,特别是在网络编程和服务器应用程序中。以下将详细讲解如何在Java中获取本地或服务器的IP地址。 首先,我们要明白`localhost`是一个特殊的IP地址,通常表示...

Global site tag (gtag.js) - Google Analytics