Apache Mina:如何从连接的客户端获取IP

时间:2011-08-03 20:31:17

标签: java apache-mina

有人能告诉我如何从连接的客户端获取IP地址吗?

到目前为止我找到了

session.getRemoteAddress().toString()

并返回类似

的内容
  

/192.168.1.100:49879

这样可以吗?我可以做一些只能返回192.168.1.100的东西吗?

当我使用套接字时,我使用的是:

socket.getInetAddress().getHostAddress();

在apache mina中使用IoSession有类似的东西吗?

1 个答案:

答案 0 :(得分:17)

SocketAddress返回的getRemoteAddress()转发给InetSocketAddress。然后,您可以致电getAddress(),该InetAddress将返回一个getHostAddress()对象,该对象具有您习惯使用的InetSocketAddress socketAddress = (InetSocketAddress) session.getRemoteAddress(); InetAddress inetAddress = socketAddress.getAddress(); inetAddress.getHostAddress(); 方法。

e.g。

{{1}}