绑定转发未知域

Bind forward Unknown domains

必须配置 BIND,以便将所有不存在的域重定向到内部 Web 服务器。

我尝试了以下配置,失败:

options {
        ...
        recursion yes;
        forward first;
        forwarders { 8.8.8.8; 8.8.4.4; };
        ...
};
...
zone "."
{
    type master;
    file "/etc/named/fakezone.db";
};

这不是 DNS 本身支持的东西。

DNS 基本上是互联网的 phone 书,你问它一个名字,它给你一个号码。如果你问它一个名字,它不知道它会说它不知道。

您可以做到这一点的唯一方法是编写您自己的 DNS 解析器,以便在没有返回答案时 returns 您需要的任何东西。

这样的可能性是,在新版本的BIND >= 9.9。 此配置将所有未解析的域名重定向到指定地址

zone "."
{
    type redirect;
    file "/etc/named/fakezone.db";
};

内容文件区:fakezone.db

$TTL 300
@   IN SOA ns.example.com. admin.example.com. (
        2016020201  ; serial, todays date+todays
        86400       ; refresh, seconds
        7200        ; retry, seconds
        3600000     ; expire, seconds
        86400 )     ; minimum, seconds

@       IN NS ns.example.com.
*.      IN A 127.0.0.1