Domain-Name-System

如果不添加粘合記錄,我自己的名稱伺服器就無法工作,為什麼?

  • December 29, 2020

我不明白這一點。在我讀到的所有地方,膠水記錄只需要防止循環依賴,例如我想為 example.com 域名設置 ns1.example.com 和 ns2.example.com 名稱伺服器。

但根據我的經驗,這不是真的。我想創建自己的名稱伺服器,例如 ns1.example.com 和 ns2.example.com。Example.com 是我的域名,我的域名伺服器已經有 2 個 IP,並且域名伺服器可以正常工作。我只需要為我的名稱伺服器 IP 創建主機名。

所以我使用 DNS 區域文件編輯器為我的 example.com 域名添加了 2 個 A 記錄 (ns1.example.com. 300 IN A

$$ nameserverip1 $$和 ns2.example.com。300 英寸$$ nameserverip2 $$)。Example.com 使用外部 DNS 服務,它永遠不會使用 ns1.example.com 和 ns2.example.com 名稱伺服器,因此理論上不需要粘合記錄。 然而,這就是我所經歷的:有 example.net,我想為 example.net 使用 ns1.example.com 和 ns2.example.com 名稱伺服器,你猜怎麼著,它不起作用。因為當我嘗試輸入這些名稱伺服器時,我收到錯誤:找不到實體引用

$$ host ns1.example.com not found. $$ 但是在我打開我的 example.com 域名註冊商的控制面板並註冊 ns1.example.com 和 ns2.example.com 名稱伺服器(我創建粘合記錄)之後,它就會起作用。

但是我想避免設置膠水記錄,因為我無法控製膠水記錄的TTL,所以如果IP發生變化,我可能會遇到停機。

為什麼只添加 ns1.example.com 和 ns2.example.com 的 A 記錄還不夠?為什麼我必須在我的域名註冊商處註冊它們?

更新:根據我的經驗,這只是 .com、.net 和 .org 域名的問題。即使沒有循環依賴,這些 TLD 是否確實需要粘合記錄?因為例如當我使用 ns1.example.hu 和 ns2.example.hu 名稱伺服器時,它們僅適用於 A 記錄而沒有粘合記錄。似乎 .hu 根伺服器的行為與 .com 根伺服器不同?

comnet共享一組權威域名伺服器:

$ dig @f.root-servers.net. +noall +authority +norecurse com
net.                    172800  IN      NS      b.gtld-servers.net.
net.                    172800  IN      NS      h.gtld-servers.net.
net.                    172800  IN      NS      c.gtld-servers.net.
net.                    172800  IN      NS      j.gtld-servers.net.
net.                    172800  IN      NS      f.gtld-servers.net.
net.                    172800  IN      NS      l.gtld-servers.net.
net.                    172800  IN      NS      m.gtld-servers.net.
net.                    172800  IN      NS      k.gtld-servers.net.
net.                    172800  IN      NS      d.gtld-servers.net.
net.                    172800  IN      NS      i.gtld-servers.net.
net.                    172800  IN      NS      e.gtld-servers.net.
net.                    172800  IN      NS      a.gtld-servers.net.
net.                    172800  IN      NS      g.gtld-servers.net.

$ dig @f.root-servers.net. +noall +authority +norecurse net
com.                    172800  IN      NS      e.gtld-servers.net.
com.                    172800  IN      NS      m.gtld-servers.net.
com.                    172800  IN      NS      g.gtld-servers.net.
com.                    172800  IN      NS      k.gtld-servers.net.
com.                    172800  IN      NS      j.gtld-servers.net.
com.                    172800  IN      NS      b.gtld-servers.net.
com.                    172800  IN      NS      h.gtld-servers.net.
com.                    172800  IN      NS      c.gtld-servers.net.
com.                    172800  IN      NS      d.gtld-servers.net.
com.                    172800  IN      NS      i.gtld-servers.net.
com.                    172800  IN      NS      f.gtld-servers.net.
com.                    172800  IN      NS      a.gtld-servers.net.
com.                    172800  IN      NS      l.gtld-servers.net.

這是網際網路上最古老和最常見的兩個頂級域名,這產生了一個有趣的問題。屬於這些 TLD 的域需要粘合所有com以or結尾的名稱伺服器排列net。這也往往會在處理這些領域的許多人中產生一種印象,即粘合不是可選的。

即使在您沒有使用有問題的排列的情況下,在嘗試為屬於此範圍內的域設置名稱伺服器時,您也可能會遇到更嚴格的粘合檢查。鑑於這些註冊商必須為這兩個域(以及共享一組名稱伺服器的任何其他後綴)編碼的問題,他們不太可能對其要求更加細緻入微。

作為一般規則,TLD 越新,該 TLD 的註冊商就越不可能對您實施這些限制。在處理較新的後綴時,在野外看到無膠的命名器是很常見的。

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