Java 程序和 ipconfig 显示不同的 IP 地址

Java program and ipconfig shows different IP address

最近 ipconfig 显示的我系统的 IP 地址已从 10.2.200.76 更改为 10.2.200.75 但是下面java代码

返回的IP地址
InetAddress.getLocalHost().getHostAddress()

仍然是 10.2.200.76。 我的问题是,"how is that possible?" 我推测 DHCP 或 Java 有问题。


系统详细信息- OS : Windows 7, Java : 甲骨文 JDK 7, 以太网卡:Intel(R) 82579LM 千兆

更新 1: Java代码

public static void main(String[] args) {
    try {
        System.out.println("IP Address : " + InetAddress.getLocalHost().getHostAddress());
    } catch (Exception e) {
        e.printStackTrace();
    }
}

java 代码的输出> IP 地址:10.2.200.76

Ipconfig 输出: Output of ipconfig

你能不能枚举所有的IP地址,看看你的旧IP还在outout里。也尝试重新启动机器并在下面检查again.Refer。

InetAddress.getLocalHost().getHostAddress() is returning 127.0.1.1

http://docs.oracle.com/javase/6/docs/api/java/net/NetworkInterface.html#getInetAddresses()

不知何故位于 %SystemRoot%\System32\drivers\etchost 文件有如下条目

localhost 10.2.200.76

而且我认为 java 在我使用

时选择了这个
InetAddress.getLocalHost().getHostAddress()

所以,我将本地主机条目更改为

localhost 127.0.0.1

现在 ipconfig 和上面的 java api 都返回相同的 IP 地址 10.2.200.75.