隐藏的 DNS 主服务器仅向一个从服务器发送通知

隐藏的 DNS 主服务器仅向一个从服务器发送通知

我的隐藏 DNS 主机仅向区域的名称服务器之一发送通知,我有 3 个命名服务器 ns0、ns1 和 ns2,全部运行 bind 9.7.3.dfsg-1ubuntu4.1。

当处理更新时,主机(ns0)似乎表现正常。

ns0 (192.168.2.50)

zone domain.org/IN: sending notifies (serial 2012060703)
client 192.168.2.52#42892: transfer of 'domain.org/IN': AXFR-style IXFR started: TSIG rndc-key
client 192.168.2.52#42892: transfer of 'domain.org/IN': AXFR-style IXFR ended

ns2 (192.168.2.52)

client 192.168.2.50#3762: received notify for zone 'domain.org': TSIG 'rndc-key'
zone domain.org/IN: Transfer started.
transfer of 'domain.org/IN' from 192.168.2.50#53: connected using 192.168.2.52#55747
zone domain.org/IN: transferred serial 2012060704: TSIG 'rndc-key'
transfer of 'domain.org/IN' from 192.168.2.50#53: Transfer completed: 1 messages, 34 records, 1028 bytes, 0.001 secs (1028000 bytes/sec)

ns1 上没有任何反应。我已调高日志记录级别,但 syslog 中没有关于 bind 已向其发送通知的实际名称服务器的信息,因此我猜这是它未记录的内容。

我也尝试过观察 tcpdump,它从不尝试通知 ns1,只通知 ns2

192.168.2.50.56278 > 192.168.2.52.53: [udp sum ok] 56418 notify [b2&3=0x2400] [1a] [1au]
↵ SOA? domain.org. domain.org. [0s] SOA ns1.domain.net. dnsmaster.domain.net. 
↵ 2012060801 10800 3600 604800 3600 ar: rndc-key. ANY [0s] TSIG hmac-md5.sig-alg.reg.int. fudge=300 maclen=16 origid=56418 error=0 otherlen=0 (174)

权威区域同时具有 ns1 和 ns2 记录

$ORIGIN domain.org.
$TTL 3h
@   IN  SOA ns1.domain.net. dnsmaster.domain.net. (
        2012060801  ; Serial yyyymmddnn
        3h  ; Refresh After 3 hours
        1h  ; Retry Retry after 1 hour
        1w  ; Expire after 1 week
        1h )    ; Minimum negative caching of 1 hour

@   3600    IN  NS  ns1.domain.net.
@   3600    IN  NS  ns2.domain.net.

// 编辑

我已经明确添加also-notify {192.168.2.51;192.168.2.52;};到区域文件并且一切正常,ns1 和 ns2 都收到通知消息并且传输成功。

我印象中 bind 会自动向区域上的所有 NS 记录发送通知,也许它有问题?

答案1

您是否尝试过这样设置?

notify-to-soa yes;

来自 BIND 9 配置参考:

通知至 soa

如果是,则不要根据 SOA MNAME 检查 NS RRset 中的名称服务器。通常,NOTIFY 消息不会发送到 SOA MNAME(SOA ORIGIN),因为它应该包含最终主服务器的名称。但是,有时,从服务器在隐藏主服务器配置中被列为 SOA MNAME,在这种情况下,您希望最终主服务器仍向 NS RRset 中列出的所有名称服务器发送 NOTIFY 消息。

答案2

在对此了解不多的情况下,将 SOA 设置为 ns1 是否会使 ns0 足够混乱以阻止其发送更新?

@   IN  SOA ns1.domain.net.

即将其设置为,

@   IN  SOA ns0.domain.net.

修复此问题(尽管我知道这可能会导致其他问题)

相关内容