即使DNS控制面板顯示預期的結果,身份驗證查找也可能失敗 TXT記錄。驗證解析器也必須確定答案是否可信。一個壞了 DNSSEC 因此鏈可以中斷訪問 SPF, DKIM 或傳輸安全資料而不改變其可見文字。
將症狀與原因分開
參考: RFC 4035 §3.2.2, RFC 4035 §5.5.
擷取確切的擁有者名稱、查詢類型、解析程式、時間和回應。 SERVFAIL本身並不是DNSSEC診斷。逾時、無法存取的權限和其他解析器故障可能會產生相同的回應代碼。將正常驗證查詢與來自相同受信任解析器的驗證診斷進行比較,並檢查委託鏈。
查詢使用 挖掘+dnssec 請求DNSSEC記錄;它並不能使 dig 成為一個完整的本地驗證器。禁用檢查的查詢可以幫助揭示驗證拒絕的數據,但繞過驗證所獲得的答案並不能證明生產依賴關係是健康的。將該診斷結果與普通應用程式的結果分開。
一起追蹤父母和孩子
參考: RFC 4035 §5, RFC 7208 §4.6.2, RFC 6376 §6.1.2, RFC 7672 §2.1.
檢查父 DS、子 DNSKEY、涵蓋所要求記錄的簽章及其有效性間隔。檢查驗證器的時鐘和信任配置。金鑰更換後父 DS 失效、簽章過期或 DNSKEY 資料不可用是不同的故障,需要不同的修復。故意未簽名且沒有經過驗證的無 DS 證明的委託是不安全的,不會自動偽造。
對於電子郵件,記錄受影響的實施執行的操作。 SPF DNS錯誤可能會導致 temperror; DKIM查找失敗並不能證明該郵件是偽造的。 SMTP DANE 當需要驗證時具有更嚴格的傳輸後果 TLSA 數據無法驗證。不要將這些結果歸結為DNSSEC拒絕所有郵件的普遍主張。
使用受控的斷裂和修復夾具
參考: RFC 4035 §5.2, RFC 6698 §2.1.
在一次性層次結構中,符號 mailtest.example 使用金鑰 A 並安裝相符的父 DS。查詢其MX和 _25._tcp.mx.mailtest.example 透過錨定到測試父級的驗證器進行 TLSA。儲存安全基線、DNSKEY 設定、DS 和簽章時間。將子金鑰替換為 B,同時故意在父金鑰處僅保留 A 的 DS。預期結果是驗證失敗,而不是無害的無符號轉換。
恢復相容的簽名鏈並在考慮快取的委託和密鑰材料後重複相同的查詢。將憑證的 DER subjectPublicKeyInfo SHA-256 與 3 1 1 單獨的 TLSA 關聯:匹配位元組不會修復損壞的DNS鏈。這指定解析器和SMTP行為;下面保留的離線加密檢查不會執行這些網路路徑。
用有限的證據結束事件
參考: RFC 6781 §4.3.5.
透過授權的DNS運營商修復實際的鍊或簽名錯誤。不要將刪除 DS 資料作為臨時的通用解決方法;這會改變保護並產生依賴快取的後果。保留來自權威伺服器的前後回應和相關驗證路徑,然後測試受影響的郵件流。關閉應該說明哪些名稱已驗證以及哪些郵件測試成功,以及時間戳記和剩餘覆蓋範圍限制。
保留獨立的驗證證據
參考: RFC 4035 §5.
2026 年 11 月 7 日保留的綜合實驗室已檢查但未重新運行本次審查,針對固定的測試父 DNSKEY 執行了 dnspython 2.9.2 加密檢查。它驗證了父 DNSKEY 和 DS 簽名,將子 DNSKEY 與經過驗證的 DS 進行匹配,並驗證了子 DNSKEY 和 TLSA 簽章。相容的基線和恢復的鏈已驗證。僅舊父 DS 下的僅新子金鑰未透過明確 DS 匹配。追蹤保留 DS、DNSKEY、RRSIG、驗證紀元和每次檢查。這是離線簽章鏈驗證,而不是遞歸解析器的SERVFAIL追蹤或即時郵件中斷。本地憑證金鑰比較單獨保留;生產和SMTP結果仍未經過測試。