我们当前的系统通过套接字接收连接,我们需要确定连接客户端的私有IP.目前,我们可以轻松访问公共IP connectingSocket.getInetAddress(),但获取私人地址的最佳方式是什么?
谢谢!
简单的答案是直截了当的:你做不到.
更复杂的答案:如果您可以控制客户端连接到Java套接字的方式(即强制它们通过PROXY使用HTTP),您可以让代理将该信息添加到特殊标头中.或者,如果使用专有协议,则可以在协议本身上对私有IP进行编码.但是,没有获得该信息的一般方法.NAT只会使私有IP地址消失.