提起免費DNS服務,之前受到許多站長青睞的CloudXNS應該是個不錯的選擇。但這一切都在前幾天改變了,由於一些「眾所周知」的原因,cloudxns在沒有任何通知的情況下暫停了絕大多數用戶的解析。我也是這星期從學校回來後才發現這個問題。
在考慮一段時間之後,我還是決定把解析移轉到其他廠商。聞名的Google Cloud DNS是一個不錯的選擇,它主要有以下優勢:NS伺服器採用Anycast技術,確保用戶能得到來自最近伺服器的解析,支援DNSSEC ,100%的SLA ,支援所有主流記錄類型,TTL最低允許設定為1s 。
當然,這些先進的功能(尤其是100%SLA)並不是沒有代價的——Google Cloud DNS並不是免費服務。雖然如此,就像我們總有一天會選擇從免費空間轉入付費虛擬主機或VPS一樣,我並不想再看到因為一些特有因素影響到我的解析,因而我最終選擇了付費DNS解析。
雖然如此,但Google Cloud DNS的價格非常低廉。 1個DNS Zone(可以簡單理解為託管一個網域)每月僅需$0.2,每100萬次DNS查詢僅需$0.4。且GCP還附有50000次/天的免費額度。對於個人部落格來說,免費配額都已經相當充足,即每月只需支付0.2美元的託管費用即可。這個價格對於絕大多數使用付費主機的站長來說都已經低廉到可以忽略了。
更多有關於VPS主機還有建站方面的文章,你還可以看看:
- 國內外免費DNS網域解析服務總表-尋找更多免費DNS網域解析
- 接取CN2線路VPS主機商及機房彙總-鑑別真假CN2線路主機參考手冊
- 日本Xrea免費空間申請與使用-優秀穩定的免費主機1GB空間免費SSL
PS:2018年6月26日更新,不想使用國外的DNS服務,也不喜歡DNSPOD的各種功能限制,可以試試京東雲的DNS域名解析服務:京東雲DNS免費域名解析-支援線路地域細分可新增CAA解析記錄。
一、Google cloud DNS申請
官網:
- HTTPS://cloud.Google.com/DNS/
想要使用GCP DNS,你需要:
正常的網路連線(基本技能)
一張支援美元支付的VISA或Mastercard信用卡(這可能是僅有的一個門檻),當然,也可以找人代付
一個Google帳戶
在使用GCP之前,有一些關於GCP平台費用的概念需要理解。
專案 :專案是GCP上的資源(運算、儲存、網路等)的組織單元。和我們通常所理解的概念類似。要使用GCP上的所有資源,你需要先建立至少一個項目,然後再在該項目中進行操作。專案的設立是為了讓開發者針對不同的應用更好地管理資源,例如,需要大量CPU的應用和儲存型應用應該放到不同的專案中管理。當然,一個專案中有多少應用程式沒有什麼硬性規定,這只是為了用戶管理方便而已。
結算帳號:這是GCP上關於資費的組織單位。與專案類似,它也只是為了管理的方便。它的操作方式和項目有點相似,只不過管理的是和支付有關的功能。有點像我們網購時可以使用不同的支付寶帳戶來支付一樣。不過,結算帳號內只支援綁定信用卡。
啟用計費(Enable Billing):啟用計費是將一個項目與一個可用的結算帳號關聯的過程。換句話說,當一個專案建立時,預設是沒有啟用支付功能的,這可以防止意料之外的費用產生;與此相應的,如果不啟用計費,這個專案就只能使用免費的資源,許多高級功能都會被停用。一個項目可以關聯一個結算帳號,而一個結算帳號可以被多個項目所關聯-如果你需要的話。
首先開啟GCP網站,登陸Google帳號。如果你是新用戶,也可以點擊「Try it free」按鈕獲得1年內$300 的免費額度以及一些其他的永久免費資源。這裡不再贅述。
登陸GCP後,如下圖操作即可進入新專案頁面。
專案ID是GCP全平台上的唯一識別。如果你使用了一個沒有人使用過的項目名稱,則ID預設與名稱相同。否則就會和上圖一樣得到一個隨機ID。可以點選修改來選擇需要的ID。點擊建立之後,右上角的通知欄會開始旋轉。這表明我們的項目正在創建中。一旦創建成功,這裡就會顯示一條新的訊息。
點擊這則訊息即可進入專案管理首頁。 (點擊放大)
為了使用Google Cloud DNS,我們需要先為專案啟用計費。點選左上角的導覽欄,選擇「結算」:
如果你已經有了一個結算帳號,可以直接點選「關聯結算帳號」選擇需要關聯的條目。如果沒有,點擊「管理結算帳號」並建立一個新的:
在上圖的下一步,需要填寫一些相關資料,最好如實填寫。注意在類型一欄改成「個人」:在「付款方式」處填寫信用卡資料。
點選「提交並啟用結算」之後,會自動將該項目與該結算帳號相關聯。 (為什麼?因為我們剛剛一直都是在新的專案內操作的)。注意,為了驗證卡片的有效性,會自動向卡內收取$1,就我的使用體驗來看,這1$會在短時間內退還。
二、Google cloud DNS使用
啟用計費後還不能直接使用Google Cloud DNS,我們需要先啟用該API。進入API介面後,選擇Cloud DNS API。
如果你還沒有憑證(相當於API KEY,只不過使用了不同的方式),需要點擊上圖左邊第三個鑰匙形圖示建立一個新的憑證。如下圖操作:
由於我們只是為了使用DNS功能,不需要過多的權限控制,「角色」直接選擇Project-所有者即可,如字面意思所示,其擁有專案內的最高權限。密鑰類型預設為JSON即可,這是為了自動化的腳本使用所設計的,需要保存好該檔案。當然,如果只是使用DNS,很有可能不需要用到它。如下圖操作:
之後就可以啟用Google Cloud DNS API了。啟用完成後,點選左側選單-網路服務-雲端DNS就可以開始使用DNS,如圖:
其中,「地區名稱」可以任意配置,「DNS名稱」就是你要使用Cloud DNS的網域名稱。如果Google Cloud DNS上已經有使用者託管了該域名,就無法再建立(該專案內的網域除外,例如,我可以多次建立zby.io的有關Zone)
之後就是更換DNS伺服器的常規動作了。到網域註冊商修改NS伺服器即可。 GCP DNS的NS伺服器可以如下圖看到:
如上圖所述,必須配置為完全使用4組NS伺服器,才能得到100%SLA的保證。混雜的NS伺服器或只用3組或更少是無法保證的。
Google cloud DNS新增DNS解析記錄。 Google Cloud DNS支援*解析,但是我們習慣的@解析在這裡是不需要特意填寫@的,直接留空即可,如下圖:
Google Cloud DNS新增記錄會給予範例數據,對於特定記錄的某些選項,不一定像國內DNS廠商一樣有專門的輸入框,而是按格式輸入對應值。如新增MX記錄時,CloudXNS會特別顯示一個「優先權」框,但GCP DNS使用的格式是」優先權 目標」。
Google Cloud DNS有名為」記錄集「的組織方式。對一些特定記錄,如A CNAME等,支援同時為一個子網域新增多筆記錄。
三、Google cloud DNS效果
這是挖站否wzfou.com編輯後補充的內容,使用Google cloud DNS最大的擔心恐怕就是DNS伺服器被Q的問題了。以下是目前Google cloud DNS的NS伺服器。
NS-CLOUD-A1.GOOGLEDOMAINS.COM
NS-CLOUD-A2.GOOGLEDOMAINS.COM
NS-CLOUD-A3.GOOGLEDOMAINS.COM
NS-CLOUD-A4.GOOGLEDOMAINS.COM
其中,第一個已經無Ping通了,其它三個正常Ping通。這是採用了Google cloud DNS的DNS解析回應時間,從圖表中可以看出國內各地反應正常。 (點擊放大)
這是使用DNSPOD免費DNS解析服務的解析回應時間,透過這兩張圖表來比較我們可以發現Google cloud DNS與DNSPOD免費版的網域解析回應時間都差不多。 (點擊放大)
這是採用了Google cloud DNS的DNS監控圖。 (點擊放大)
這是DNSPOD免費DNS解析的DNS監控圖,透過對比,我們可以發現Google cloud DNS的解析時間波動範圍大一些,但也基本上在接受範圍內。
四、總結
就目前的使用體驗來看,Google Cloud DNS還是相當令人滿意的。唯一的缺點可能是它不支援像CloudXNS或DNSPOD那樣分線路分區域解析,而是用Anycast取代。如果需要該功能,另一個值得考慮的是Amazon Route53,價格也非常低廉。一個Zone+100萬次解析每月只需$0.8。
Google cloud DNS目前有多組NS伺服器,所以國內解析都正常,不用擔心被Q的問題。相對於DNSPOD等國內的NS伺服器,在解析回應時間上可能要逍遜一些,但是從全球範圍內來看,Google cloud DNS的DNS解析還是非常有優勢的,對於國內的用戶我們可以將TTL設定長一些,有利於加快解析速度。