我的 DNS 配置如下所示:
www.example.com 600 IN CNAME prod.myzone.l2.company.example
prod.myzone.l2.company.example 600 IN CNAME ssl-endpoint-12345.hostcorp.example
ssl-endpoint-12345.hostcorp.example 60 IN A 192.0.2.4
因此鏈中前兩條 CNAME 記錄的 TTL 為 10 分鐘,最後一條 A 記錄的 TTL 為 1 分鐘
CNAMEprod.myzone.l2.company.example
在多個端點之間進行區域負載平衡,如果我的 DNS 提供者確定當前端點運行狀況不佳,則會自動更新。因此,我希望prod.myzone.l2.company.example
盡快傳播 CNAME 的變更。
如果我想減少用戶端在prod.myzone.l2.company.example
更改時看到的整體 TTL,是否僅減少記錄的 TTL 就足夠了prod.myzone.l2.company.example
,還是還需要減少www.example.com
記錄上的 TTL?
答案1
for記錄TTL
的CNAME
工作方式與其他記錄沒有任何不同。
讓我們想像一個遞歸解析器,上面的內容透過它進行。然後它用以下內容填充其快取:
www.example.com CNAME
有效期限600秒prod.myzone.l2.company.example CNAME
有效期限600秒ssl-endpoint-12345.hostcorp.example A
有效期限60秒
如果後來有人ssl-endpoint-12345.hostcorp.example A
直接查詢,則適用 60 秒 TTL。
但如果查詢是針對 的www.example.com
,那麼解析器將看到它沒有記錄A
,但有 CNAME,然後重複使用上述所有內容。
在上述之後的 66 秒(例如),www.example.com
仍然在解析器快取中,但ssl-endpoint-12345.hostcorp.example A
不會再存在,因此解析器必須執行新的 DNS 查詢來取得該數據,並將其快取。