Netty - 使用与绑定服务器通道相同的侦听地址启动新连接

时间:2012-05-07 00:43:26

标签: jboss netty

我有一个绑定的服务器通道,当前正在接受本地地址“x”的连接。我现在需要启动到远程地址'y'的连接,但我需要我的本地监听地址为'x'。使用本地通道工厂和本地地址时,当我尝试使用本地地址='x'建立新的客户端连接时,我收到“地址已绑定”错误。这是有道理的。

所以我的下一个路线是试图找到一种从服务器通道创建一个新的子连接的方法,但最终进入netty内部代码有点太深,似乎是一条糟糕的路线。我记得早些时候看到一个关于本地客户端连接的错误。

  • 这只是本地频道的错误吗?
  • 是否可以在Netty中从绑定地址发起连接?

谢谢, 丹尼尔

1 个答案:

答案 0 :(得分:0)

你在写代理吗?如果是这样,这是一个网络example app

请注意,您必须为客户端和服务器设置不同的通道工厂。

    // Configure the bootstrap.
    Executor executor = Executors.newCachedThreadPool();
    ServerBootstrap sb = new ServerBootstrap(
            new NioServerSocketChannelFactory(executor));

    // Set up the event pipeline factory.
    ClientSocketChannelFactory cf =
            new NioClientSocketChannelFactory(executor);