我目前正在为我和我的朋友设置一个 minecraft 服务器。但是,我已经有多个通过 DNS 服务器进行端口转发的服务器,并且我希望 minecraft 服务器在不同的 DNS 域上独立进行端口转发。我想保留现有的 dyndns.com DNS 及其服务器,并在仅包含 minecraft 服务器的新 DNS 域上端口转发 minecraft 服务器。
我的路由器仅允许 IVP6 使用多个 DNS 服务器,但我的网络运行在 IPV4 上。此外,IPV6 上的多个 DNS 服务器将包含所有服务器,无法在 DNS 服务之间拆分服务器。
我怎样才能实现这个目标?
答案1
端口转发工作仅有的使用 IP 地址 - 它完全独立于 DNS,并且“通过 DNS 服务器转发端口”根本没有意义。
换句话说:如果您有多个解析到相同 IP 地址的 DNS 域,则它们都将具有相同的 TCP 和 UDP 端口可用。通常,避免这种情况的唯一方法是使用两个不同的 IP 地址。
但是,您可以使用 SRV 记录创建仅适用于 Minecraft 的域:
- 从新域中删除所有 IP 地址(A/AAAA)记录。
- 在上添加 SRV 记录
_minecraft._tcp.<newdomain>
,指向您的旧 dyndns 域。
答案2
我希望 minecraft 服务器在不同的 DNS 域上独立进行端口转发。
正如@grawity 指出的那样,端口转发独立于 DNS/域,包括动态 DNS。
从技术上讲,DNS 所做的只是将域名映射到 IP 地址。它不包含任何端口信息。这意味着您可以有 1 个或 100 个域指向您的公共 IP,并且它们都可以将流量发送到相同的端口。这包括如果您使用给定 Web 服务的某些附加功能来重新路由其处理的域的端口。
我想保留现有的 dyndns.com DNS 及其服务器,并将 minecraft 服务器端口转发到仅包含 minecraft 服务器的新 DNS 域上。
您需要做的就是设置第二个服务,类似于第一个服务(将其指向您的公共 IP 地址,假设不涉及 ISP NAT)。如果您需要通过其 Web 界面调整该服务的端口路由,如上所述,它根本不会干扰第一个域的服务。如果您的端口转发是在路由器中完成的,只需转发正确的端口即可。
我的路由器仅允许 IVP6 使用多个 DNS 服务器,但我的网络运行在 IPV4 上。此外,IPV6 上的多个 DNS 服务器将包含所有服务器,无法在 DNS 服务之间拆分服务器。
这一点仍然让我有点困惑,但我认为这不会成为问题。我猜路由器有一个接口可以自动将其公共 IP 与动态 DNS 域保持同步。虽然您确实无法将其与第二个域一起使用,但这不应该成为交易破坏者。为了使 Minecraft 服务器的 IP 保持最新,您可以在服务器本身上运行常规动态 DNS 客户端,或者(最坏的情况)如果 IP 发生变化,请手动更新 IP。