DNS 伺服器政策

運用 DNS 伺服器政策,您可以設定要使用哪些 DNS 伺服器,解析 Google Cloud 資源的網域名稱。DNS 伺服器政策可用來控管特定虛擬私有雲 (VPC) 網路中的 DNS 解析。DNS 伺服器政策會指定傳入 DNS 轉送和/或傳出 DNS 轉送。傳入 DNS 伺服器政策允許傳入 DNS 轉送,而傳出 DNS 伺服器政策是實作傳出 DNS 轉送的方法之一。

您也可以設定 DNS64,允許僅限 IPv6 的 VM 執行個體與僅限 IPv4 的目的地通訊。

僅限 IPv6 的 VPC 子網路不支援傳入 DNS 伺服器政策。不過,您可以為僅限 IPv6 的 VM 執行個體,設定傳出 DNS 伺服器政策。

傳入伺服器政策

若虛擬機器 (VM) 執行個體的 VPC 網路附有網路介面 (vNIC),則可享有各 VPC 網路提供的 Cloud DNS 名稱解析服務。當 VM 使用中繼資料伺服器 169.254.169.254 做為名稱伺服器時, Google Cloud 會根據 VPC 網路名稱解析順序,搜尋 Cloud DNS 資源。

如要為地端部署網路提供 VPC 網路的名稱解析服務,且地端部署網路是透過 Cloud VPN 通道、Cloud Interconnect VLAN 連結或路由器設備連線至 VPC 網路,則可以採用「傳入伺服器政策」

建立傳入伺服器政策時,Cloud DNS 會在套用伺服器政策的 VPC 網路中,建立「傳入伺服器政策進入點」。傳入伺服器政策進入點就是內部 IPv4 位址,來自適用 VPC 網路中「每個」子網路的主要 IPv4 位址範圍,但具有特定 --purpose 資料的子網路除外,例如特定負載平衡器的僅限 Proxy 子網路,以及 Cloud NAT 用於 Private NAT 的子網路。

舉例來說,如果在 VPC 網路中,有兩個子網路位於同一區域,第三個子網路位於其他區域,當您為 VPC 網路設定傳入伺服器政策時,Cloud DNS 總共會使用三個 IPv4 位址做為傳入伺服器政策進入點,每個子網路各一個。

如要瞭解如何為 VPC 建立傳入伺服器政策,請參閱「建立傳入伺服器政策」。

傳入查詢的網路和區域

