
powerdns/pdns-recursor-52PowerDNS 是由 PowerDNS.COM BV 及众多贡献者开发的 DNS 软件套件,采用 GNU GPLv2 许可证(详见 NOTICE 文件了解确切许可证及例外条款)。该套件包含 PowerDNS Recursor(DNS 递归服务器)、PowerDNS Authoritative Server(DNS 权威服务器)和 dnsdist(DNS 负载均衡器),三者可从同一源代码仓库构建,并分别以 .tar.bz2、.deb 和 .rpm 格式发布。
所有官方文档请访问:[]
最新更新日志:[]
编译相关附录:[]
Bug 提交地址:[] issue)
本 README 从 GitHub 同步至 Docker Hub。关于 Docker 镜像的详细信息,请参考:[***]
PowerDNS 源代码托管于 GitHub,可通过以下命令克隆:
shgit clone [***]
PowerDNS 各组件编译需依赖以下工具与库(以 Authoritative Server 为例):
shapt install g++ libboost-all-dev libtool make pkg-config default-libmysqlclient-dev libssl-dev libluajit-5.1-dev python3-venv # 从 Git 源码编译时额外依赖 apt install autoconf automake ragel bison flex
shapt install libcurl4-openssl-dev luajit lua-yaml-dev libyaml-cpp-dev libtolua-dev lua5.3 autoconf automake ragel bison flex g++ libboost-all-dev libtool make pkg-config libssl-dev lua-yaml-dev libyaml-cpp-dev libluajit-5.1-dev libcurl4 gawk libsqlite3-dev python3-venv # DNSSEC ed25519 支持(算法 15) apt install libsodium-dev # Generic MySQL 后端 apt install default-libmysqlclient-dev # Generic PostgreSQL 后端 apt install libpq-dev # systemd 服务支持 apt install libsystemd0 libsystemd-dev # GeoIP 后端 apt install libmaxminddb-dev libmaxminddb0 libgeoip1 libgeoip-dev
shautoreconf -vi
编译无模块的基础版本:
sh./configure --with-modules="" --disable-lua-records
编译默认模块(bind、gmysql 内置,pipe-backend 运行时加载):
sh./configure
自定义模块(如同时支持 bind、gmysql、gpgsql):
sh./configure --with-modules="bind gmysql gpgsql"
注意:自定义模块时需安装对应后端开发库(如 PostgreSQL 开发库 for gpgsql)。
shmake # 可选:安装到系统 # make install
详见源代码目录 pdns/recursordist/ 下的 README.md。
详见源代码目录 pdns/ 下的 README-dnsdist.md。
PowerDNS 官方文档由 docs 目录下的 ReStructured Text (rst) 文件通过 Sphinx 生成。构建步骤:
确保已安装编译依赖并生成 configure 文件:
shautoreconf -vi
进入 docs 目录并构建:
shcd docs make html-docs
生成的 HTML 文档位于 html-docs 目录下。
gmake 而非系统默认 makeshexport CXXFLAGS=-std=c++17
shbrew install boost lua pkg-config ragel openssl
sh./configure --with-modules="" PKG_CONFIG_PATH=/usr/local/opt/openssl/lib/pkgconfig
brew install postgresql,配置添加 --with-modules="gpgsql"brew install mariadb,配置添加 --with-modules="gmysql"无特殊注意事项,按通用编译步骤进行即可。
CPPFLAGS 指定 ABI 版本:
sh./configure CPPFLAGS=-D_GLIBCXX_USE_CXX11_ABI=0 # 或 1,根据依赖库 ABI 版本调整






manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务