![用于互联网访问的内部 DNS](https://linux22.com/image/676677/%E7%94%A8%E4%BA%8E%E4%BA%92%E8%81%94%E7%BD%91%E8%AE%BF%E9%97%AE%E7%9A%84%E5%86%85%E9%83%A8%20DNS.png)
我已经使用 CentOS6 上的 BIND 为我的办公网络配置了内部 DNS...我遇到的问题是,当我将该 DNS 服务器用作主 DNS 时,我的整个网络会失去互联网连接,但我在该 DNS 服务器上配置的内部网站(例如:app.mydomain.com)运行正常...我似乎无法弄清楚问题所在...如果你们能为我指明正确的方向并指出我需要做什么才能使其正常工作,我将不胜感激。谢谢
这是 ny named.conf
//
// named.conf
//
// Provided by Red Hat bind package to configure the ISC BIND named(8) DNS
// server as a caching only nameserver (as a localhost DNS resolver only).
//
// See /usr/share/doc/bind*/sample/ for example named configuration files.
//
options {
listen-on port 53 { 127.0.0.1; 192.168.2.2; };
listen-on-v6 port 53 { ::1; };
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt";
allow-query { localhost; 192.168.2.0/24; };
allow-transfer { localhost; 192.168.2.2; };
recursion no;
dnssec-enable yes;
dnssec-validation yes;
dnssec-lookaside auto;
forwarders {
192.168.1.1;
};
/* Path to ISC DLV key */
bindkeys-file "/etc/named.iscdlv.key";
managed-keys-directory "/var/named/dynamic";
};
logging {
channel default_debug {
file "data/named.run";
severity dynamic;
};
};
zone "b29devserver.com" IN {
type master;
file "b29devserver.com.zone";
allow-update { none; };
};
zone "." IN {
type hint;
file "named.ca";
};
include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";
答案1
你的问题在这里:
forwarders {
192.168.1.1;
};
您的bind
服务器尝试将未知域名转发给自己,因此无法解析。请在此处添加(例如)Google DNS,然后重试
forwarders {
8.8.8.8;
8.8.4.4;
};
答案2
嗯,很明显您的 DNS 认为它了解世界。
您既没有为未知域配置转发器,也没有忘记设置/激活根 DNS 服务器。这两种情况都会导致 DNS 将其不知道如何处理的请求转发给另一方。
正确的方向?文档 - 查找转发器(在这种情况下,您可以将 DNS 指向 Google 的公共 DNS 服务)或根名称服务器。
我没有使用 bind,因此无法更具体。但这就是要点。
答案3
从您的 named.conf 中可以看到,您的服务器配置为将所有未知查询重定向到服务器 192.168.1.1。您应该检查:
- 您的 DNS 是否可以访问服务器 192.168.1.1?
- DNS 服务器是否在 192.168.1.1 上运行?
- 此服务器有设置
forwarders
或recursion
选项吗? - 允许该服务器从您的 DNS 进行查询吗?
当您使用 192.168.1.1 作为主 DNS 时它如何表现?
答案4
您不需要在 /etc/named.conf 中设置转发器。为了进行检查,请在 192.168.2.0 网络上放置一个临时 Widnows 服务器(例如 IP 192.168.2.3)。
在 Linux DNS 服务器上的 /etc/resolv.conf 上添加其自己的名称服务器 192.168.2.3。
在客户端中,将路由器 IP 设置为网关,将 Linux DNS 服务器设置为主服务器,将 Windows DNS 服务器设置为辅助服务器,然后检查互联网连接。在两个 DNS 中保留内部网站服务器的记录。
现在,在客户端中交换主 DNS 条目和辅助 DNS 条目会对内部网站服务器和互联网服务器进行 nslookup。这将让您了解问题发生的位置。更新您的发现。