在 Debian 服务器上运行多个域的 DNS

在 Debian 服务器上运行多个域的 DNS

我对此还很陌生!我正尝试将我的 URL 重定向到我的服务器,所以我所做的就是:

http://www.debian-administration.org/articles/412

其中包括添加 /etc/apache2/conf.d/virtual.conf、创建 /etc/apache2/sites-available/www.example.com 并输入 a2ensite www.example.com

在我的域名管理器上,我只是将 DNS 重定向到我的服务器 IP。

它不起作用。我联系了服务器支持人员,他们告诉我需要使用 bind9。

因此我尝试在 /etc/bind/named.conf.local 中添加区域:

zone "lyon01.com" {
     type master;
     file "/var/lib/bind/example.com";
};

然后创建 /var/lib/bind/example.com 如下:

;
; BIND reverse data file for broadcast zone
;
$TTL    604800
@       IN      SOA     lyon01.com. root.lyon01.com. (
                          1         ; Serial
                     604800         ; Refresh
                      86400         ; Retry
                    2419200         ; Expire
                     604800 )       ; Negative Cache TTL
;
@       IN      NS      lyon01.com.

并重新启动 BIND:/etc/init.d/bind9 restart

另外,一位朋友告诉我,我不需要这样做,只需将 127.0.0.1 example.com 添加到我的 /etc/hosts 文件中即可

这些都不起作用,救命!

答案1

首先确保您解析正确。(无论您使用 /etc/hosts、bind、ZoneConf 还是其他辅助工具)请检查:

$ host lyon01.com

您应该获取服务器的 IP(例如 127.0.0.1);并且应该能够 ping 通该机器。

如果你没有得到任何回复,那么你的解析器就坏了。首先,你上面给出的示例配置不包括任何查找。你需要像这样的一行

lyon01.com.  IN A 127.0.0.1

将 IP 更改为您实际使用的 IP。增加序列号并重新加载绑定。注意任何错误。再次测试。如果不奏效,请尝试直接查询您的名称服务器:

$ dig lyn01.com @ip.of.dns.server

如果有效,请检查 /etc/resolv.conf 中的名称服务器条目,它应该包含如下行(nameserver暂时尽量避免添加其他条目)

nameserver ip.of.dns.server

第二,确保 apache 正在运行。将浏览器指向“http://”(它可能会显示错误的虚拟主机,但至少应该显示一些内容)

第三,确保您的浏览器正确解析新名称,将您的浏览器指向“http://lyon01.com“,看看它会给你带来什么。请注意,像 Firefox 这样的浏览器会保留自己的 DNS 缓存,因此如果您尝试覆盖现有的 DNS 条目(例如 example.com 通常解析为 192.0.43.10),您可能必须重新启动 Web 浏览器才能使新的 DNS 设置生效。

第四,确保 apache 的 vhost 正常工作。如果不工作,请打开日志记录:

RewriteLog "${APACHE_LOG_DIR}/lyon01.com-rewrite.log"
RewriteLogLevel 1

看看日志告诉你什么

答案2

解决您的问题的一个简单方法是使用简单且免费的基于 Web 的域名管理器,它可以为您完成所有繁琐的工作(配置绑定)。我个人使用區域編輯,但我确信还有其他人。

如果您需要进一步的帮助来进行设置,请告诉我。

相关内容