Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/367.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Netty TCP服务器-在创建通道之前拒绝IP_Java_Networking_Tcp_Netty - Fatal编程技术网

Java Netty TCP服务器-在创建通道之前拒绝IP

Java Netty TCP服务器-在创建通道之前拒绝IP,java,networking,tcp,netty,Java,Networking,Tcp,Netty,所以-我用Netty 4创建了一个TCP服务器。设置很简单,我使用Netty的编解码器处理序列化 我正在尝试根据IP地址进行过滤,它可以工作,但通道已创建,处理程序已创建。我不希望处理程序被创建,如果它是一个过滤的IP 我在服务器中添加过滤器,在这里- channelPipeline.addFirst(filter) 但是,总是首先调用我的ServerHandler channelPipeline.addLast(serverHandler) 日志: Handler added - /127

所以-我用Netty 4创建了一个TCP服务器。设置很简单,我使用Netty的编解码器处理序列化

我正在尝试根据IP地址进行过滤,它可以工作,但通道已创建,处理程序已创建。我不希望处理程序被创建,如果它是一个过滤的IP

我在服务器中添加过滤器,在这里-

channelPipeline.addFirst(filter)
但是,总是首先调用我的ServerHandler

channelPipeline.addLast(serverHandler)
日志:

Handler added - /127.0.0.1:58781 -- ServerHandler
2019-10-06 12:04:11.673 INFO - FILTER! - /127.0.0.1 -- Filter
我试着寻找例子,但我发现很难。我也尝试过先将它添加到相同的.addLast()过滤器中,但没有任何乐趣

蒂亚

更新

多亏了诺曼的回答,也许我找错地方了。我们的ELB on AWS有一个healthchecker,每秒对服务器进行4次攻击,当一个真正的客户端连接时,它不会收到回复消息。如果我禁用健康检查器-它工作得很好


有没有办法解决这个问题?

您需要使用类似于
iptables的东西来在内核级别进行过滤。

谢谢!我已经稍微更新了我的答案——正如我发现你对GitHub的某个人说的那样(我认为我的场景可能有点利基…),感谢mate对Netty的贡献。