PowerDNS recursor中的Lua CNAME解析

时间:2016-05-22 01:53:09

标签: lua powerdns

PowerDNS recursor提供了通过Lua实现后端的功能。当Lua脚本返回一组带有CNAME条目的记录时,CNAME将被设置的外部DNS服务器解析,而不会在解析记录时调用Lua脚本。

这是现在正在发生的过程:

  • 客户:PowerDNS,请解析example.com吗?
  • PowerDNS调用Lua脚本,该脚本返回指向anotherexample.com的CNAME。
  • PowerDNS通过其配置中的DNS服务器解析anotherexample.com,而无需再次调用Lua脚本。

在最后一步中,PowerDNS理想情况下应该在通过外部DNS服务器解析之前再次调用Lua脚本。

您可以使用以下Lua脚本重现此内容:

function postresolve(remoteip, domain, qtype, origrecords, origrcode)
    print ("Resolving through Lua.")
    return {content = "example.com", ttl = 60, qtype = 5 }
end

注意如何再次调用脚本来解析example.com(即使这会以无限循环结束。想法是能够重现问题)。

是否有可能通过Lua重新解决,如果是,我错过了什么?

0 个答案:

没有答案