如何在Java中找到所有本地绑定的IP地址?
我想要所有本地绑定的 IP 地址,基本上是 java.net.InetAddress 数组。我知道我可以使用主机名调用 InetAddress.getAllByName(),但我想知道是否有一种更直接的方法,不涉及 DNS 和/或主机名的知识。
I would like to have all locally bound IP addresses, basically an array of java.net.InetAddress. I know I can call InetAddress.getAllByName() with the host name, but I was wondering if there is a more direct way that doesn't involve DNS and/or knowledge of the host name.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
java.net.NetworkInterface.getNetworkInterfaces()
将为您提供可用网络接口的枚举。然后,您可以在每个 NetworkInterface 上调用 getInetAddresses() 来获取绑定到该接口的地址。java.net.NetworkInterface.getNetworkInterfaces()
will give you an enumeration of the available network interfaces. You can then invokegetInetAddresses()
on each NetworkInterface to get the addresses bound to this interface.