網絡學習 DNS服務:域名解析和域名遷徙

目前在互聯網上域名解析授權大體上是誰出售域名就把域名的權威DNS授權給誰並由其提供域名的權威DNS來完成域名解析工作,如購買了新網域名默認就是由新網的權威DNS(nsx.xinnetdns.com、nsx.xinnet.cn)負責所售域名解析:

[root@test root]#dig @a.gtld-servers.net xinnet.com ns
;; ANSWER SECTION:
xinnet.com. 172800 IN NS ns.xinnet.cn.
xinnet.com. 172800 IN NS ns.xinnetdns.com.
xinnet.com. 172800 IN NS ns2.xinnet.cn.
xinnet.com. 172800 IN NS ns2.xinnetdns.com.

域名解析授權是怎麼實現的?
首先“.”DNS 把COM/NET/CN/ORG/TV等等域名按後綴的不同分別授權給不同的DNS,以利於分別管理。

如COM/NET域名被授權給瞭如下幾個權威DNS。 這裏不難想像要修改COM/NET的授權DNS要到“.”DNS上去操作才能完成。

[root@test root]#dig com. ns
;; ANSWER SECTION:
com. 96045 IN NS d.gtld-servers.net.
com. 96045 IN NS g.gtld-servers.net.
com. 96045 IN NS b.gtld-servers.net.
com. 96045 IN NS k.gtld-servers.net.
com. 96045 IN NS f.gtld-servers.net.
com. 96045 IN NS l.gtld-servers.net.
com. 96045 IN NS j.gtld-servers.net.
com. 96045 IN NS a.gtld-servers.net.
com. 96045 IN NS i.gtld-servers.net.
com. 96045 IN NS m.gtld-servers.net.
com. 96045 IN NS e.gtld-servers.net.
com. 96045 IN NS h.gtld-servers.net.
com. 96045 IN NS c.gtld-servers.net.

同理可知,要指定或修改ABC.COM的權威DNS要去頂級DNS上操作。通常來說一般的域名所有者是無權登錄頂級DNS進行操作的。只能通過域名提供商(如新網,萬網等)的專用接口(位於域名商的域名管理平臺上)來間接操作頂級DNS上的記錄。 

