Cloud DNS 概览

本页面简要介绍 Cloud DNS 的特性和功能。Cloud DNS 是一种高性能、高弹性的全球域名系统 (DNS) 服务,也是将您的域名发布到全球 DNS 的一种经济实惠的方式。

DNS 是一个分布式的分层数据库,可供您存储 IP 地址和其他数据,以及按名称查找这些内容。借助 Cloud DNS,您可以在 DNS 中发布地区和记录,而无需管理自己的 DNS 服务器和软件。

Cloud DNS 提供公开地区和专用的代管 DNS 地区。公开地区在公共互联网上可见,而专用地区仅在您指定的一个或多个 Virtual Private Cloud (VPC) 网络中可见。如需详细了解区域,请参阅 DNS 区域概览

Cloud DNS 支持项目级层和单个 DNS 区域级层的 Identity and Access Management (IAM) 权限。如需了解如何设置各个资源 IAM 权限,请参阅创建具有特定 IAM 权限的区域

如需常规 DNS 术语的列表,请参阅常规 DNS 概览

如需查看构建 Cloud DNS 的关键术语列表,请参阅关键术语

要开始使用 Cloud DNS,请参阅快速入门

自行试用

如果您是 Google Cloud 新手,请创建一个账号来评估 Cloud DNS 在实际场景中的表现。新客户还可获享 $300 赠金,用于运行、测试和部署工作负载。

免费试用 Cloud DNS

共享 VPC 注意事项

如需将 Cloud DNS 代管专用地区、Cloud DNS 转发地区或 Cloud DNS 对等互连地区与共享 VPC 一起使用,您必须在宿主项目中创建相应地区,并且然后将一个或多个共享 VPC 网络添加到该地区的授权网络列表中。或者,您可以使用跨项目绑定在服务项目中设置区域。

如需了解详情,请参阅 Cloud DNS 专用可用区的最佳做法

DNS 转发方法

Google Cloud 为专用地区提供入站和出站 DNS 转发。 您可以通过创建转发地区或 Cloud DNS 服务器政策来配置 DNS 转发。下表就这两种方法进行了总结。

DNS 转发 Cloud DNS 方法
入站

创建入站服务器政策,以启用本地 DNS 客户端或服务器以向 Cloud DNS 发送 DNS 请求。然后,DNS 客户端或服务器可以根据 VPC 网络的名称解析顺序解析记录。

本地客户端可以解析 VPC 网络已获得授权的专用地区、转发地区和对等互连地区中的记录。本地客户端使用 Cloud VPN 或 Cloud Interconnect 连接到 VPC 网络。

出站

您可以在 VPC 网络中配置虚拟机来执行以下操作:

  • 向您选择的 DNS 域名服务器发送 DNS 请求。域名服务器可以位于同一 VPC 网络、本地网络或互联网。
  • 解析托管在域名服务器上的记录,这些服务器配置为授权由您的 VPC 网络使用的转发地区的转发目标。如需了解 Google Cloud 如何将流量路由到转发目标的 IP 地址,请参阅转发目标和路由方法
  • 为 VPC 网络创建出站服务器政策,以将所有 DNS 请求发送到备用域名服务器。使用备用域名服务器时,VPC 网络中的虚拟机将无法再解析 Cloud DNS 专用可用区、转发可用区、对等互连可用区或 Compute Engine 内部 DNS 区域中的记录。如需了解详情,请参阅名称解析顺序

您可以同时为 VPC 网络配置入站和出站 DNS 转发。借助双向转发,VPC 网络中的虚拟机可以解析本地网络或由其他云服务商托管的网络中的记录。此类转发还使本地网络中的主机能够为 Google Cloud 资源解析记录。

Cloud DNS 控制层面使用转发目标选择顺序来选择转发目标。如果转发目标无法访问或者响应速度不够快,则出站转发查询有时可能会导致 SERVFAIL 错误。如需了解问题排查说明,请参阅出站转发查询收到 SERVFAIL 错误

如需了解如何应用服务器政策,请参阅创建 DNS 服务器政策。如需了解如何创建转发可用区,请参阅创建转发可用区

DNSSEC

Cloud DNS 支持托管 DNSSEC,可保护您的网域免遭欺骗攻击和缓存投毒攻击。当您使用像 Google 公共 DNS 之类的验证解析器时,DNSSEC 会为网域查找提供增强式身份验证(但不会加密)。如需详细了解 DNSSEC,请参阅管理 DNSSEC 配置

访问权限控制

您可以在 Google Cloud 控制台的 IAM 和管理页面上管理可以更改 DNS 记录的用户。为了获得授权进行更改,用户必须具有 Google Cloud 控制台的“权限”部分中的 DNS Administrator 角色 (roles/dns.admin)。DNS Reader 角色 (roles/dns.reader) 授予对 Cloud DNS 记录的只读权限。

这些权限还适用于您在管理 DNS 服务时使用的服务账号。

如需查看分配给这些角色的权限,请参阅角色

针对托管地区的访问权限控制

具有项目 Owner 角色或 Editor 角色roles/ownerroles/editor)的用户可以管理或查看其所管理的特定项目中的代管区域。

具有 DNS Administrator 角色或 DNS Reader 角色的用户可以管理或查看其有权访问的所有项目中的代管区域。

项目 Owner、Editor、DNS Administrator 和 DNS Reader 可以查看当前项目中任何 VPC 网络采用的专用地区列表。

每项资源的访问权限

如需在 DNS 资源(如托管区域)上配置政策,您必须对拥有该资源的项目具有 Owner 访问权限。DNS Administrator 角色没有 setIamPolicy 权限。作为项目所有者,您还可以针对您的特定需求创建自定义 IAM 角色。如需了解详情,请参阅了解 IAM 自定义角色

性能和时间

Cloud DNS 使用 Anycast 从全球多个位置为您的代管地区提供服务,以实现高可用性。请求会自动路由到最近的位置,从而为用户减少延迟,并提升权威名称查找性能。

传播更改

更改将分两部分进行传播。首先,您通过 API 或命令行工具发送的更改必须推送到 Cloud DNS 的权威 DNS 服务器。其次,DNS 解析器必须在其缓存的记录过期时拾取这些更改。

您为记录设置的存留时间 (TTL) 值(以秒为单位指定)控制 DNS 解析器的缓存。例如,如果将 TTL 值设置为 86400(即 24 小时内的秒数),这就指示 DNS 解析器将记录缓存 24 小时。某些 DNS 解析器会忽略 TTL 值,或使用自己的值来延迟记录的完整传播。

如果您要对服务进行短暂更改,则建议在进行更改之前将 TTL 更改为较短的值,即在先前 TTL 值在解析器缓存中到期后应用新的较短 TTL 值这种方法可以帮助缩短缓存期,并确保更快地切换到新的记录设置。更改后,您可以将值改回其先前的 TTL 值,以减少 DNS 解析器上的负载。

后续步骤