尝试设置本地dns服务器以加快内联网开发。
我使用 bind9 和 /etc/bind/db.mydomain.com 设置一个名为 mydomain.com 的子域。
问题是我可以正确解析像 server.mydomain.com 这样的地址,但是服务器无法解析 mydomain.com(没有前缀)。
我是否遗漏了什么?
(我的配置和这篇文章有点类似http://www.geoffke.be/nieuws/8/)
答案1
通常,子域是不同的、单独的正向查找区域。如果要使整个域可搜索,则需要为每个域(mydomain.com、db.mydomain.com 等)设置一个正向查找区域。
或者简单地为 mydomain.com 创建正向查找区域,并为 db.mydomain.com 添加 A 记录。如果您需要的不仅仅是 A 和 CNAME 记录,则需要为每个域设置不同的正向查找区域。
答案2
查看您使用的教程,我看到以下内容:
; IP addresses of local hosts (replace the lines with your own hosts):
router IN A 192.168.1.1
ns1 IN A 192.168.1.2
www IN A 192.168.1.3
mediacenter IN A 192.168.1.4
laptop1 IN A 192.168.1.5
workstation1 IN A 192.168.1.6
您为许多子域名建立了 A 记录,但没有为您的 TLD 建立 A 记录。只需添加 A 记录而无需定义子域名,如下所示:
; IP addresses of local hosts (replace the lines with your own hosts):
IN A 192.168.1.100
router IN A 192.168.1.1
ns1 IN A 192.168.1.2
www IN A 192.168.1.3
mediacenter IN A 192.168.1.4
laptop1 IN A 192.168.1.5
workstation1 IN A 192.168.1.6
在哪里192.168.1.100是您想要指向的 IP,并且已设置完毕。
答案3
没搞清楚在bind9下怎么配置。
但使用 dnsmasq 服务解决了这个问题。
因此,我删除了 bind9 和 udhcpd 服务,而不是使用域名系统作为 dhcp 和 dns 服务提供商。在 dnsmasq 中,它将首先搜索本地 /etc/hosts 文件,我只需在其中输入我想要欺骗 lan 客户端的任何域名即可。