文章段落
DNS 意思是「網域名稱系統」,全稱為 Domain Name System,可將網域名稱(如:blog.cloud-ace.tw)轉換成機器可讀取的 IP 位址(如:34.149.40.84)。而 Google Cloud 的 DNS 代管服務:Cloud DNS 除提供代管功能,更具備七大主要特色,可讓使用者獲得更高的可用性、方便性和安全防護,一起來了解相關的內容與功能設定方法吧!
DNS 是什麼意思?用途為何?
DNS(Domain Name System),即網域名稱系統,主要負責維護網域名稱(Domain Name)與 IP 位址的對應,是網際網路的電話簿。它讓使用瀏覽器、發送電子郵件和其他網路應用等功能變得更方便且容易,因為我們不需記住一長串的數字 IP 位址。每次透過網域名稱(如 google.com)訪問網站時,DNS 會將網域名稱轉換為 IP 位址,以便瀏覽器載入網際網路資源,就像查詢站台一樣,使用者必須透過 DNS Server 的查詢才能正確找到自己想看的網站。也因為瀏覽者是透過網域名稱查詢網站,因此網域名稱建議與企業品牌有關聯,讓使用者有記憶點。
DNS 代管服務4大優點
由於網域註冊完後,一定要設定 DNS 才能使用,因此提供網域註冊的廠商一般也會提供 DNS 代管服務,讓用戶的服務能順暢運行,而 DNS 代管服務通常具備以下特性:
- 提高可用性和可靠性:DNS 代管服務通常採用分散式架構,可提高網站或應用程式的可用性及可靠性。如果一個服務器故障,DNS 代管服務可自動將流量路由到可用的服務器,進而避免服務中斷。
- 提高性能:DNS 代管服務能基於地理位置或其他因素將流量路由到最接近的服務器,從而提高性能與速度。
- 管理方便:DNS 代管服務提供了一個易於使用與維護的介面,讓 DNS 的紀錄、子網域和 IP 位址等內容的管理與維護變得更加容易。
- 提供安全保障:DNS 代管服務通常會提供安全防護功能,如反向代理和 DDoS 防禦,保護我們的網站或應用程式免於惡意攻擊。
DNS 代管服務 – Cloud DNS 的7大功能
Cloud DNS 是 Google Cloud 提供的 DNS 代管服務,具備穩定、彈性與低延遲的特點,可滿足使用者註冊、管理及運作網域的一切所需。用戶可透過 Google Cloud Console、gcloud 指令或 API,新增、編輯與刪除 DNS 記錄。若尚未擁有網域,也可搭配 Cloud Domains 先行完成網域註冊。以下簡介 Cloud DNS 的七大主要功能,並深入介紹當中的路由政策(Routing Policy),以及 Cloud DNS Perring 的設定方法。
- 域名管理:用戶可使用 Cloud DNS 控制台或 API 管理域名,進行域名的註冊、綁定和解除綁定等操作。
- 高可用性與效能:透過分散式網路架構和全球分佈式 DNS 伺服器,提供高可用性與解析效能。
- DNS 安全性(DNS Security Extensions,DNSSEC):用戶建立公開區域時若有啟用 DNSSEC 代管服務,DNSSEC 可替網域提供假冒及詐騙攻擊的防護。
- 私人區域:私人 DNS 區域可為私人的 Google Cloud 網路提供易於管理的內部 DNS 解決方案,讓用戶不必建置及管理其他軟體與資源。另外,使用者僅能透過私人網路對私人區域發出 DNS 查詢,防止惡意人士存取我們的內部網路資訊。
- DNS Peering:將兩個不同的 Cloud DNS 服務連接在一起的方法。透過 DNS Peering,使用者可在兩個不同的 Cloud DNS 環境內共享 DNS 記錄,並在不同的服務間進行高效的 DNS 查詢。
- DNS Forwarding:如果採用混合雲架構,這項功能可協助將地端部署系統與 Google Cloud DNS 環境相互連結。這種全代管式的服務讓我們可將現有的 DNS 服務器作為主要服務器,並確保查詢皆能被有效率地執行。
- 路由政策:提供標準、加權循環及地理位置三種路由政策,使用者可根據應用程式的需求進行配置,讓 DNS 獲得更好的性能和可靠性。
Cloud DNS 路由政策介紹
路由政策是使用在 DNS 查詢中的算法,用以確定應如何解析特定的 DNS 記錄。以下為大家詳細說明三種路由政策的分流規則。
標準解析(Default record type)
此為 Cloud DNS 的默認路由政策,是最基本的 DNS 解析方式,它會將所有請求路由到同一組 DNS 紀錄。
加權循環(Weighted Round Robin,WRR)
此政策會使用 WRR 為 DNS 名稱的每個 ResourceRecordSet(rrset) 指定不同的權重,確保流量根據配置的權重分配。例如,我們可將權重分配為2、3和5,那在10個請求中,第一個 IP 位址會接收2個請求;第二個 IP 位址接收3個請求;第三個 IP 位址則接收5個請求。如此一來可更有效地分散負載,使每個服務器處理的請求量都大致相等。
地理位置(Geolocation,GEO)
此政策使用 GEO 指定地理位置並提供與這些地理位置相對應的路徑。當來源流量不完全匹配於任何設定選項時,此路由政策將以最近的地理位置進行匹配,減少延遲並提高性能。舉例來說,若地理位置分別設定在 asia-east 和 us-east,則 asia-south 的流量會被分配到距離較近的 asia-east 主機;而 us-west 流量則會被分配到 us-east。
Cloud DNS Perring 設定教學
當我們想要在不同專案或不同 VPC 的網路中使用相同的 DNS Record ,但又不想多管理一組 DNS 紀錄時,就可以使用 DNS Peering 功能。以下為各位示範一個簡單的實作。
首先我們要建立兩個 VPC 網路環境,分別為 dnstest-peer-vpc 與 dnstest-source-vpc,並在兩個 VPC 網路各建立一台 VM。接著建置一組 Private 的 Cloud DNS ,當 DNS 被設置為私人網域時,只有該 VPC 可以解析,離開該網域範圍就無法解析 。再來還要建立一組紀錄(Record),將 A 記錄指定為網路環境 dnstest-source-vpc 的主機。
Private DNS 的參數設定參考:
• Zone Type:Private
• Zone name:lynn-test-2
• DNS name:lynn-test2.com
• Networks:dnstest-source-vpc
截圖自:Google Cloud Platform Console 頁面
©2023 Google
接著我們建置一組 Peering 的 Cloud DNS。因為 Peering 功能可跨專案進行,因此該設定是在被分享的 DNS 專案中進行,而 DNS name 需與來源 DNS 所設定的 DNS name 相同。以上步驟設定完後,就可以分別開啟兩台 VPC 主機測試,此次示範使用 nslookup 工具進行解析測試。
DNS Peering 的參數設定參考:
• Zone Type:Private
• Zone name(自定):lynn-peering
• DNS name(與來源 DNS 相同):lynn-test2.com
• Networks(被分享的 DNS 專案):dnstest-peer-vpc
• Peer network(分享 DNS 的專案):dnstest-source-vpc
截圖自:Google Cloud Platform Console 頁面
©2023 Google
Cloud DNS 優勢
上文我們介紹了 Cloud DNS 的七大主要功能,而比起自行架設 DNS 伺服器,Cloud DNS 具有更高的可靠性、可擴展性和更簡單易用的管理介面,此外也支援全球節點。另外相比其他 DNS 代理服務,Cloud DNS 提供了 SLA 100% 的保證,這意味著 Google Cloud 承諾該服務有 100% 的可用性。所以一旦使用上未能達到此標準,客戶可申請相關補償。
最後在安全防護方面,Cloud DNS 透過與 Google Cloud 多樣的雲端服務整合,讓我們的網路更安全和可靠。舉例來說,它可結合 Cloud Armor 讓網頁服務獲得 Google 的 DDoS 保護和 WAF,並提供第7層過濾的防護,當攻擊流量進入我們的 Google Cloud 網路,Cloud Armor 可將其封鎖,從而防止攻擊流量影響到應用程式。此外,也能額外搭配 IP 黑名單、URL 路由和安全策略等客製化功能,提高應用程式的網路安全性。
以上就是 DNS 和 Cloud DNS 的介紹與功能設定說明。大家針對文中內容如有任何問題都可留言詢問,有進一步的技術疑問或想更認識 Google Cloud,也歡迎聯絡 Cloud Ace 獲得更進一步的資訊。
▋延伸閱讀:
・什麼是負載平衡?原理、6大 GCP Load Balancer 完整介紹
・CDN 是什麼?Google Cloud CDN 用途、架構完整介紹
・GCP HTTP(S) Load Balancer 負載平衡依網址分流教學
・【GCP 教學】負載平衡 Load Balancer 和 Instance Group
・【CDN 教學】利用 Cloud CDN 自動緩存靜態內容