以ABC.COM爲例簡要說明怎麼指定自己的權威DNS,假設ABC.COM是在新網購買,那麼默認該域名的權威DNS就是nsx.xinnetdns.com、nsx.xinnet.cn。這時候要修改默認權威DNS。首先登錄新網的域名管理後臺,找到修改域名DNS頁面即可完成操作(詳細過程這裏有:http://www.2cto.com/net/201210/161851.html)。操作完成後要驗證一下是否修改成功:

[root@test root]#dig @a.gtld-servers.net abc.com ns
;; ANSWER SECTION:
abc.com. 172800 IN NS ns1.ai-dns.com.
abc.com. 172800 IN NS ns2.ai-dns.com.
abc.com. 172800 IN NS ns3.ai-dns.com.

這裏我們把ABC.COM授權給了nsx.ai-dns.com了。 
關於域名權威DNS的再授權: 以ABC.COM爲例,再授權是指在nsx.ai-dns.com上面再次指定該域名的權威DNS,再授權的意義有這麼幾個:

  1. 擴展現有的權威DNS數量,如現有ns1,ns2,ns3.ai-dns.com共三臺DNS,現在要增加到4臺,則可以在原3臺DNS上abc.com的ZONE文件內增加 
    ns4這個NS記錄。 
    原來的ZONE內容:
$TTL 2d
$ORIGIN abc.com.
@ 3600 IN SOA ns1.ai-dns.com. root.ai-dns.com.(
2288091841 1h 600 1w 900 )
@ 2d IN NS ns1.ai-dns.com.
@ 2d IN NS ns2.ai-dns.com.
@ 2d IN NS ns3.ai-dns.com.
增加ns4這個NS記錄後爲:
$TTL 2d
$ORIGIN abc.com.
@ 3600 IN SOA ns1.ai-dns.com. root.ai-dns.com.(
2288091841 1h 600 1w 900 )
@ 2d IN NS ns1.ai-dns.com.
@ 2d IN NS ns2.ai-dns.com.
@ 2d IN NS ns3.ai-dns.com.
@ 2d IN NS ns4.ai-dns.com.

當然增加NS4的操作也可以在頂級DNS上完成,不再贅述。 

2. 把權威DNS重新授權給其他DNS,如把原來的權威DNS(nsx.ai-dns.com)重新授權給別人(nsx.ddd.com)。操作過程同上,不再贅述。 
再授權可能存在的潛在問題: 
再授權無疑使得域名解析授權變得更靈活,但是存在以下潛在的隱患。當原授權的權威DNS(即在頂級DNS定義的權威DNS)故障時,這時再授權的DNS將無法工作,導致域名無法解析(這是由域名解析過程是自上而下的這個特性決定的)。同時也增加了安全隱患。 

附加部分1:慎用WHOIS來查看域名權威DNS。 
對於域名的Whois數據庫是由域名銷售商控制的,即每個域名銷售商都有自己的WHOIS服務器,這些服務器用來存儲自身出售的域名信息,如域名所有人,聯繫方法,到期時間等內容。WHOIS信息中顯示的域名當前權威DNS信息很可能沒有及時與域名實際的權威DNS信息同步而導致錯誤的判斷。

 
附加部分2:“.”根DNS是怎麼被授權的? 
由於“.”根DNS所處域名解析體系的頂端,無法按照常規方法對其授權。到目前爲止其授權方法是把所有“.”DNS列表存放在一個文本文件內(自己授權給自己),名字通常爲root.hint內容如下(部分節選):

. 3600000 IN NS A.ROOT-SERVERS.NET.
A.ROOT-SERVERS.NET. 3600000 A 198.41.0.4
. 3600000 NS B.ROOT-SERVERS.NET.
B.ROOT-SERVERS.NET. 3600000 A 192.228.79.201

域名遷徙

域名遷移就是修改域名的權威DNS,即將域名ABC.COM的原權威DNS由A遷移到B。實際工作中最常見的形式是將域名轉到另一家DNS服務商來解析。本文就域名遷移過程中幾個值得關注的問題討論一下。

遷徙流程

  1. 首先到B把你的域名添加上去,包括SOA、NS、A、CNAME、MX記錄等。然後用dig/nslookup等工具驗證一下是否剛纔添加的記錄是否生效,如驗證A記錄WWW.ABC.COM: dig @B WWW.ABC.COM A
  2. 到原域名註冊商處修改域名權威DNS爲B,即修改域名的NS記錄爲B。注意,位於域名原權威DNS上的其他各種記錄要保留一段時間不要馬上刪除。然後在該域名的頂級域DNS上驗證一下剛纔的修改是否生效。如驗證ABC.COM現在的權威DNS:dig @a.gtld-servers.net ABC.COM NS

域名遷移的過渡期:

域名權威DNS由A轉移到B的過程中域名解析權發生變化,世界各地的遞歸DNS要知道這個變化需要一段時間,因爲各地DNS都緩存了該域名以前的狀態,更新到最新的狀態需要時間。

過渡期時長的確定:

我們對域名進行trace查詢以便了解該域名NS記錄的TTL值。如查詢CN類域名。

> dig xxx.cn ns +trace
xxx.cn. 21600 IN NS ns.xxx.cn.
xxx.cn. 21600 IN NS ns.xxx.com.
;; Received 83 bytes from 203.119.25.1#53(A.DNS.cn) in 46 ms
xxx.cn. 21600 IN NS ns.xxx.cn.
xxx.cn. 21600 IN NS ns.xxx.com.
;; Received 83 bytes from 129.44.79.4#53(ns.xxx.cn) in 78 ms

上面權威DNS與頂級域DNS上NS記錄的TTL值相同,則過渡期爲21600秒。

特殊情況,如果該域名的原權威DNS上定義的該域名NS記錄的TTL值與頂級域DNS上定義的值不同。則這個時候原權威DNS上的TTL爲有效值。如163.cn:

> dig 163.cn ns +trace
163.cn. 21600 IN NS ns1.newfavor.net.
163.cn. 21600 IN NS ns2.newfavor.net.
;; Received 72 bytes from 203.119.28.1#53(D.DNS.cn) in 62 ms
163.cn. 10800 IN NS dns1.amway.com.
163.cn. 10800 IN NS ns2.newfavor.net.
163.cn. 10800 IN NS ns1.newfavor.net.
;; Received 174 bytes from 61.145.126.88#53(ns1.newfavor.net) in 93 ms

可以看到該域名在頂級域上NS記錄的TTL爲21600,而在權威DNS上有重新定義爲10800,則這個時候原權威DNS上的TTL爲有效值。

在實際工作中穩妥起見我們取兩者中較大的爲最後的參考值。 
下面列出幾種域名NS記錄的TTL值: 
COM. TTL = 172800 (48小時) 
NET. TTL = 172800 (48小時) 
ORG. TTL = 86400 (24小時) 
CN. TTL = 21600 (6小時)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章