如要處理傳送至傳入伺服器政策進入點的 DNS 查詢,Cloud DNS 會將 VPC 網路的查詢與區域建立關聯:

  • 與 DNS 查詢相關聯的 VPC 網路含有 Cloud VPN 通道、Cloud Interconnect VLAN 連結或路由器設備網路介面,可接收 DNS 查詢的封包。

    • Google 建議在連線至地端部署網路的 VPC 網路中,建立傳入伺服器政策。這樣一來,連線至地端部署網路的 Cloud VPN 通道、Cloud Interconnect VLAN 連結或路由器設備,就會與傳入伺服器政策進入點位於同一個 VPC 網路。

    • 其實,地端部署網路可以將查詢傳送至不同 VPC 網路中的傳入伺服器政策進入點。舉例來說,如果包含 Cloud VPN 通道、Cloud Interconnect VLAN 連結或路由器設備的 VPC 網路,是連線至地端部署網路,同時也透過 VPC 網路對接連線至其他 VPC 網路,就可以執行這項作業。不過,我們不建議使用這項設定,因為與 DNS 查詢相關聯的 VPC 網路,並不符合含有傳入伺服器政策進入點的 VPC 網路,這表示解析 DNS 查詢時,並非在具有傳入伺服器政策的 VPC 網路中使用 Cloud DNS 私人區域和回應政策。為避免混淆,建議採用下列設定步驟:

      1. 在 VPC 網路中建立傳入伺服器政策,並使用 Cloud VPN 通道、Cloud Interconnect VLAN 連結或路由器設備,連線至地端部署網路。
      2. 設定地端部署系統,將 DNS 查詢傳送至上一步驟設定的傳入伺服器政策進入點。
      3. 為連線至地端部署網路的 VPC 網路,設定授權的 Cloud DNS 資源。可以使用以下一或多種方法:

        • 將連線至地端部署網路的 VPC 網路,新增至已授權網路清單,藉此授權其他 VPC 網路使用 Cloud DNS 私人區域:如果 Cloud DNS 私人區域和連線至地端部署網路的 VPC 網路位於同一組織的不同專案,請在授權網路時使用完整網路網址。詳情請參閱「設定跨專案繫結」。
        • 在連線至地端部署網路的 VPC 網路所授權的 Cloud DNS 對接區域:將對接區域的目標網路設為其他 VPC 網路。無論連線至地端部署網路的 VPC 網路,是否使用 VPC 網路對接連線至對接區域的目標 VPC 網路,都無所謂,因為 Cloud DNS 對接區域不依賴 VPC 網路對接來建立網路連線。
    • 如果地端部署網路使用 VPC 網路對接,將查詢傳送至傳入伺服器政策,則傳入伺服器政策所在的網路必須包含與傳入查詢位於同一區域的 VM、VLAN 連結或 Cloud VPN 通道。

  • 與 DNS 查詢相關聯的區域,「一定」包含 Cloud VPN 通道、Cloud Interconnect VLAN 連結或路由器設備網路介面,且可接收 DNS 查詢封包,「而非」包含傳入伺服器政策進入點的子網路區域。

    • 舉例來說,如果 DNS 查詢封包使用位於 us-east1 區域的 Cloud VPN 通道進入 VPC 網路,並傳送至 us-west1 區域的傳入伺服器政策進入點,則與 DNS 查詢相關聯的區域為 us-east1
    • 傳送 DNS 查詢的最佳做法,是傳送至與 Cloud VPN 通道、Cloud Interconnect VLAN 連結或路由器設備位於相同區域的傳入伺服器政策進入點 IPv4 位址。
    • 如果您使用地理位置路由政策,與 DNS 查詢相關聯的區域便至關重要。詳情請參閱「管理 DNS 路由政策和健康狀態檢查」。

傳入伺服器政策進入點路由 advertisement

由於傳入伺服器政策進入點 IP 位址是取自子網路的主要 IPv4 位址範圍,因此當 Cloud VPN 通道、Cloud Interconnect VLAN 連結或路由器設備的邊界閘道通訊協定 (BGP) 工作階段是設為使用 Cloud Router 預設 advertisement 模式時,Cloud Router 會 advertise 這些 IP 位址。如果使用 Cloud Router 自訂 advertisement 模式,也可以透過下列其中一種方式設定 BGP 工作階段,advertise 傳入伺服器政策進入點 IP 位址:

  • advertise 子網路 IP 位址範圍和自訂前置字元。
  • 在自訂前置字元 advertisement 中,納入傳入伺服器政策進入點 IP 位址。

傳出伺服器政策

您可以建立用來指定「替代名稱伺服器」清單的「傳出伺服器政策」,修改 VPC 網路的 Cloud DNS 名稱解析順序。當 VM 使用中繼資料伺服器 169.254.169.254 做為名稱伺服器,您也已為 VPC 網路指定替代名稱伺服器時,Cloud DNS 會將所有查詢傳送至替代名稱伺服器,「除非」查詢符合 Google Kubernetes Engine 叢集範圍回應政策或 GKE 叢集範圍私人區域。

如果傳出伺服器政策存在兩個以上的替代名稱伺服器,Cloud DNS 會為替代名稱伺服器排序,並按照 VPC 名稱解析順序的第一個步驟,查詢這些名稱伺服器。重要事項:請仔細查看 VPC 網路解析順序。使用替代名稱伺服器會停用許多 Cloud DNS 功能的解析,也可能影響公開 DNS 查詢的解析,具體取決於替代名稱伺服器的設定。如要進一步瞭解其他傳出 DNS 轉送策略,請參閱 Cloud DNS 總覽中的「DNS 轉送方法」。如要瞭解如何建立傳出伺服器政策,請參閱「建立傳出伺服器政策」。

