getdns API:我如何知道RESPSTATUS_NO_NAME响应是否安全



我正在使用Python getdns API。

我使用扩展名:

extensions = {"dnssec_return_validation_chain" : getdns.EXTENSION_TRUE}

这意味着我被告知响应是否使用回复字典中的dnssec_status选项进行DNSSEC保护。(results.replies_tree是应答字典数组)

如果没有名称(例如results.status==getdns.RESPSTATUS_NO_NAME),查询可以无应答。

在这种情况下,我如何知道RESPSTATUS_NO_NAME响应是否使用DNSSEC进行身份验证?

当状态为getdns.RESPSTATUS_NO_NAME时,replies_tree 包含一个空"answer"部分的回复,并返回代码NXDOMAIN。即result.replies_tree[0]['header']['rcode']==getdns.RCODE_NXDOMAIN

当使用dnssec扩展时,这些回复将包含"authority"部分不存在的证明(当安全时),并且包含dnssec_status,就像包含答案的回复一样。

当状态为不安全且使用dnssec_return_validation_chain扩展名时,result.validation_chain将包含在查询域的一个祖先中不存在安全委托的证明

相关内容

  • 没有找到相关文章

最新更新