我正在调查一堆垃圾邮件域,但没有一个有 SOA 记录。我以前从未见过这种情况——我什至不知道这是可能的。
如果没有 SOA 记录,DNS 如何工作?如果它不是绝对必要的,那么省略它的含义是什么?
我并不特别想添加指向垃圾邮件站点的链接,但一个示例域是“vance miller kitchens uk dot co dot uk”。
我正在调查一堆垃圾邮件域,但没有一个有 SOA 记录。我以前从未见过这种情况——我什至不知道这是可能的。
如果没有 SOA 记录,DNS 如何工作?如果它不是绝对必要的,那么省略它的含义是什么?
我并不特别想添加指向垃圾邮件站点的链接,但一个示例域是“vance miller kitchens uk dot co dot uk”。
事实上有一个
SOA
记录,它只是不是你所期望的。让我们看一下 AUTHORITY 部分...请记住,这ns1.nservers.co.uk.
与名称服务器没有任何关联,这些nic.uk.
名称服务器对co.uk.
.这暴露了它们的实际配置:它们
co.uk
定义了一个区域。这简化了他们的配置,因为他们只需要维护一个文件。您没有得到SOA
请求的答案部分的原因是因为这不是该区域的真正顶部。请记住,这是一个糟糕的配置:您永远不应该假装对您不是的域具有权威性。不要模仿这个。SOA
记录是强制性的。如果您希望 Internet 的其余部分与您很好地配合,您必须在 RFC 要求的 AUTHORITY 部分中添加一些内容。显然,它们对 . 来说并不是真正的权威co.uk
,但这至少告诉其他名称服务器负 TTL 应该是什么。SOA
根据 DNS 规范,在子名称服务器上每个区域的顶点记录是强制性的,请参阅RFC 2181 的 §6.1:没有 SOA 的区域则不符合 DNS。名称服务器将在加载时拒绝它:
也许您可以找到一个可行的设置,但为什么要冒险呢?
除了根据规范强制之外,SOA 记录中至少有 3 项是客户端需要的(如果其名称服务器集使用 AXFR/IXFR/DNS 更新来更新自己,则所有其他项仅对名称服务器管理员有用) :
RNAME
通常是区域负责人的电子邮件地址,如果出现问题,您可以联系该地址;不幸的是,现在你可能在那里得不到答案,或者它甚至可能不是一个有效的现有邮箱,所以理论上很有用,实际上不确定DNS 更新需要RFC 2616的第
MNAME
4.3 节:MINIMUM
已在一年中重新定义为“负 TTL”,即缓存可以保留NXDOMAIN
收到的回复的时间量(因为NXDOMAIN
根据定义,回复将不会在答案部分返回任何记录,因此不会有任何 TTL 都可以找到)。请参阅RFC 2308的§5 :NXDOMAIN
正如RFC 8020“NXDOMAIN:下面真的没有”中所述,正确缓存回复对性能很重要:如果名称触发NXDOMAIN
回复,则递归名称服务器可以在缓存条目期间立即回复所有名称“下面”这个查询,因为它知道下面不能存在任何名称,根据 DNS 设计,将所有名称都放在树中。此外,多个注册表在允许进行委派之前测试配置。英国不是这种情况,但例如 DENIC (.DE) 就是这种情况。请参阅https://www.denic.de/fileadmin/public/documentation/DENIC-23p_EN.pdf中的第 2.1.4 节,其中概述了 SOA 测试。
各种工具也会检查它。请参阅https://zonemaster.net/上的Zonemaster 以及https://github.com/zonemaster/zonemaster/blob/master/docs/specifications/tests/Delegation-TP/delegation06.md上的 SOA 测试说明
SOA 记录几乎可以调节 DNS 服务器的身份和更新频率。如果您的 DNS 服务器是域的唯一权威 DNS 服务器(或者您控制所有权威并喜欢手动操作),您可以忽略 SOA 记录而几乎没有影响。唯一的影响可能是某些响应缓存不会发生。
总结:DNS 可以在没有 SOA 的情况下正常工作,SOA 只是调节对辅助服务器的更新和缓存。因此,没有 SOA 记录是一个非常糟糕的主意。