【问题标题】:Apache Mina: how to get the IP from a connected clientApache Mina:如何从连接的客户端获取 IP
【发布时间】:2011-08-03 20:31:17
【问题描述】:

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

到目前为止我已经找到了

session.getRemoteAddress().toString()

并返回类似

的内容

/192.168.1.100:49879

这样好吗?我可以做一些只能返回 192.168.1.100 的事情吗?

当我使用套接字时,我使用的是类似的东西:

socket.getInetAddress().getHostAddress();

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

【问题讨论】:

    标签: java apache-mina


    【解决方案1】:

    getRemoteAddress() 返回的SocketAddress 向下转换为InetSocketAddress。然后您可以调用getAddress(),它将返回一个InetAddress 对象,该对象具有您习惯的getHostAddress() 方法。

    例如

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

    【讨论】:

      猜你喜欢
      • 2021-06-01
      • 2011-06-12
      • 2021-10-19
      • 1970-01-01
      • 2016-07-30
      • 2020-11-10
      • 2018-12-30
      • 2019-02-25
      • 2019-05-08
      相关资源
      最近更新 更多