Netty 使用ClientBootstrap以显式本地地址连接到LocalChannel

Netty 使用ClientBootstrap以显式本地地址连接到LocalChannel,netty,Netty,我希望在连接到使用DefaultLocalServerChannelFactory创建的LocalChannel服务器时能够指定一个显式的本地地址,而不是依赖于“Ephemeral” (原因是我希望能够建立多个连接,并让服务器使用远程地址对相关连接进行分组) 如果我调整提供的LocalExample类,只需更改: ChannelFuture channelFuture = cb.connect(socketAddress); 致: 引发通道异常(已绑定),因为通道首先由ClientBootst

我希望在连接到使用DefaultLocalServerChannelFactory创建的LocalChannel服务器时能够指定一个显式的本地地址,而不是依赖于“Ephemeral”

(原因是我希望能够建立多个连接,并让服务器使用远程地址对相关连接进行分组)

如果我调整提供的LocalExample类,只需更改:

ChannelFuture channelFuture = cb.connect(socketAddress);
致:

引发通道异常(已绑定),因为通道首先由ClientBootstrap绑定,然后由LocalClientChannelSink绑定,该LocalClientChannelSink在连接时始终绑定通道:

        bind(channel, succeededFuture(channel), new LocalAddress(LocalAddress.EPHEMERAL));
如果忽略该异常,则一切似乎都正常,并且通道的端点确实具有非默认本地地址

然而,如果可能的话,我更愿意找到一种避免异常的方法。这听起来像是一个“bug”。你能在netty的bugtracker中打开一个问题吗

        bind(channel, succeededFuture(channel), new LocalAddress(LocalAddress.EPHEMERAL));