AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / unix / 问题 / 411252
Accepted
Hyrikan
Hyrikan
Asked: 2017-12-17 05:43:15 +0800 CST2017-12-17 05:43:15 +0800 CST 2017-12-17 05:43:15 +0800 CST

Java 拒绝在 Turnkey 上监听 IPv6

  • 772

所以我正在使用 MineOS,这是一个带有预装 node.js webUI 的交钥匙系统,用于部署 Minecraft 服务器。现在我希望服务器可以通过 IPv6 访问,因为这就是我从 ISP 获得的全部内容。但是我的服务器实例只监听 IPv4。如何让 java minecraft 服务器监听 IPv6?

一些 netstat -ntlp 输出,无论我在 minecraft 中的 server.properties 是什么,它总是相同的:

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 通过 Internet 访问 Windows 机器上的服务器!我还可以在交钥匙机器上通过 IPv6 访问 webUI。

我还缺少什么?所有帮助表示赞赏!

解决方案:

minecraft 的 forge 修改将 java.net.preferIPv4Stack=true 设置为 1.12.2-14.23.1.2555 版本,这会破坏每次 IPv6 尝试。出于这个原因,我现在使用 6tunnel,它创建了一个从 IPv6 到 IPv4 的转发端口。我仍然无法从 minecraftserver 的外部访问,但 IPv6 正在工作。

networking java
  • 2 2 个回答
  • 398 Views

2 个回答

  • Voted
  1. Stephen C
    2017-12-17T07:34:48+08:002017-12-17T07:34:48+08:00

    我认为您的属性名称错误。根据

    • JDK/JRE 5.0 的网络 IPv6 用户指南

    属性名称为:

    • java.net.preferIPv4Stack- 注意:IPv4不是IPv6
    • java.net.preferIPv6Addresses- 注意:两个d字符不是一个。

    您还需要检查您是否不受此错误的影响:https ://bugs.mojang.com/browse/MC-3776

    • 2
  2. Best Answer
    Hyrikan
    2017-12-18T10:38:37+08:002017-12-18T10:38:37+08:00

    罪魁祸首是我在我的世界中使用的锻造修改。直到版本 1.12.2-14.23.1.2555 它设置 java.net.preferIPv4Stack=true。6tunnel 是一种解决方法,它执行从 IPv6 到 IPv4 的端口转发。

    • 0

相关问题

  • 查找与端口关联的线程/脚本?

  • 关于网络挂载文件的问题

  • IP地址可以以255结尾而不是广播IP地址吗?

  • 无法识别arp命令或ip命令哪个MAC地址输出正确

  • 奇怪的路由器与centos 6一起工作[关闭]

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    JSON数组使用jq来bash变量

    • 4 个回答
  • Marko Smith

    日期可以为 GMT 时区格式化当前时间吗?[复制]

    • 2 个回答
  • Marko Smith

    bash + 通过 bash 脚本从文件中读取变量和值

    • 4 个回答
  • Marko Smith

    如何复制目录并在同一命令中重命名它?

    • 4 个回答
  • Marko Smith

    ssh 连接。X11 连接因身份验证错误而被拒绝

    • 3 个回答
  • Marko Smith

    如何下载软件包而不是使用 apt-get 命令安装它?

    • 7 个回答
  • Marko Smith

    systemctl 命令在 RHEL 6 中不起作用

    • 3 个回答
  • Marko Smith

    rsync 端口 22 和 873 使用

    • 2 个回答
  • Marko Smith

    以 100% 的利用率捕捉 /dev/loop -- 没有可用空间

    • 1 个回答
  • Marko Smith

    jq 打印子对象中所有的键和值

    • 2 个回答
  • Martin Hope
    EHerman JSON数组使用jq来bash变量 2017-12-31 14:50:58 +0800 CST
  • Martin Hope
    Christos Baziotis 在一个巨大的(70GB)、一行、文本文件中替换字符串 2017-12-30 06:58:33 +0800 CST
  • Martin Hope
    Drux 日期可以为 GMT 时区格式化当前时间吗?[复制] 2017-12-26 11:35:07 +0800 CST
  • Martin Hope
    AllisonC 如何复制目录并在同一命令中重命名它? 2017-12-22 05:28:06 +0800 CST
  • Martin Hope
    Steve “root”用户的文件权限如何工作? 2017-12-22 02:46:01 +0800 CST
  • Martin Hope
    Bagas Sanjaya 为什么 Linux 使用 LF 作为换行符? 2017-12-20 05:48:21 +0800 CST
  • Martin Hope
    Cbhihe 将默认编辑器更改为 vim for _ sudo systemctl edit [unit-file] _ 2017-12-03 10:11:38 +0800 CST
  • Martin Hope
    showkey 如何下载软件包而不是使用 apt-get 命令安装它? 2017-12-03 02:15:02 +0800 CST
  • Martin Hope
    youxiao 为什么目录 /home、/usr、/var 等都具有相同的 inode 编号 (2)? 2017-12-02 05:33:41 +0800 CST
  • Martin Hope
    user223600 gpg —list-keys 命令在将私钥导入全新安装后输出 uid [未知] 2017-11-26 18:26:02 +0800 CST

热门标签

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve