Domain-Name-System

如何編寫區域文件以使 DNS 更改沒有延遲?

  • June 12, 2013

我需要在我的域上測試各種 DNS 更改,這需要我所做的區域文件更改快速更新。

我對 Refresh、Retry、Expire 和 TTL 值有點困惑。我需要將哪個設置為最低限度,以“傳播 DNS 更改”(如果我可以使用該術語)而沒有太多延遲?我對名稱伺服器比較陌生,但是將三個名稱伺服器設置為每 2 分鐘 rsync 他們的區域文件。第一個伺服器 (ns1.mydomain) 具有以下設置:

mydomain.com.       IN      SOA     ns1.mainnameserver.co.in. admin.mydomain.com. (
                  2007010401           ; Serial
                        1800           ; Refresh [1h=3600] 1800=30m
                         600           ; Retry   [10m]
                       86400           ; Expire  [2weeks] 86400=1day
                         600 )         ; Negative Cache TTL [1h]
;
$TTL 3m;
mydomain.com.      IN     NS      ns1.mainnameserver.co.in.
mydomain.com.      IN     NS      ns2.mainnameserver.co.in.
mydomain.com.      IN     NS      ns3.mainnameserver.co.in.
mydomain.com.      IN     MX      10 her.mainnameserver.co.in.
mydomain.com.      IN     A       198.13.18.223
www.mydomain.com.  IN     A       198.13.18.223
ns1.mydomain.com.  IN     A       197.18.72.23
ns2.mydomain.com.  IN     A       36.124.102.106
ns3.mydomain.com.  IN     A       36.117.98.133
mydomain.com.     3501    IN     TXT   "v=spf1 a:her.mainnameserver.co.in mx:hermes.mainnameserver.co.in mx: ip4:191.21.218.223 ~all"
*.mydomain.com.   3600    IN      CNAME   mydomain.com.

我假設 TTL 是我需要的值,並且如上所述將其設置為 3 分鐘。這是正確的方法嗎?

在相關說明中..使用上述區域文件,當我執行命名檢查區域時,我得到/var/lib/bind/db.mydomain.com:1: no TTL specified; using SOA MINTTL instead. 為什麼會顯示此消息?如何避免警告並正確執行?

TTL 絕對是您需要的值。

你試過在幾秒鐘內寫出來嗎?將您的 TTL 值設置為以下值:

$TTL 180;

我相信你得到的錯誤是因為你用了分鐘。它不理解您實際上已指定 TTL,因此預設返回為 SOA MINTTL 值。

請記住重新啟動綁定並執行新的命名檢查區域!

此頁面還以一種很好的方式描述了您所追求的 -連結

引用自:https://serverfault.com/questions/515176