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

8

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

到目前为止,我找到了:

session.getRemoteAddress().toString()

并且返回类似于

/192.168.1.100:49879

这样可以吗?我能做些什么,只返回192.168.1.100吗?

当我使用Socket时,我使用的是类似于:

socket.getInetAddress().getHostAddress();

有没有类似使用IoSession在Apache Mina中的东西?
1个回答

18

getRemoteAddress()返回的SocketAddress降级为InetSocketAddress。 然后您可以调用getAddress(),它将返回一个InetAddress对象,该对象具有您熟悉的getHostAddress()方法。

例如:

InetSocketAddress socketAddress = (InetSocketAddress) session.getRemoteAddress();
InetAddress inetAddress = socketAddress.getAddress();

inetAddress.getHostAddress();

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接