如何使用Java获取计算机的局域网IP地址?我想要与路由器和其他网络连接的IP地址。
我尝试了以下代码:
Socket s = new Socket("www.google.com", 80);
String ip = s.getLocalAddress().getHostAddress();
s.close();
这似乎在某些情况下有效,但有时会返回环回地址或完全不同的内容。此外,它需要互联网连接。
有人有更准确的方法吗?
编辑:认为在这里提问比在评论中更好。
如果您有许多接口怎么办?例如,一个用于电缆,一个用于wifi,一个用于虚拟盒子等。是否不可能实际上看到哪一个连接到网络?