以下是我的情况的简要描述:
我正在运行 Ubuntu 家庭服务器,它还充当我的私人网络的 DHCP/DNS。它使用 DMZ 暴露给外部网络,因此可以从外部访问它。到目前为止,我一直在使用 No-IP 域(noip.domain.net
为了更好地理解,我们给它命名),因为我的网络具有动态全局 IP 地址,并且我必须使用 DDNS 功能。我最近购买了一个域名(我们将其命名为example.pl
),我希望它指向同一个家庭服务器。
是否可以设置两个域名以将流量引导到我的家庭服务器?我对这个话题很陌生,所以我真的很想得到更详细的解释和一些指导步骤。家庭服务器正在使用 Bind9,而且我可以完全访问我的example.pl
DNS 记录。
答案1
是的,您可以为您的域名使用 DDNS。您可以在您用来注册域名的任何提供商处设置域名。具体如何设置取决于您的提供商的界面,以下是示例Namecheap
答案2
这是可以做到的——但有限制。忘记运行自己的名称服务器(bind)的想法吧。要做到这一点,至少需要 2 个静态 IP 地址,可以说是 2 个网络连接。名称服务很便宜——可能包含在您的域名注册中——只需使用它即可。
您需要的部分(根据您的问题)是将 example.pl 的 CNAME 记录设置为 noip.domain.net。这意味着 example.pl 将解析为 noip.domain.net 的 A 记录 - 并且对于只需要将域解析为 IP 地址的服务来说,它将正常工作。它不适用于电子邮件。
如果你可以使用www.example.pl- 改为这样做。这样,您就可以自由地(在您的域提供商 DNS 中)设置邮件记录等内容。(我注意到大多数 ISP 都会允许您为同一条记录设置 MX 和 cname - 这在实践中行不通,因为 cname 的工作方式与人们直观预期的方式并不一样)
(至少对于 Web 服务而言)您可以将多个名称指向同一个 IP 地址(直接或间接,例如通过 cnsme)并配置 Web 服务器以执行基于名称的虚拟托管(无处不在),这样您就可以拥有与 1 个 IP 地址关联的多个网站。
答案3
这就是我解决问题的方法:
步骤1。我将我的 DNS 服务器指向example.pl
运行noipdomain.net
Bind9 DNS 的家庭服务器。
第2步。example.pl
我创建了一个包含随机记录的新区域A
。
步骤3.我创建了一个简单的 Python 脚本,每 5 分钟运行一次,并A
根据dig +short noipdomain.net
命令的输出更新记录。
注意:在这种情况下,将 TTL 更改为 5 分钟并不是一个坏主意
步骤4。两个域名目前指向同一个 IP 并且可以访问。