Proxy 我可以覆盖Netty 4中频道提供的remoteAddress吗?

Proxy 我可以覆盖Netty 4中频道提供的remoteAddress吗?,proxy,netty,Proxy,Netty,我在Netty 4中实现了一个解码器。此协议允许外部代理(在本例中为HAProxy)向代理服务器后面的内部服务器提供远程地址详细信息 要将其包含在管道中,我需要覆盖Netty通道提供的SocketAddress。我想我可以把代理协议提供的地址作为属性放在通道上,但是如果可能的话,我更愿意让解码器不特定于我的应用程序,直接在通道上更新remoteAddress 有什么想法吗?没有,你不能覆盖它,因为它是特定于交通工具的。正如诺曼提到的,这目前是不可能的。然而,关于如何无缝地实现代理支持,我们正在进

我在Netty 4中实现了一个解码器。此协议允许外部代理(在本例中为HAProxy)向代理服务器后面的内部服务器提供远程地址详细信息

要将其包含在管道中,我需要覆盖Netty通道提供的SocketAddress。我想我可以把代理协议提供的地址作为属性放在通道上,但是如果可能的话,我更愿意让解码器不特定于我的应用程序,直接在通道上更新remoteAddress


有什么想法吗?

没有,你不能覆盖它,因为它是特定于交通工具的。

正如诺曼提到的,这目前是不可能的。然而,关于如何无缝地实现代理支持,我们正在进行讨论。公开后端远程地址也是我们必须回答的问题之一,以获得适当的代理支持。请随时加入讨论:

感谢您的澄清,是否有计划在未来实施透明支持(不使用属性)?e、 g.netty 5.计划是在4.x中添加这样的特殊属性,这样人们就不需要等待5。您认为使用更多类型安全API(如:
channel.isProxied())更好吗?channel.proxyInfo().remoteAddress():channel.remoteAddress()
?我的首选是在channelIIUC上透明地更新代理远程地址,您希望:
channel.remoteAddress()
返回代理远程地址,而不是代理服务器的地址,对吗?这实际上是我的计划。