Bind9:主站->從站通知 IPv6 並回退到 IPv4

Bind9:主站->從站通知 IPv6 並回退到 IPv4

我在雙 IP 堆疊中運行 Debian 8 + Bind9 的兩台機器之間設置了一個小型主->從 DNS 方案。

主設備和從設備都擁有由綁定使用的 IPv4 和 IPv6,由組態參數強制執行listen-on listen-on-v6 transfer-source transfer-source-v6 notify-source notify-source-v6 query-source address query-source-v6 address

目前我的主人設定為通知奴隸:

notify yes;
also-notify { xxxx:xxxx:xxxx:xxxx::xxx5; x.x.x.5; };

因為我的奴隸有一個區域配置,如下所示:

zone "example.dev" {
    type slave;
    masters { xxxx:xxxx:xxxx:xxxx::xxx2; x.x.x.2; };
    file "...";
};

這個設定工作正常,但是透過檢查日誌檔案(正如我預期的那樣),主伺服器會在每次區域更改時通知從伺服器兩次:

May 20 20:57:53 salvedns named[8568]: zone example.dev/IN: notify from x.x.x.2#52041: zone is up to date
May 20 20:57:53 salvedns named[8568]: zone example.dev/IN: notify from xxxx:xxxx:xxxx:xxxx::xxx2#51347: zone is up to date

一次透過 IPv4,另一次透過 IPv6。

有沒有辦法告訴綁定伺服器xxxx:xxxx:xxxx:xxxx::xxx5 x.x.x.5確實是同一 DNS 伺服器的位址,並嘗試先透過 IPv6 通知它,如果失敗則透過 IPv4 重試?另外,如何在藥膏masters聲明上做同樣的事情?

謝謝。

答案1

我不相信有一個配置選項可以滿足您的要求。然而,我也不認為雙重通知真的值得擔心。

雖然在此配置中它是多餘的,但它導致的開銷很小,並且通常根本沒有問題。

一般來說,接收多個通知訊息並不超出正常範圍,最初主要來自master+其他slave,但現在也有雙堆疊主機,甚至最初的規範預期如此

4.2.每個從屬設備可能會收到同一 NOTIFY 請求的多個副本:一份來自主主設備,一份來自其他從屬設備,因為該從屬設備傳輸新區域並通知其潛在的對等方。 NOTIFY 協定透過要求從裝置/主裝置僅在更新 SOA RR 或確定不需要更新(這實際上意味著成功的區域傳輸之後)後才發送 NOTIFY 來支援這種多重性。因此,除非交付重新排序,任何從裝置收到的最後一個 NOTIFY 將是指示最新變更的通知。由於從屬設備始終僅從其已知的主控設備請求 SOA 和 AXFR/IXFR,因此在其每個主控設備完成每個區域更新後,它將有機會重試 SOA 的 QUERY。

相關內容