替代名稱伺服器類型、路由方法和位址

Cloud DNS 支援下列替代名稱伺服器,並提供建立連線的標準或私人路由方法。

替代名稱伺服器類型 標準路由支援 私人路由支援 查詢來源位址範圍

類型 1 名稱伺服器

在定義傳出伺服器政策的「相同」VPC 網路中, Google Cloud VM 的內部 IP 位址

僅限 RFC 1918 IP 位址;流量一律透過已授權的 VPC 網路轉送。 任何內部 IP 位址,例如 RFC 1918 私人位址、非 RFC 1918 私人 IP 位址,或私人重複使用的外部 IP 位址,但禁止使用的替代名稱伺服器 IP 位址除外。流量一律透過已授權的 VPC 網路轉送。 35.199.192.0/19

類型 2 名稱伺服器

地端部署系統的 IP 位址,使用 Cloud VPN 或 Cloud Interconnect 連線至具有傳出伺服器政策的 VPC 網路。

僅限 RFC 1918 IP 位址;流量一律透過已授權的 VPC 網路轉送。 任何內部 IP 位址,例如 RFC 1918 私人位址、非 RFC 1918 私人 IP 位址,或私人重複使用的外部 IP 位址,但禁止使用的替代名稱伺服器 IP 位址除外。流量一律透過已授權的 VPC 網路轉送。 35.199.192.0/19

類型 3 名稱伺服器

可透過網際網路存取的 DNS 名稱伺服器外部 IP 位址,「或是」 Google Cloud 資源的外部 IP 位址,例如其他 VPC 網路中 VM 的外部 IP 位址。

僅限可透過網際網路轉送的外部 IP 位址;流量一律轉送至網際網路或 Google Cloud 資源的外部 IP 位址。 不支援私人路由。 Google 公用 DNS 來源範圍

Cloud DNS 提供兩種查詢替代名稱伺服器的路由方法:

  • 標準路由。Cloud DNS 會使用 IP 位址判斷替代名稱伺服器的類型,然後使用 私人 或公開 路由:

    • 如果替代名稱伺服器是 RFC 1918 IP 位址,Cloud DNS 會將名稱伺服器分類為「類型 1」或「類型 2」名稱伺服器,並透過已授權的 VPC 網路 (私人路由) 轉送查詢。
    • 如果替代名稱伺服器「不是」RFC 1918 IP 位址,Cloud DNS 會將該名稱伺服器歸類為「類型 3」,並預期替代名稱伺服器可透過網際網路存取。Cloud DNS 會透過網際網路 (公開路由) 轉送查詢。
  • 私人路由。Cloud DNS 會將替代名稱伺服器視為「類型 1」或「類型 2」。無論替代名稱伺服器的 IP 位址為何 (是否為 RFC 1918),Cloud DNS 一律透過已授權的 VPC 網路轉送流量。

禁止使用的替代名稱伺服器 IP 位址

下列 IP 位址不得用於 Cloud DNS 替代名稱伺服器:

  • 169.254.0.0/16
  • 192.0.0.0/24
  • 192.0.2.0/24
  • 192.88.99.0/24
  • 198.51.100.0/24
  • 203.0.113.0/24
  • 224.0.0.0/4
  • 240.0.0.0/4
  • ::1/128
  • ::/128
  • 2001:db8::/32
  • fe80::/10
  • fec0::/10
  • ff00::/8

替代名稱伺服器的網路需求

替代名稱伺服器的網路需求,會因替代名稱伺服器的「類型」而異。如要判斷替代名稱伺服器的類型,請先參閱「替代名稱伺服器類型、路由方法和位址」,然後查看下列其中一節,瞭解網路需求。

類型 1 替代名稱伺服器的網路需求

