Java Netty服务器远程连接

Java Netty服务器远程连接,java,networking,netty,Java,Networking,Netty,Netty服务器,Fedora。我只是无法从远程主机连接到服务器,并且没有通过netstatutil显示侦听套接字。但是,我可以在同一台机器上建立运行客户端和服务器的连接。就是这样, port = System.getProperty(PORT_PROPERTY); Preconditions.checkNotNull(port, "Network error, port property is not set"); hostAddress = new InetSocketAddress(Int

Netty服务器,Fedora。我只是无法从远程主机连接到服务器,并且没有通过
netstat
util显示侦听套接字。但是,我可以在同一台机器上建立运行客户端和服务器的连接。就是这样,

port = System.getProperty(PORT_PROPERTY);
Preconditions.checkNotNull(port, "Network error, port property is not set");
hostAddress = new InetSocketAddress(Integer.valueOf(port));
...
serverChannel = bootstrap.bind(hostAddress);

我已尝试仅使用端口、本地主机IP、0.0.0.0 IP和网络IP初始化主机地址。没什么帮助。问题的根源是什么?

以下是一些有助于消除问题的建议:

  • 为清晰起见(在解决此问题之前),请坚持使用
newinetsocketaddress(“0.0.0.0”,Integer.valueOf(port))

因为这将确保绑定到所有接口

  • 使用-Djava.net.preferIPv4Stack=true调用JVM以强制JVM进入IPV4。我发现在IPV4中更容易处理这些问题,因为它没有V6复杂

  • 获取JVM的PID,然后发出如下netstat:

sudo netstat-ap——数字端口| grep


这将显示JVM实例的所有套接字。(如果您仍然无法远程连接,请发布此输出。同时发布ifconfig的输出)

您可以通过IP地址远程ping netty服务器吗?@Nicholas,是的,我可以成功ping服务器。@Nickolas,非常感谢!!!如果有更多像你这样的人,世界会更好!祝你好运,心情愉快,玩得开心!