因此,我们自行托管我们的 DNS 正向和反向区域,并使用我们的上游 ISP 作为从属设备。
现在,我们已经获得了一批具有相同 SOA 记录的区域。
我想对此 SOA 记录使用 $INCLUDE,因为除了序列之外,它是完全冗余的信息。
现在的问题是,所有区域的序列都是相同的,每当我更改单个区域时,我都会增加所有区域的序列,从而触发所有区域向从属设备的不必要重新传输。
现在,这些数据并不多,最多只有几 KiB。但问题是,考虑到重新传输是不必要的,这是否被视为不好的做法?
对此有什么看法?我应该尝试一下吗?
答案1
虽然这个问题几乎可以算是一个基于观点的问题,但我还是要说,客观地说,这是一个坏主意。你陷入了典型的陷阱:过度设计一些不需要过度设计的东西。
- 大多数知名的 DNS 管理员(即知名人士)都会批评这是一种不好的做法。我不必问他们。你也不想让我问他们,因为他们的措辞不会那么礼貌。
- 这不仅会触发一波不必要的区域传输,还会引发一波不必要的 NOTIFY 数据包。DNS 从属服务器将通知传递给通过
NS
记录识别的其他从属服务器的情况相当常见,从而增加了单次更新生成的通知数量。 $INCLUDE
无法在区域传输中存活。虽然您可能已经知道这一点,但值得重申的是,将其分解为包含文件仅在主服务器上有用。
不要仅仅从线路上的字节数来想象这一点。每次你接触其中一个区域文件时,你都会引发多向数据包风暴,以便于集中管理一条 DNS 记录按区域进行管理。虽然通过强调所涉及的“微不足道”的带宽很容易忽略这种影响,但许多资深人士不会对负责设计它的各方留下好印象。也许你现在的商店足够小,你不必担心未来经理的看法,但这是一个非常糟糕的习惯。
简而言之,如果你已经读完了以上所有内容,并且相对来说没有什么感觉,那就去做吧。但要确保你不会处于这样的境地:别人对你的专业看法可能会受到这种环境的影响。