我正在尝试使用 Ubuntu 和 Bind9 在 Azure 中设置一个基本的公共 DNS 服务器。
我希望它可以通过 Internet 访问,并将所有请求转发到 Cloudflare 或 Google,但一个自定义区域除外。
我目前有两个问题:
- 我可以让它在本地网络上工作,在同一个子网上设置一个客户端并对公共站点进行 nslookup 转发工作完美,但是当将 Internet 客户端指向 DNS 服务器时,它会超时。
- 自定义区域不起作用,即使在本地网络上也是如此。我尝试将不存在的域设置为指向 IP 并设置单独的区域文件,但没有任何反应。即使在 dns 服务器本身上,我也无法让它工作。
我不认为问题 1 是防火墙问题,为了测试,我允许所有端口和 IP 开放,并在 DNS 服务器防火墙上打开端口 53。我认为这两个问题都与 Bind9 配置有关,我对此了解甚少。或许你们可以帮忙。
这是配置文件:
/etc/bind/named.conf.local:
zone "fakehostname.com" {
type master;
file "/etc/bind/zone.fakehostname.com";
};
/etc/bind/named.conf.options:
options {
directory "/var/cache/bind";
forwarders {
1.1.1.1; // Cloudflare
8.8.8.8; // Google
};
allow-query { any; };
dnssec-validation auto;
auth-nxdomain no;
listen-on-v6 { any; };
recursion yes;
querylog yes;
version "not available";
};
/etc/bind/zone.fakehostname.com:
$TTL 604800
@ IN SOA fakehostname.com. admin.fakehostname.com. (
2 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
@ IN NS localhost.
@ IN A 10.10.10.10
mail IN A 10.10.10.10
@ IN MX 10 mail.fakehostname.com.
@ IN TXT "hello"