PowerDNS - DNSQuestion 一直为 nil

我已经成功地在Debian 9上设置了PowerDNS (4.0.4-1+deb9u4),并且使用MySQL后端系统正确解析主机。我试图为重复器添加脚本,并使用了 Lua 脚本示例。我已经正确地将pdns-resolver的配置指向了我的lua脚本,我看到我的日志陈述正确地打印出来,但是我始终收到有关所有示例lua函数中 DNSQuestion 实例为空的错误。

例如:

function preresolve(dq)
    pdnslog("Got question for "..dq.qname:toString().." from "..dq.remoteaddr:toString().." to "..dq.localaddr:toString())
    return true;
end

结果是: STL 错误(来自127.0.0.1的a.root-servers.net / A):尝试将 lua 变量从"nil"转换为"b" (意味着DNSQuestion实例为空)。

显然lua脚本正在运行,但出于某种原因,所有的dq实例都为空。

是否有什么我可能误解或错过,会导致参数为空?

点赞
用户2858170
用户2858170

让你的函数返回 truefalse,这样默认情况下它就不会返回 nil

2019-11-10 11:19:26