配置 DNS64

本文档介绍了如何在 Virtual Private Cloud (VPC) 网络中配置和使用 DNS64 服务器政策。

准备工作

  • DNS64 服务器政策不适用于双栈虚拟机 (VM) 实例、仅限 IPv4 的虚拟机实例、无服务器工作负载,也不适用于发送到入站 DNS 服务器政策创建的端点的请求。
  • 确保您拥有创建 DNS64 服务器政策所需的权限。

创建 DNS64 服务器政策

创建 DNS64 服务器政策,以便仅限 IPv6 的工作负载与仅限 IPv4 的目标之间能够进行通信。

创建 DNS64 服务器政策后,查询 IPv6 (AAAA) 记录时会发生以下情况:

  • 如果存在 AAAA DNS 记录,DNS 服务器会返回 IPv6 地址。您的工作负载将使用该 IPv6 地址进行连接。
  • 如果不存在 AAAA DNS 记录,Cloud DNS 会查找 A 记录。然后,Cloud DNS 会使用 64:ff9b::/96 IPv6 前缀为 A 记录中的 IPv4 地址创建 IPv6 地址。

如需创建 DNS64 服务器政策,请按以下步骤操作。

gcloud

如需创建 DNS64 服务器政策,请运行 gcloud dns policies create 命令

gcloud dns policies create NAME \
    --description=DESCRIPTION \
    --networks=VPC_NETWORK_LIST \
    --enable_dns64_all_queries

替换以下内容:

  • NAME:政策的名称
  • DESCRIPTION:政策的说明
  • VPC_NETWORK_LIST:必须创建入站转发地址的 VPC 网络的逗号分隔列表

API

如需创建 DNS64 服务器政策,请使用 policies.create 方法

POST https://dns.googleapis.com/dns/v1/projects/PROJECT_ID/policies
{
  "kind": "dns#policy",
  "networks": [
    {
      "kind": "dns#policyNetwork",
      "networkUrl": "NETWORK_URL"
    }
  ],
  "dns64Config":
    {
        "scope":
        {
          allQueries: true,
        }
    }
  }

替换以下内容:

  • PROJECT_ID:您的项目 ID。
  • NETWORK_URL:DNS 服务器政策必须绑定的 VPC 网络的完全限定网址,格式如下:https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/VPC_NETWORK_NAME。指定包含仅限 IPv6 的子网和实例的网络。

验证是否已启用 DNS64 服务器政策

gcloud

如需列出项目中的所有 DNS 服务器政策,请运行 dns policies list 命令

gcloud dns policies list

如需获取有关特定 DNS64 服务器政策的详细信息,请运行 gcloud dns policies describe 命令

gcloud dns policies describe NAME

NAME 替换为您要了解详细信息的 DNS64 服务器政策的名称。

停用 DNS64 服务器政策

gcloud

如需停用 DNS64 服务器政策,请运行 dns policies update 命令

gcloud dns policies update NAME \
    --no-enable_dns64_all_queries

NAME 替换为您要停用的 DNS64 服务器政策的名称。

后续步骤

  • 如需配置 NAT64 以实现从 IPv6 地址到 IPv4 地址的 Public NAT 转换,请按照创建 Cloud NAT 网关中的说明操作。
  • 如需大致了解 DNS 服务器政策,请参阅 DNS 服务器政策
  • 如需了解您在使用 Cloud DNS 时可能会遇到的常见问题的解决方案,请参阅排查 Cloud DNS 问题