web-dev-qa-db-ja.com

BIND9(転送)で表示を使用して特定のドメインクエリを解決

Bind9でホワイトリストに登録されたドメインフォワーダーをセットアップしようとしていますが、適用した構成が原因で、正常に実行されませんでした。

数か月前、Bind9で複数のビューを使用して同じ概念DNSをセットアップしましたが、期待どおりに完全に機能します。

今何が起こっているのか:ビューはgmail.comのみを転送するように構成されています)172.22.172.32/27からのクライアントがgmail.com以外のクエリを実行するときはいつでもドメインの場合でも、DNSは、失敗が予想される/想定されるクライアントのIPを解決できます。

現在の構成で実行する必要のある適切な解決策や微調整はありますか?

バインドバージョン:9.9.5

---(named.conf

include "/etc/bind/named.conf.options";
include "/etc/bind/named.conf.local";
view "wifi-test" {
        match-clients {
                172.22.172.32/27;
        };
                zone "gmail.com" {
                        type forward;
                        forward only;
                        forwarders {
                                1.1.1.1;
                        };
                };
        //include "/etc/bind/named.conf.default-zones";
        recursion yes;
};

named.conf.options

options {
        directory "/var/cache/bind";

        // Accept request
        allow-query-cache { 172.22.172.32/27; };
        allow-query { 172.22.172.32/27; };
        //allow-recursion { servers; };

        // If there is a firewall between you and nameservers you want
        // to talk to, you may need to fix the firewall to allow multiple
        // ports to talk.  See http://www.kb.cert.org/vuls/id/800113

        // If your ISP provided one or more IP addresses for stable
        // nameservers, you probably want to use them as forwarders.
        // Uncomment the following block, and insert the addresses replacing
        // the all-0's placeholder.

        //forward only;
        //forwarders {
        //      8.8.8.8;
        // };

        //========================================================================
        // If BIND logs error messages about the root key being expired,
        // you will need to update your keys.  See https://www.isc.org/bind-keys
        //========================================================================

        // DNSSEC
        dnssec-validation auto;
        //dnssec-enable yes;
        //dnssec-lookaside auto;

        //key-directory "/etc/bind/keys";

        #fetch-glue no;
        recursion no;

        auth-nxdomain no;    # conform to RFC1035
        listen-on-v6 { none; };
        //listen-on port 53 { localhost; 172.22.172.41; };

        // Exchange port between DNS Servers
        //query-source address * port *;

        // From 9.9.5 ARM, disables interface scanning to prevent unwanted stop listening
        //interface-interval 0;

        // Version 
        version "SecDNS";

        //bindkeys-file "/etc/bind/bind.keys";

};

named.conf.local

// Manage the file logs
include "/etc/bind/named.conf.log";

クエリログ

queries: info: client 172.22.172.48#59842 (gmail.com.mytd.com): view wifi-test: query: gmail.com.mytd.com IN A + (172.22.172.41)
queries: info: client 172.22.172.48#59843 (gmail.com.mytd.com): view wifi-test: query: gmail.com.mytd.com IN AAAA + (172.22.172.41)
queries: info: client 172.22.172.48#59844 (gmail.com): view wifi-test: query: gmail.com IN A + (172.22.172.41)
queries: info: client 172.22.172.48#59845 (gmail.com): view wifi-test: query: gmail.com IN AAAA + (172.22.172.41)

queries: info: client 172.22.172.48#53702 (www.forum.com.mytd.com): view wifi-test: query: www.forum.com.mytd.com IN A + (172.22.172.41)
queries: info: client 172.22.172.48#53703 (www.forum.com.mytd.com): view wifi-test: query: www.forum.com.mytd.com IN AAAA + (172.22.172.41)
queries: info: client 172.22.172.48#53704 (www.forum.com): view wifi-test: query: www.forum.com IN A + (172.22.172.41)
queries: info: client 172.22.172.48#53705 (www.forum.com): view wifi-test: query: www.forum.com IN AAAA + (172.22.172.41)
1
Shann

私は解決策を見つけました!それはすべて、自動またはいいえの代わりにyesを選択することを強制したdnssec-validationに関するものです。

view "Test" {
        match-clients { 172.22.172.32/27; };
        minimal-responses yes;     
        include "/etc/bind/named.conf.local"; #Whitelist Domains
        include "/etc/bind/zones/hostedzones"; #Zones Files

        forward only;
        forwarders { 0.0.0.0; };
        recursion yes;
}; 

view "Others" {
        match-clients { any; };

        minimal-responses yes;

        include "/etc/bind/named.conf.local"; #Whitelist Domains
        include "/etc/bind/zones/hostedzones"; #Zones files 

        forward only;
        forwarders {};
        recursion yes;
};

基本的に、ここでの構成では、"Others"が他のドメインにクエリを実行できるようになっています。"Test"は、インクルードファイルとforwarders { 0.0.0.0; };にあるものにのみクエリを実行できます。他のクエリフォワーダーは0.0.0.0に転送しようとし、最終的にはconnection refused resolvingになります。

注:「named.conf.local」にはすべてフォワードゾーンがあります。

また、Bindバージョン9.10.3にアップグレードします。

0
Shann