
我有一個本地 DNS 伺服器,如下所示:
client -> bind (only handle local names) -> dnsmasq (handle other names)
這個問題是當名稱是 CNAME 時,dnsmasq 同時傳回 CNAME 和 IP,這是預期結果。但是當bind看到一個CNAME時,它總是會啟動一個單獨的CNAME查詢,並且該查詢會傳送到意外的DNS伺服器。
例如:
static.test.com
在 dnsmasq 中配置了伺服器8.8.8.8
,其 CNAME 為xxx1234343.cloudfalre.com
。
預期結果是伺服器8.8.8.8
完成所有 DNS 工作,客戶端應該收到來自 的回應8.8.8.8
。
但在這種情況下,bind 會再次進行 CNAME 查詢,這次查詢名稱為xxx1234343.cloudflare.com
,並且查詢將轉到除 之外的另一個 DNS 伺服器8.8.8.8
。
如何配置bind使用查詢結果,並再次停止解析CNAME?