Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/395.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绑定到错误的接口_Java_Networking_Netty - Fatal编程技术网

Java Netty绑定到错误的接口

Java Netty绑定到错误的接口,java,networking,netty,Java,Networking,Netty,我在我的Win7电脑上设置了一个环回适配器,这样我就可以用Netty绑定到它。问题是我给环回地址分配了一个IP地址172.16.1.1/24(这是必需的)。但当我尝试通过Netty进行绑定时,它会绑定到127.0.0.1地址,即默认的本地主机IP。所以我只是想知道我怎样才能解决这个问题?我需要它专门绑定到具有IP地址172.16.1.1和端口162的环回适配器 相关图片: NetUtil输出没有要绑定的内容。它将绑定到您传递给bind(…)方法的InetSocketAddress。修复方法是Ne

我在我的Win7电脑上设置了一个环回适配器,这样我就可以用Netty绑定到它。问题是我给环回地址分配了一个IP地址
172.16.1.1/24
(这是必需的)。但当我尝试通过Netty进行绑定时,它会绑定到
127.0.0.1
地址,即默认的本地主机IP。所以我只是想知道我怎样才能解决这个问题?我需要它专门绑定到具有IP地址
172.16.1.1
和端口
162
的环回适配器

相关图片:


NetUtil输出没有要绑定的内容。它将绑定到您传递给bind(…)方法的InetSocketAddress。

修复方法是Netty绑定到位于我的主机文件中的所有地址。我只是导航到该文件并在其中添加了
172.16.1.1localhost
的地址,然后调用
InetAddress.getByName(“localhost”)
,问题是127.0.0.1是环回地址,172.16.1.1不是。
NetUtil  - Loopback interface: Software Loopback Interface 1
NetUtil  - Loopback address: /127.0.0.1 (primary) <--- the problem
NetUtil  - Loopback address: /0:0:0:0:0:0:0:1
public class SnmpServer {

private final Logger logger = Logger.getLogger("SnmpServer");
//private final static String SNMP_HOST_IP = "172.16.1.1";
private static final byte[] SNMP_HOST_ADDR = {(byte)172, (byte)16, (byte)1, (byte)1};
private final static int SNMP_TRAP_PORT = 162;

final ServerBootstrap snmpBootstrap;

public SnmpServer() {
    snmpBootstrap = new ServerBootstrap();
}

public void bind() throws Exception {
    final EventLoopGroup bossGroup = new NioEventLoopGroup();
    final EventLoopGroup workerGroup = new NioEventLoopGroup();
    final SocketAddress socket =
            new InetSocketAddress(InetAddress.getByAddress(SNMP_HOST_ADDR), SNMP_TRAP_PORT);
    try {
        snmpBootstrap.group(bossGroup, workerGroup)
                .channel(NioServerSocketChannel.class)
                .childHandler(new SnmpChannelHandler());

        final ChannelFuture future = snmpBootstrap.bind(socket).sync();
        //future.channel().closeFuture().sync();
    } finally {
        bossGroup.shutdownGracefully();
        workerGroup.shutdownGracefully();
    }
}

}