首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >izpack中的非本地IP地址

izpack中的非本地IP地址
EN

Stack Overflow用户
提问于 2015-08-21 21:25:57
回答 1查看 125关注 0票数 1

我正在尝试在我的izpack安装程序中获取IP地址。我使用了${IP_ADDRESS}变量,但我得到的是本地地址"127.0.0.1“,而不是计算机的公网IP。这是预期的功能吗?这对我来说似乎很没用,但我肯定遗漏了什么。如何获取公网IP?

izpack: v5.0.3 java: 1.7.0_79 Ubuntu: 15.04

谢谢。

EN

回答 1

Stack Overflow用户

发布于 2015-08-24 14:57:12

看起来,${IP_ADDRESS}被认为是(来自IzPack installer源代码的一部分):

代码语言:javascript
运行
复制
InetAddress localHost = InetAddress.getLocalHost();
IPAddress = localHost.getHostAddress();
hostname = localHost.getHostName();

所以,问题是,InetAddress.getLocalHost()在大多数情况下会返回本地主机地址。

如果您需要确定您的公共ip,这并不像只获取您本地主机的地址那么简单。您必须遍历您的network interfaces,获取它们的地址,并确定您需要哪个地址。如果您不需要在业务代码中执行此操作,但您需要在安装程序中执行此操作,则这是相当常见的情况。

据我所知,可以制作自己的jar文件并在您的安装程序中使用它,也许您应该尝试制作自己的ligic,它决定了这个公共ip并从您的IzPack安装程序调用。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32141502

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档