我可以在一台服务器上托管网站,并在另一台服务器上将域名连接到 bind ns 吗?

我可以在一台服务器上托管网站,并在另一台服务器上将域名连接到 bind ns 吗?

我有域名 testshop.homes。它已连接到 bind NS。Bind 位于 IP 为 81.171.5.222 的服务器上,并且域名在此 IP 上查找。我可以在 IP 为 15.235.51.16 的另一台服务器上托管此域名(apache、文件、DB)吗?我已经在 15.235.51.16 上创建了 apache 配置、文件和 DB,但站点出现错误 DNS_PROBE_FINISHED_NXDOMAIN。

在 namecheap 上,我只需在配置中添加名称服务器(这些名称服务器正在运行且已完全配置) 在此处输入图片描述

答案1

不太清楚您得到了什么,但让我们根据我在您的问题中看到的内容进行一些拆分:

(1)您有一个为网站运行的 BIND9 DNS 名称服务器testshop.homes。此名称服务器位于 81.171.5.222。

(2)您的网站有一个 Apache 网络服务器,地址为 15.235.51.16。

这是完全可以接受的。您的 BIND9 名称服务器和 Apache Web 服务器不需要位于同一 IP 地址。这是很常见的情况,因为人们在一台服务器上运行他们的网站等,但使用 CloudFlare 或他们的域名注册商等第三方来运行 DNS。但是,如果您更改 BIND9 服务器所在的位置,则必须进行更多更改才能使域名仍然解析 - 这通常需要在注册商/托管提供商处进行更改,具体取决于您使用什么来获取它,以便名称服务器能够正确到达您的域名的 DNS 记录实际存在的位置。


现实世界的例子:我自己的域名 - thomas-ward.net。(这不是广告)。

如果我们查看域配置中的名称服务器,它们指向 CloudFlare 的 DNS 服务器。这意味着名称服务器由 Cloudflare 运行,并且我已在注册商处对此进行了配置,以便 DNS 记录能够正确到达 CloudFlare 以处理我的域请求。

我的域名的实际网络服务器位于 50.211.[NOPE].[SILENCE]。这是 DNS 区域中的单个 A 记录。这不是 CloudFlare 服务器,而是我的服务器集群位置的 IP 地址。这些是完全不同服务器。然而,这只适用于您的域名的 DNS 服务器可以访问他们是正确配置在您的注册处。

举个例子:我有一个本地专用域,它只存在于我的笔记本电脑内部 - static-local.lxd(用于我的非临时 LXD 容器)。它在 10.10.1.0 的 DNS 名称服务器上运行,而该名称服务器只存在于我的笔记本电脑上。为了查询static-local.lxd,我必须将计算机的 DNS 设置为它查询的第一个服务器是我笔记本电脑上的本地容器 - 反过来处理我的所有 DNS。如果我更改名称服务器上的 IP 地址或将 DNS 设置更改为不先查询 10.10.1.0,那么我将永远看不到static-local.lxd,我的 DNS 系统将回退到 Google DNS - 反过来显示 NXDOMAIN,因为该域名在互联网的现实世界中不存在。

请注意,我在互联网上进行了一些调查,您声明的域名已经归某人所有,并且没有任何与您声明的 IP 地址相对应的 DNS 名称服务器条目 - 因此,您看到的 NXDOMAIN 问题与您的 DNS 不再解析到正确的名称服务器有关,并且因为该域名由 Namecheap 的某人拥有,完全配置为无效的名称服务器,并且将绝不如果这是您的实际网站,则无法正确解析 - 您需要使用正确的 Web 服务器/DNS 实践从头开始重新配置它,才能开始正常工作

相关内容