特権DNSサーバーを実行できません(BIND9)。

特権DNSサーバーを実行できません(BIND9)。

私は学校の課題のためにDebianサーバーでBIND9 DNSサーバーを操作しようとしています。問題は、dig -t soa my.domain.com @ns.my.domain.com.teacherを使用してDNSサーバーをテストしようとすると、dig: couldn't get address for 'ns.my.domain.com': failure教師が自動チェックを実行していること、および「SOAレコードの不一致」というメッセージのみが表示されることです。私は完全に暗闇の中にいました。

以下は、IPアドレスと名前の概要です(個人情報保護用に構成されています)。

My server: my.domain.com 123.123.123.100
Name server 1: ns1.school.com 123.123.123.101
Name server 2: ns2.school.com 123.123.123.102
Test server: 123.123.123.103

このIPアドレスは先生が私に提供したものです。テストサーバーは2時間ごとに自動チェックを実行して、モジュールが正しく機能していることを確認します。

を実行すると、systemctl status bind9次のメッセージが複数回表示されます。

client 123.123.123.103#51478 (my.domain.com): zone transfer 'my.domain.com/AXFR/IN' denied

何が間違っているのかわかりません。誰でも私を正しい方向に案内できますか?

構成

名前付き.conf.オプション

options {
        directory "/var/cache/bind";
        recursion no;
        allow-transfer { none; };

        dnssec-validation auto;

        auth-nxdomain no;    # conform to RFC1035
        listen-on-v6 { any; };
};

名前.conf.local

zone my.domain.com {
        type master;
        file "/etc/bind/zones/db.my.domain.com";
        allow-transfer { 123.123.123.101; 123.123.123.102; };
};

ゾーン/db.my.domain.com

@       IN      SOA     ns.my.domain.com. [email protected]. (
                     2018082501         ; Serial
                         604800         ; Refresh
                          86400         ; Retry
                        2419200         ; Expire
                         604800 )       ; Negative Cache TTL
;

; Name servers
my.domain.com.   IN      NS      ns.my.domain.com.
my.domain.com.   IN      NS      ns1.school.com.
my.domain.com.   IN      NS      ns2.school.com.

; A records for name servers
ns      IN      A       123.123.123.100
ns1     IN      A       123.123.123.101
ns2     IN      A       123.123.123.102
www     IN      A       123.123.123.100
test    IN      A       123.123.123.103

ベストアンサー1

示した設定で修正する必要があるいくつかの点があります。

  • ドメイン名ファイルzones/db.mydomain,comzones/db.mydomaon.com
  • 提供されたエラーについては、テストシステム123.123.123.103へのドメイン転送が拒否されたことがわかります。したがって、次のようにDNS転送を許可するサーバーに追加することでこれを許可できます。

    転送を許可{123.123.123.101; 123.123.123.102;123.123.123.103;};

これを変更したら、BINDを再起動する必要があります。

テストサーバーが送信する必要がある実際のファイルに対してスクリプト/テストを実行していると信じる理由があるため、エラーが発生します。

  • ns1とns2がすでにschool.comドメインに登録されている場合は、そのドメインに再登録する必要はないようですmydomain.com(実際、多くの専門家が同じ間違いを犯しているのを見ました)。

  • マシンテストの場合、school.comに属するかmydomain.comに属するかは完全には明確ではありません。

digコマンドが失敗した場合は、次のようにIPアドレスを入力します。

サーバー内にある場合:

dig -t soa my.domain.com @127.0.0.1

または実際には良いです:

dig -t soa my.domain.com @123.123.123.100

最後に、1週間の否定的なキャッシュTTLは高すぎます。 30分でも1時間でも使います。

おすすめ記事