Я установил loopback-адаптер на свой компьютер Win7, чтобы я мог привязать его к Netty. Дело в том, что я назначил адрес Loopback IP-адресу 172.16.1.1 /24
(что необходимо). Но когда я пытаюсь связать через Netty, он вместо этого связывается с адресом 127.0.0.1
, который известен как IP-адрес по умолчанию. Так что мне просто интересно, как я могу обойти это? Мне нужно СПЕЦИАЛЬНО привязать адаптер Loopback с IP-адресом 172.16.1.1
и портом 162
.Netty привязка к неправильному интерфейсу
Изображения, связанные с: связанные
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();
}
}
}
Дело в том, что 127.0.0.1 * есть * адрес обратной связи, а 172.16.1.1 - нет. – EJP