我目前正在尝试在我的虚拟机上设置 DNS(dns.lan)。
我有一台网关机器(IP:192.168.1.1)和一台 DNS 机器(192.168.1.5)
我输入时总是出现相同的错误host dns.lan
,即“未找到主机 dns.lan:3(NXDOMAIN)”。错误来自哪里?
/etc/resolv.conf:
...
nameserver 192.168.1.5
domain dns.lan
search dns.lan
/etc/主机名:
DNS
在 /etc/hosts 中:
127.0.0.1 localhost
127.0.1.1 DNS
192.168.1.5 DNS.dns.lan DNS
/etc/bind/named.conf.选项:
...
forwarders {
89.2.0.1;
192.168.1.1;
8.8.8.8;
8.8.4.4;
}
...
/etc/bind/named.conf.local:
zone "bsasr.lan" {
type master;
file "/etc/bind/zones/db.dns.lan";
}
zone "1.168.192.in-addr.arpa" {
type master;
file "/etc/bin/zones/db.192";
}
为了避免错误,下面是我 /etc/bind/zones/db.dns.lan 的屏幕截图: db.bsasr.lan 截图
/etc/bind/zones/db.192 也一样:
错误如下:
>host dns.lan
Host dns.lan not found: 3(NXDOMAIN)
>nslookup dns.lan
Server: 89.2.0.1
Address: 89.2.0.1#53
server can't find dns.lan: NXDOMAIN
非常感谢
答案1
有趣的事实:您的主 DNS 解析服务器实际上是不是您的 192.168.1.5 框。这就是为什么nslookup
没有指定要查询的 DNS 服务器会失败的原因。
您的主要查询点显然是 89.2.0.1,这是响应server
的字段nslookup
,其中没有定义区域。因此,您需要将您的resolv.conf
和/或您的网络设置(如果使用网络管理器)指向首先从 192.168.1.5 开始,然后转到其他服务器作为故障转移。
如果这样做,nslookup bsasr.lan 192.168.1.5
您应该获得实际的 DNS 解析,而不是 NXDOMAIN。确保您的 DNS 解析/etc/resolv.conf
也保持不变 - 如果您使用网络管理器,它可能与您预期的不同,并且 DNS 服务器必须位于您使用的位置nslookup
,而不是bind9
服务器系统本身。
我还强烈建议您使用dig
进行测试,这样您就可以对要测试的内容进行操作dig +short @192.168.1.5 A [ADDRESS]
(相应地替换);可以很好地与 配合使用。[ADDRESS]
dig
bind9