怎么获取已连接了的远程主机IP地址?

kingok128 2006-03-24 10:19:46
有个服务器的服务线程启动后等待客户机的连接
ServerSocket serverSocket =new ServerSocket(PORT);
Socket client = serverSocket.accept();
当获取客户端的连接后,怎样得到客户端的IP?
要说明的一点是,这个客户处于内网当中,服务器位于公网
这个客户端可以通过流告诉服务器自己的IP
但这个IP是内网IP
服务器如何知道这个客户端的公网IP(和端口)呢?
即被网关路由器NAT之后的公网IP(和端口)呢?
...全文
227 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
kingok128 2006-04-06
  • 打赏
  • 举报
回复
通过Socket的一个成员函数可以解决了。呵呵。
查到了。
kingok128 2006-03-26
  • 打赏
  • 举报
回复
网关肯定不预先知道
就是要连接后才想办法解决
意思就是怎么判定连接了的客户端的IP

zx2002027 2006-03-26
  • 打赏
  • 举报
回复
这应该要知道客户端的网关
TinyJimmy 2006-03-26
  • 打赏
  • 举报
回复
这样不可能知道的,网络层已经做了转换,应用层不可能恢复的。联通后用你的应用来传吧

62,629

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