Socket.getRemoteSocketAddress()不返回客户端的私有IP地址

时间:2012-10-16 15:30:48

标签: java

我有一个客户端服务器程序,其中客户端在具有两个IP地址的pc上运行(公共IP地址通过互联网和私人IP地址可见)。我的服务器在不同的网络上运行。当我使用套接字连接客户端和服务器并在服务器端使用java的socket.getRemoteSocketAddress方法时,我得到客户端连接的公共IP地址。即使我使用InetAddress.getByName(socket.getInetAddress()。getHostName),我仍然可以获得公共地址。

问题是我需要打印私人地址。你能告诉我怎样才能实现这个目标?

1 个答案:

答案 0 :(得分:0)

只有客户知道这一点。无法从服务器检索内部IP地址。客户端必须确定其本地IP地址,然后将该信息发送到服务器。