最近 新版本的發布 DNS緩存 PowerDNS 資源 4.7,它負責遞歸名稱解析。 PowerDNS Recursor 基於與 PowerDNS Authoritative Server 相同的代碼庫,但 PowerDNS Recursive 和 Authoritative DNS 服務器是通過不同的開發週期開發的,並作為單獨的產品發布。
送達的r 提供遠程統計收集工具,支持即時重啟,內置Lua語言驅動連接引擎,全面支持DNSSEC、DNS64、RPZ(Response Policy Zones),允許連接黑名單。
解析結果可以寫為 BIND 區域文件。 為了確保高性能,在 FreeBSD、Linux 和 Solaris(kqueue、epoll、/dev/poll)中使用了現代連接多路復用機制,以及能夠處理數万個並行請求的高性能 DNS 數據包嗅探器。
PowerDNS Recursor 4.7的主要新功能
在此新版本中,突出顯示了 實現了添加額外記錄的能力 發送給客戶端的響應以傳達有用的信息,而無需發送單獨的請求(例如,對 MX 記錄請求的響應可以配置為附加相關的 A 和 AAAA 記錄)。
阿德瑪斯 提到了對 RFC 9156 要求的實施考慮 實現對請求名稱縮小(“QNAME 縮小”)機制的支持,該機制通過不再將完整的原始 QNAME 名稱發送到上游服務器來提高機密性。
新版本中另一個引人注目的變化是 提供 IPv6 地址解析和 DNS 服務器 未在 GR 記錄中列出 (膠水記錄)註冊商通過它傳輸有關為域提供服務的 DNS 服務器的信息。
其他變化 從這個新版本中脫穎而出:
- 提出了一種DNS服務器單向驗證DoT協議支持(DNS over TLS)的實驗實現。
- 添加了在輔助 NS 記錄集服務器沒有響應時回退到主 NS 記錄集的功能。
- 添加了對驗證從緩存中檢索到的 ZONEMD RR (RFC 8976) 的支持。
- 添加了附加 Lua 語言處理程序的功能,在解析完成階段調用(例如,在此類處理程序中,您可以更改返回給客戶端的響應)。
最後,如果您想了解更多信息,可以在 以下鏈接。
獲取PowerDNS Recursor 4.7.0
對於那些對獲取PowerDNS Recursor 4.7感興趣的人,您應該知道源代碼在GitHub上可用。
要獲取代碼,只需打開終端並輸入以下命令:
git clone https://github.com/PowerDNS/pdns.git
該存儲庫包含PowerDNS Recursor,PowerDNS授權服務器和dnsdist(功能強大的DNS負載平衡器)的源。 所有這三個都可以從該存儲庫中構建。
可以在pdns-builder的幫助下構建不同的版本,後者使用基於Docker的構建過程。 要開始使用此命令,請在此存儲庫的根目錄中運行以下命令:
git submodule init
git submodule update
./builder/build.sh
對於那些是Ubuntu用戶的用戶,他們可以通過鍵入以下命令來執行構建:
sudo apt install autoconf automake ragel bison flex
sudo apt 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 virtualenv lua-yaml-dev libyaml-cpp-dev libluajit-5.1-dev libcurl4 gawk libsqlite3-dev
apt install libsodium-dev
apt install default-libmysqlclient-dev
apt install libpq-dev
apt install libsystemd0 libsystemd-dev
apt install libmaxminddb-dev libmaxminddb0 libgeoip1 libgeoip-dev
autoreconf -vi
並編譯一個非常乾淨的版本,請使用:
./configure --with-modules="" --disable-lua-records
make
# make install
以相同的方式,他們可以查閱文檔並獲取可從軟件代碼存儲庫中獲得的預構建PowerDNS軟件包(deb和rpm)。 他們可以諮詢它 通過轉到以下鏈接。