그래서 저는 Minecraft 서버 배포를 위해 Node.js WebUI가 사전 설치된 턴키 소프트웨어인 MineOS를 사용합니다. 이제 IPv6를 통해 서버에 액세스할 수 있기를 원합니다. 왜냐하면 그것이 ISP로부터 얻는 전부이기 때문입니다. 하지만 내 서버 인스턴스는 IPv4에서만 수신 대기합니다. javaminecraft 서버가 IPv6를 수신하도록 하려면 어떻게 해야 합니까?
내 server.properties가 마인크래프트에 무엇이든 상관없이 일부 netstat -ntlp 출력은 항상 동일합니다.
root@MinecraftServer /etc/default# netstat -ntlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 493/sshd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1194/master
tcp 0 0 0.0.0.0:25565 0.0.0.0:* LISTEN 1446/java
tcp 0 0 127.0.0.1:12319 0.0.0.0:* LISTEN 590/shellinaboxd
tcp 0 0 0.0.0.0:12320 0.0.0.0:* LISTEN 598/stunnel4
tcp 0 0 0.0.0.0:12321 0.0.0.0:* LISTEN 598/stunnel4
tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN 978/mysqld
tcp6 0 0 :::22 :::* LISTEN 493/sshd
tcp6 0 0 :::8443 :::* LISTEN 1026/node
또한 -Djava.net.preferIPv6Adresses=true 및 -Djava.net.preferIPv6Stack=true를 사용해 보았습니다. 아무것도 변하지 않았다. /proc/sys/net/ipv6/bindv6only 값을 1로 변경했습니다.
이것은 내 ip6tables -L입니다.
root@MinecraftServer /etc/default# ip6tables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT tcp anywhere anywhere tcp dpt:25565
ACCEPT tcp anywhere anywhere tcp dpt:25566
ACCEPT tcp anywhere anywhere tcp dpt:8443
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
IPv6를 통해 인터넷을 통해 Windows 컴퓨터의 서버에 액세스할 수 있습니다! 턴키 시스템에서 IPv6을 통해 WebUI에 액세스할 수도 있습니다.
내가 무엇을 놓치고 있나요? 모든 도움에 감사드립니다!
해결책:
Minecraft의 Forge 수정은 java.net.preferIPv4Stack=true를 버전 1.12.2-14.23.1.2555로 설정하여 모든 IPv6 시도를 중단시킵니다. 따라서 이제 IPv6에서 IPv4로 전달되는 포트를 생성하는 6tunnel을 사용합니다. 여전히 외부에서 마인크래프트 서버에 접근할 수 없지만 IPv6는 작동하고 있습니다.
답변1
속성 이름을 잘못 입력하신 것 같습니다. ~에 따르면
속성 이름은 다음과 같습니다.
java.net.preferIPv4Stack
- 참고:IPv4
아니요IPv6
java.net.preferIPv6Addresses
- 참고:d
한 글자 대신 두 글자를 입력하세요.
또한 이 오류의 영향을 받지 않는지 확인해야 합니다.https://bugs.mojang.com/browse/MC-3776
답변2
범인은 제가 마인크래프트에서 사용하는 대장간 개조입니다. 버전 1.12.2-14.23.1.2555부터는 java.net.preferIPv4Stack=true로 설정됩니다. 6tunnel은 IPv6에서 IPv4로 포트를 전달하는 해결 방법입니다.