BIND9: 特定のIPアドレスに通知を送信する

BIND9: 特定のIPアドレスに通知を送信する

2 台のマシン間でバインド マスター -> スレーブ設定を実装しようとしていますが、スレーブ マシンに通知するためにマスターで使用される BIND の IP アドレスに関して問題があります。

私の設定は次のとおりです:

Master: master.site.com - 10.0.0.2
Slave: slave.site.com - 10.0.0.10

マスターは権限ゾーンを持っており、site.comゾーンが変更されるとすべてのスレーブに通知するように設定されています。ゾーンは正常に動作しています。クエリに正常に応答し、dig @10.0.0.2 -t SOA site.com

それで、マスターではこれを持っていますnamed.conf.options:

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

    dnssec-validation auto;
    auth-nxdomain no;

    listen-on { 10.0.0.2; };
    listen-on-v6 { any; };
    allow-query     { any; };
    recursion yes;
    allow-recursion { localhost; };
    allow-notify { localhost; };
    allow-transfer { localhost; 10.0.0.10; };
    version none;

    notify yes;
    also-notify { 10.0.0.10; };

};

スレーブについて:

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

    dnssec-validation auto;
    auth-nxdomain no;

    listen-on { 10.0.0.10; };
    listen-on-v6 { any; };
    allow-query     { any; };
    recursion yes;
    allow-recursion { localhost; };
    allow-notify { localhost; 10.0.0.2; };
    allow-transfer { localhost; 10.0.0.2; };
    version none;
};

まず、通知が機能していないようですtcpdump。スレーブ マシンで使用すると、次のメッセージが表示されました。

02:32:50.269377 IP 10.0.0.1.15271 > 10.0.0.10.53: 64103 notify [b2&3=0x2400] [1a] SOA? site.com. (85)
02:32:50.269662 IP 10.0.0.10.53 > 10.0.0.1.15271: 64103 notify Refused- 0/0/0 (27)

ご覧のとおり、マスターは10.0.0.2通知を送信するときにリッスンするように設定されていますが、通知はメイン IP アドレスを使用して送信されており10.0.0.1、論理的にはスレーブが通知を拒否しています...

なぜマスターは通知を送信しないのですか10.0.0.2?それを強制できる設定はありますか?マシンは3つのIPを所有しています。1つはWebサイト用、もう1つは電子メール用、もう1つはDNS用です...それを作る必要がありますのみDNS に使用します10.0.0.2が、listen-on送信トラフィックでは機能しないようです...

これをどうすれば修正できますか?

答え1

オプションを探していますnotify-sourceバインドアーム:

通知元

通知ソースは、NOTIFY メッセージを送信するために使用するローカル ソース アドレスと、オプションで UDP ポートを決定します。このアドレスは、スレーブ サーバーのマスター ゾーン句または allow-notify 句に指定する必要があります。このステートメントはすべてのゾーンの通知ソースを設定しますが、構成ファイルのゾーンまたはビュー ブロック内に通知ソース ステートメントを含めることで、ゾーンごとまたはビューごとに上書きできます。

BIND がこのように動作する理由は、ほとんどのアプリケーションでかなり一般的です。ローカルで開始されたトラフィックの送信元 IP は、デフォルトで、ルートに関連付けられたインターフェイスのプライマリ IP になります。Linux システムでは、キーワードにip route show続く値を入力して確認することで、各ルートに関連付けられた送信元 IP を表示できますsrc

関連情報