获取客户端ip和端口
import io.netty.channel.ChannelHandlerContext;
//ChannelHandlerContext chc
InetSocketAddress ipSocket = (InetSocketAddress)chc.channel().remoteAddress();
String clientIp = ipSocket.getAddress().getHostAddress();
log.info("客户端ip地址:{}",clientIp);
获取客户端channel注册的服务端ip和端口
int localPort = socketChannel.localAddress().getPort();
String localAddress = socketChannel.localAddress().getAddress().getHostAddress();
注:这个很有用,可以通过监听不同的端口,在channel初始化时绑定不同的解码器,从而使得通过不同端口把不同数据协议分开处理;一个端口可以对应一种解码器。具体应用见实战七https://www.jianshu.com/p/f23649a100c7
channel.remoteAddress().getPort(); //远程端口
channel.localAddress().getPort(); //本地端口
channel.localAddress().getPort(); //本地端口
作者:张凯_9908
链接:https://www.jianshu.com/p/8f8537e6aa66
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。