如何在Java中显示和存储系统的公共IP地址

时间:2015-08-03 11:58:10

标签: java ip-address

我正在尝试显示和存储系统的公共IP地址。我使用以下代码进行相同的操作。即, 我导入了以下两个陈述:

 import java.net.InetAddress;
 import java.net.UnknownHostException;

  try {
        InetAddress iAddress = InetAddress.getLocalHost();            
        String currentIp = iAddress.getHostAddress();
        System.out.println("Current System's IP address is : " +currentIp); 
        } catch (UnknownHostException e) {
              System.out.println("Catch block executed. So IP address is not displayed");
            }

它将输出显示为:

 "Current System's IP address is : 192.168.1.5"

但是我的系统的公共IP地址(在https://www.whatismyip.com/中检查)是:

 115.107.244.81

那么我应该如何从.JAVA文件中获取并显示公共IP地址?

3 个答案:

答案 0 :(得分:1)

https://www.whatismyip.com - >这将显示外部世界已知的公共IP地址。如果重新启动系统,则可以看到不同的IP地址。尽管如果你有一个静态IP地址,网站将不会显示你的机器IP地址。

Java代码输出显示您的系统IP地址,它将用于内部通信,这是您的实际系统IP地址。你可以在shell /命令提示符下验证它。

答案 1 :(得分:0)

如果您使用来自局域网的网络,那么它始终以192开头。

  
    

尝试连接其他网络连接模式,它们将显示公共IP地址。     在Windows中命令提示符下获取ip地址的命令是ipconfig。

  

答案 2 :(得分:-1)

{{1}}