我正在尝试使用 Apache Web 服务器设置 BIND 配置。我想要实现的是通过使用 URL www.exampler.net 访问可以在我的 Apache Web 服务器的 /var/www/html 文件夹中找到的内容。我在一台 IP 地址为 192.168.1.4 的机器上执行此操作。当我在有线连接打开时挖掘 www.exampler.net 时,它只会找到 Google 的名称服务器,但为什么我关闭有线连接它会立即找到我的 ns1.exampler.net。这是为什么?此外,通过在浏览器中写入 www.exampler.net ,它不会将我重定向到可以在 /var/www/html 中找到的本地网站,但通过写入 192.168.1.4 ,它会重定向到我的本地网站。
/etc/bind/named.conf.local
zone "exampler.net"{
type master;
file "/etc/bind/zones/db.exampler.net";
};
/etc/bind/zones/db.exampler.net
;
; exampler.net = domain name
;
$TTL 604800
exampler.net. IN SOA ns1.exampler.net. admin.localhost. (
2 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
; name servers
exampler.net. IN NS ns1.exampler.net.
; ip addresses
ns1 IN A 192.168.1.4
www IN A 192.168.1.4
/etc/apache2/sites-available/000-default.conf
<VirtualHost *:80>
ServerName exampler.net:80
ServerAlias www.exampler.net
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
我使用的是 Ubuntu 14.04.1。我只想在本地执行此操作,以便 LAN 服务器上的主机可以使用给定的域名来访问可以在我的 Apache/NS 服务器上找到的网站。提前致谢!
答案1
一旦 DNS 解析器找到成功的匹配,它就会停止寻找。关闭有线连接可能会使您的常规 DNS 服务器无法访问,因此 Ubuntu 会不断查找,直到它到达您的本地 DNS 服务器。
它看起来www.exampler.net
已经是一个解析为 的注册域名64.233.171.121
。在 Chrome 中查看它看起来像是某个人的博客。您可能想使用更独特的东西。
或者,您可以将 BIND 设置为转发器,然后在主机上指定它是仅有的他们应该使用的名称服务器。named
不会向上游服务器查询它认为具有权威的区域。
不过,选择一个不同的名字可能会更容易。