
我在家中使用 BIND 作為 DNS 伺服器。對於我的授權開始(SOA 記錄),我始終使用建議格式的序號
年年月日##
##
當天更改的櫃檯在哪裡。
不幸的是,我更改了序號並錯誤地添加了 1 位數字。更新名稱守護程序後,我無法再恢復此狀態。
有沒有可能的方法來重置 BIND 內部庫中的串列/計數器?
答案1
如果您可以透過 shell 存取所有從屬伺服器,則有一個更簡單的解決方案:
為了能夠減少從屬伺服器上的序號,您可以登入從屬伺服器並執行rndc retransfer my.zone.name
.這將導致從設備從主設備獲取區域並完全忽略序號。
答案2
「BIND 的內部庫」並不關心序號是什麼。只有主伺服器和從伺服器之間的協定才是重要的。換句話說,BIND 會很高興地讓您減少區域文件中的序號,而不會抱怨。
區域檔案序號是無符號 32 位元整數,它們環繞最大可能的 32 位元無符號整數。因此,有一種方法可以透過重複增加序號直到它翻轉並變得接近零來減少序號。一次可以增加的最大數量,因此您必須分多個步驟迭代執行此操作:
- 大幅增加序號,但不超過 2147483647
- 等待所有從屬伺服器趕上並與當前 SOA 保持同步。
- 重複
您始終可以選擇一個增量,這樣就不需要迭代兩次以上。
跟隨本指南。