2

我已经在 Debian 9 上成功设置了一个 PowerDNS (4.0.4-1+deb9u4) 和一个 MySQL 后端,并且系统正在正确解析主机。我正在尝试将脚本添加到递归器并使用示例Lua script examples。我已将 pdns-resolver 的 conf 正确指向了我的 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 error (a.root-servers.net/A from 127.0.0.1): Trying to cast a lua variable from "nil" to "b"意味着 DNSQuestion 实例为空)。

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

有什么我可能误解或遗漏的东西会导致参数为零吗?

4

1 回答 1

1

让您的函数返回,true否则默认情况下false它不会返回nil

于 2019-11-10T11:19:26.853 回答