获取网络上其他设备可以用Java访问的IP地址

获取网络上其他设备可以用Java访问的IP地址,java,Java,我最近开始使用Java中的套接字,并用静态方法InetAddress.getLocalHost()返回的IP地址绑定服务器套接字 通过这种方式,我的客户端在大多数情况下都能够连接到服务器 然而,当我的服务器计算机有复杂的网络时,它就不起作用了。静态方法InetAddress.getLocalHost()返回了客户端计算机无法访问的地址 我想知道,如何获得通过Java连接到同一网络的其他设备可以访问的ip地址?InetAddress。getLocalHost()是映射到主机名的地址。它只说了这么多

我最近开始使用Java中的套接字,并用静态方法
InetAddress.getLocalHost()返回的IP地址绑定服务器套接字
通过这种方式,我的客户端在大多数情况下都能够连接到服务器

然而,当我的服务器计算机有复杂的网络时,它就不起作用了。静态方法
InetAddress.getLocalHost()
返回了客户端计算机无法访问的地址

我想知道,如何获得通过Java连接到同一网络的其他设备可以访问的ip地址?

InetAddress。getLocalHost()是映射到主机名的地址。它只说了这么多。根据主机和网络设置以及您的意图,您从中得到的可能是您想要的,也可能不是您想要的

套接字绑定到一个或多个网络接口,并将侦听这些接口。您可以通过调用获取所有接口的列表:

NetworkInterface.getNetworkInterfaces()
我相信您也可以绑定到地址“0.0.0.0”,即绑定到所有网络接口。我以前使用过这个,但我不知道基本套接字API是否支持它。

InetAddress.getLocalHost()是映射到主机名的地址。它只说了这么多。根据主机和网络设置以及您的意图,您从中得到的可能是您想要的,也可能不是您想要的

套接字绑定到一个或多个网络接口,并将侦听这些接口。您可以通过调用获取所有接口的列表:

NetworkInterface.getNetworkInterfaces()

我相信您也可以绑定到地址“0.0.0.0”,即绑定到所有网络接口。我以前使用过这个,但我不知道基本套接字API是否支持它。

InetAddress.getLocalHost()返回的地址是什么,为什么客户端无法访问它?这听起来更像是一个网络管理问题。因为计算机有许多接口,每个接口都可以与任何可能的地址绑定,所以我在某个地方读到了InetAddress.getLocalHost()在复杂的网络中不太可靠我建议您看看这里:并根据您的需要找到答案
InetAddress.getLocalHost()
返回的地址是什么?为什么客户端无法访问该地址?这听起来更像是一个网络管理问题。因为计算机有许多接口,每个接口都可以与任何可能的地址绑定,所以我在某个地方读到InetAddress.getLocalHost()在复杂的网络中不太可靠。我建议您看看这里:并根据您的需要找到答案