DNS 根區 10 月 11 日改用 KSK-2024 簽章
Cloudflare Blog · 2026-10-06
DNS 根區的簽章金鑰(KSK)將在 2026-10-11 從 KSK-2017 換成 KSK-2024,沒有信任新金鑰的 DNSSEC 驗證 resolver,換簽之後會把所有簽章過不了的查詢回成 SERVFAIL。這是根區第二次 KSK 輪替,上一次是 2018 年。
Cloudflare 在官方文章說明檢查方式,ICANN 也在輪替頁面公告了同一個日期。
原本的問題
DNSSEC 的信任鏈從根區的 KSK 開始。每一台做 DNSSEC 驗證的 resolver 都要預先存有根區的信任錨(trust anchor),之後才能一路驗證到網域的簽章。信任錨一旦過期或缺少新金鑰,resolver 就無法驗證新簽章。
這不是網站管理者的事,而是 resolver 維運者的事。新舊金鑰比較如下:
| 項目 | KSK-2017 | KSK-2024 |
|---|---|---|
| Key tag | 20326 | 38696 |
| 演算法 | RSA/SHA-256 | RSA/SHA-256 |
| 狀態 | 目前簽章中 | 2025-01-11 已進入根區 DNSKEY 集合,2026-10-11 起簽章 |
演算法沒有換,只換金鑰本身,所以這次的風險不在密碼學相容性,而在「信任錨有沒有更新」。
核心機制:信任錨如何更新
多數 resolver 靠 RFC 5011 自動更新信任錨:新金鑰先被發布在 DNSKEY 集合,resolver 看到後自行加入信任。這也是 KSK-2024 提早在 2025 年就發布的原因。
ICANN 的頁面特別提醒:不要假設自動更新一定成功。若新金鑰不在信任錨設定裡,要確認自動更新有開啟,並依各家廠商的指引處理。
Cloudflare 自己的 1.1.1.1 在 2024 年 7 月已把 KSK-2024 加進內建信任錨,所以使用 1.1.1.1 與 Gateway DNS 的人不受影響。
影響範圍與檢查方法
受影響的是自己架設 DNSSEC resolver 的人:內網的 BIND、Unbound、Knot Resolver,以及 NAS、路由器、容器內自帶的 resolver。長期沒更新軟體、信任錨檔案被固定住、或關掉自動更新的環境最容易出事。網站營運者一般不用改任何設定。
檢查可用 RFC 8509 的 trust anchor sentinel。Cloudflare 提供測試頁 https://dnstest.dev/ksk-2024/,也可直接用 dig:
dig @<你的 resolver> root-key-sentinel-is-ta-38696.dnstest.dev. A
dig @<你的 resolver> root-key-sentinel-not-ta-38696.dnstest.dev. A判讀方式:若 resolver 信任 38696,第一個名稱會回有效答案,第二個名稱會回 SERVFAIL。兩者反過來或都正常回應,代表這個 resolver 還沒信任 KSK-2024,或不支援 sentinel。
後續時程
2026-10-11:根區改用 KSK-2024 簽章。- 2027 年:ICANN 計畫撤銷 KSK-2017、移除並銷毀私鑰,見 Cloudflare 文章。確切日期該文未載明。
要檢查的對象包括公司內部 DNS、分支機構路由器,以及 CI 環境使用的 resolver。在 10 月 11 日之前跑完上面兩條查詢,比換簽後排查 SERVFAIL 容易得多。