Cloud DNS 會將來源來自 35.199.192.0/19 IP 位址範圍的封包,傳送至類型 1 替代名稱伺服器 IP 位址。Google Cloud 會使用 VPC 網路中的本機子網路路由,轉送查詢封包。請確認您未建立任何目的地包含類型 1 替代名稱伺服器 IP 位址的策略路由

如要在替代名稱伺服器 VM 上允許傳入封包,您必須建立允許輸入的 VPC 防火牆規則,或符合下列特徵的防火牆政策規則:

  • 目標:必須包含替代名稱伺服器 VM
  • 來源:35.199.192.0/19
  • 通訊協定:TCPUDP
  • 通訊埠:53

Cloud DNS 規定,每個替代名稱伺服器都必須將回應封包傳送回 35.199.192.0/19 中發出查詢的 Cloud DNS IP 位址。回應封包的來源,「必須」符合 Cloud DNS 傳送原始查詢該替代名稱伺服器的 IP 位址。如果回應來自非預期的 IP 位址來源,例如來自可能做為替代名稱伺服器查詢轉送目標的其他名稱伺服器,則 Cloud DNS 會忽略該回應。

當「類型 1」替代名稱伺服器將回應封包傳送至 35.199.192.0/19 時,會使用特殊路由路徑

類型 2 替代名稱伺服器的網路需求

Cloud DNS 會將來源為 35.199.192.0/19 IP 位址範圍的封包,傳送至「類型 2」替代名稱伺服器。Cloud DNS 依賴下列類型的路由,即套用傳出伺服器政策的 VPC 網路「內」的路由:

如要在「類型 2」替代名稱伺服器上允許傳入封包,務必設定允許輸入的防火牆規則,且防火牆規則須適用於替代名稱伺服器,以及任何具有防火牆功能的相關地端部署網路設備。有效的防火牆設定必須允許 TCPUDP 通訊協定,且目標通訊埠為 53,來源為 35.199.192.0/19

Cloud DNS 規定,每個替代名稱伺服器都必須將回應封包傳送回 35.199.192.0/19 中發出查詢的 Cloud DNS IP 位址。回應封包的來源,「必須」符合 Cloud DNS 傳送原始查詢該替代名稱伺服器的 IP 位址。如果回應來自非預期的 IP 位址來源,例如來自可能做為替代名稱伺服器查詢轉送目標的其他名稱伺服器,則 Cloud DNS 會忽略該回應。

您的地端部署網路須具有 35.199.192.0/19 目的地的路由,且路由的下一個躍點是與發出 Cloud DNS 查詢位於同一個 VPC 網路和區域中的 Cloud VPN 通道、Cloud Interconnect VLAN 連結或 Cloud Router。只要下一個躍點符合這些網路和區域需求, Google Cloud 就不需要對稱的回傳路徑。符合下列條件的下一個躍點,皆「無法」轉送「類型 2」替代名稱伺服器的回應:

  • 網際網路的下一個躍點
  • 下一個躍點所在的 VPC 網路,不同於發出查詢的 VPC 網路
  • 下一個躍點位於相同的 VPC 網路,但所在區域與查詢來源不同

如要在地端部署網路設定 35.199.192.0/19 路由,請使用 Cloud Router 自訂 advertisement 模式,就連線至含有「類型 2」替代名稱伺服器該地端部署網路的 VPC 網路,在相關 Cloud VPN 通道、Cloud Interconnect VLAN 連結或 Cloud Router 的 BGP 工作階段中,將 35.199.192.0/19 納入為自訂前置字串。或者,您也可以在地端部署網路中,設定等效的靜態路由。

類型 3 替代名稱伺服器的網路需求

Cloud DNS 會將來源符合 Google 公用 DNS 來源範圍的封包,傳送至「類型 3」替代名稱伺服器。Cloud DNS 使用公開路由,「不會」依賴任何套用傳出伺服器政策的 VPC 網路「內」的路由。

如要在「類型 3」替代名稱伺服器上允許傳入封包,請確保替代名稱伺服器所適用的有效防火牆設定,允許來自 Google 公用 DNS 來源範圍的封包。

後續步驟