在并行虚拟机上安装了Linux centOS 6系统作为vServer,具有一个公共IPv4地址XX.XXX.XXX.XX
我尝试在其上运行Java Minecraft Server,但这不起作用。我无法使用指定端口上的IPv4地址连接到服务器。
如果我运行命令:
java -Xmx1024M -Xms1024M -jar minecraft-server.jar nogui
-->
[14:55:47] [Server thread/INFO]: Starting minecraft server version 1.12.2
[14:55:47] [Server thread/INFO]: Loading properties
[14:55:47] [Server thread/INFO]: Default game type: CREATIVE
[14:55:47] [Server thread/INFO]: Generating keypair
[14:55:48] [Server thread/INFO]: Starting Minecraft server on XX.XXX.XXX.XX:12345
[14:55:48] [Server thread/INFO]: Using epoll channel type
Nov 01, 2018 2:55:48 PM io.netty.util.internal.MacAddressUtil defaultMachineId
WARNING: Failed to find a usable hardware address from the network interfaces; using random bytes: 8b:07:0a:a8:aa:46:68:dd
当我检查连接时,只有一个进程正在侦听IPv6环回地址:
lsof -i
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
java 9962 minecraftServer 21u IPv6 1030838584 0t0 TCP sXXXXXXX.onlinehome-server.info:italk (LISTEN)
netstat -lptu
Proto Recv-Q Send-Q Local Address Foreign Address Stat
tcp 0 0 s18608488.onlinehome-:italk *:* LISTEN 9962/java
netstat -tulpn
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 ::ffff:82.165.154.60:12345 :::* LISTEN 9962/java
这都是可用的Java连接。
我尝试了在这里和其他地方找到的解决方案
java -Xmx1024M -Xms1024M -Djava.net.preferIPv4Stack=true -jar minecraft-server.jar nogui
尽管如此,这也不起作用。 我被卡住了,不再有想法,建议 在其他网站上没有帮助。
答案 0 :(得分:0)
正如@Harry Cutts所述,您应该在ServerFault上发布此问题。
从这个问题中,我得出结论,您将server-ip
中的server.properties
值设置为您的 public IPv4地址,这就是问题的根源。
如果您只有一个网络接口,请将server-ip
值留空,因为它将自动使用该私有 IPv4地址,但是如果您有多个网络接口,则应提供以下地址:首选设备。
如果存在多个网络接口(例如服务器计算机),您需要在其中指定服务器(软件)要使用的接口的 local IPv4地址,然后再使用该接口,则可以使用我前面已经提到的IP绑定需要将端口转发到路由器设置中的该IPv4地址。
(私有(或本地)IPv4地址通常看起来像这样:192.168.x.x
。但是您可以在wikipedia上了解更多。)
希望这可以帮助您解决问题。